* minibuffer.el (completion-at-point-functions): New var.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
022eef62
CY
12009-12-05 Chong Yidong <cyd@stupidchicken.com>
2
426ac949
CY
3 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
4 if push failed.
5 (handle_line_prefix): Set avoid_cursor_p here. Check return value
6 of push_display_prop (Bug#5000).
7
022eef62
CY
8 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
9 value of font_list_entities (Bug#5085).
10
be95bee9
JB
112009-12-04 Juanma Barranquero <lekktu@gmail.com>
12
13 Fix `string-to-number' to deal consistently with integers and floats.
14 * lread.c (isfloat_string): New argument ignore_trailing to accept all
15 trailing characters, not just whitespace.
16 (read1): Pass new arg 0 to keep old behavior.
17 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
18 trailing chars, as it is already done for integers. Doc fixes.
19 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
20
24c2d7ce
EZ
212009-12-04 Eli Zaretskii <eliz@gnu.org>
22
23 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
24 unused enumeration value.
25
7e694795
EZ
262009-12-03 Eli Zaretskii <eliz@gnu.org>
27
28 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
29
84b31826
SM
302009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
31
32 * process.c (Fmake_network_process): Fix up the tests for
33 "connectionless socket", so they DTRT for seqpacket sockets as well.
34
f00c449b
SM
352009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
36
37 * process.c (Qseqpacket): New symbol.
38 (HAVE_SEQPACKET): New macro.
39 (Fmake_network_process): Accept new :type `seqpacket'.
40 (init_process): Add `seqpacket' feature when applicable.
41 (syms_of_process): Initialize Qseqpacket.
42
8096a0ff
YM
432009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
44
45 * font.c (font_load_for_lface, font_open_by_name): Don't store name
46 if entity is Qnil.
47
3e0de07f
SM
482009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
49
50 * print.c (print_preprocess): Preprocess the key_and_value table of
51 hashtables, even tho they're "hidden" (bug#5082).
52
abeafb2a
JD
532009-11-29 Jan Djärv <jan.h.d@swipnet.se>
54
55 * frame.c (frame_make_pointer_invisible)
56 (frame_make_pointer_visible): Declare f before statements.
57
4bf47195
EZ
582009-11-28 Eli Zaretskii <eliz@gnu.org>
59
60 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
61 omitted dependencies on lisp.h.
62
c525b3f2
JD
632009-11-27 Jan Djärv <jan.h.d@swipnet.se>
64
ece2d4ed
JD
65 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
66 is NULL.
67
68 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
69
70 * frame.c (frame_make_pointer_invisible)
3e0de07f 71 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
72 frame.
73
c525b3f2
JD
74 * search.c (simple_search): Remove warning by making *p const.
75
2f00e299
DN
762009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
77
78 * xdisp.c (power_letter): Remove duplicate const.
79
084b049b
JD
802009-11-25 Jan Djärv <jan.h.d@swipnet.se>
81
a1fadc6f
JD
82 * term.c (delete_tty): Remove check for last terminal (bug#4970).
83
084b049b
JD
84 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
85 defaults (bug #5025).
86
28259cac
SM
872009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
88
89 * insdel.c (adjust_markers_for_delete): Move it in the
90 right direction! (bug#4803)
91
e8e14166
YM
922009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
93
94 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
95
96 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
97
86677b58
GM
982009-11-24 Glenn Morris <rgm@gnu.org>
99
100 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
101
581e51e8
JD
1022009-11-23 Jan Djärv <jan.h.d@swipnet.se>
103
cfc86c7a
JD
104 * Makefile.in: Must create deps for ecrt0.o in its rule.
105
581e51e8
JD
106 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
107 because that is what Gtk+ font dialog understands.
108
109 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
110 of Fcopy_sequence.
111 (font_open_by_name): Put name given into QCname for font-object returned.
112
113 * frame.c (x_set_font): Save original font name as frame parameter
114 font-parameter.
115
116 * xsettings.c (set_default_xft_settings): New function.
117 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
118 is found.
119
8b264ecb
AS
1202009-11-22 Andreas Schwab <schwab@linux-m68k.org>
121
122 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
123 searching backwards through multibyte buffer.
124
872870b2
JD
1252009-11-21 Jan Djärv <jan.h.d@swipnet.se>
126
127 * xterm.c: #include xgselect.h.
128 (x_initialize): Call xgselect_initialize.
129
130 * xsettings.c (something_changedCB): C++ comments => C comments.
131 (init_gconf): Do not deal with any GLib file descriptors, xg_select
132 does that now.
133
134 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
135 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
136 (scroll_bar_button_cb): Remove.
137 (create_menus): C++ comments => C comments. Don't bind grab-notify
138 event.
139 (xg_create_scroll_bar): Don't bind button-press-event and
140 button-release-event.
141
142 * process.c: Include xgselect.h if defined (USE_GTK) ||
143 defined (HAVE_GCONF).
144 (wait_reading_process_output): Call xg_select for the same condition.
145
146 * xgselect.c (xg_select): New function to better integrate with
147 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
148
149 * xgselect.h: New file, declare xg_select, xgselect_initialize.
150
151 * Makefile.in (XOBJ): Add xgselect.o.
152
62a6e103
AS
1532009-11-21 Andreas Schwab <schwab@linux-m68k.org>
154
155 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
156 ignored second argument. All callers changed.
157 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
158 (RE_STRING_CHAR_AND_LENGTH): Likewise.
159 * xdisp.c (string_char_and_length): Likewise.
160
b0ca0f33
DN
1612009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
162
163 * xterm.c (x_new_font):
164 * print.c (print_object):
165 * cmds.c (Fself_insert_command): Move declarations before statements.
166
dd5a6279
CY
1672009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
168
169 * s/cygwin.h: Remove unneeded linker flags.
170
4a8e097d
JD
1712009-11-20 Jan Djärv <jan.h.d@swipnet.se>
172
0d1d0d26
JD
173 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
174
175 * xsettings.h: Declare xsettings_get_system_font.
176
177 * xsettings.c (xsettings_get_system_font): New function.
178 (init_gconf): No use initiating gconf unless we have Xft also.
179 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
180 HAVE_GCONF.
181
4a8e097d
JD
182 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
183 add a blank entry so it doesn't collapse into nothing.
184
8ab1650e
SM
1852009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
186
187 * lread.c (Funintern): Comment out last change.
188
82c602f0
RS
1892009-11-19 Richard Stallman <rms@gnu.org>
190
191 * lread.c (Funintern): Error if symbol is t or nil.
192
87e32266
SM
1932009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
194
195 * insdel.c (make_gap_larger): Don't make as many assumptions about the
196 representation of Lisp integers.
197 Reported by MJ Chan <mjchan.inbox@gmail.com>.
198
1b9ac145
AS
1992009-11-17 Andreas Schwab <schwab@linux-m68k.org>
200
201 * lisp.h: Remove declaration of Ffont_get_system_font.
202 * xfns.c: Move include of "xsettings.h".
203 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
204
dfb3c4c6
JD
2052009-11-17 Jan Djärv <jan.h.d@swipnet.se>
206
87e32266
SM
207 * xsettings.c (something_changedCB, Ffont_get_system_font):
208 Check use_system_font.
dfb3c4c6
JD
209 (syms_of_xsettings): DEFVAR font-use-system-font.
210
9370c1d8
AS
2112009-11-17 Andreas Schwab <schwab@linux-m68k.org>
212
25fe851a
AS
213 * xfns.c (x_default_font_parameter): Remove dead assignment.
214
9370c1d8
AS
215 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
216
637fa988
JD
2172009-11-17 Jan Djärv <jan.h.d@swipnet.se>
218
87e32266 219 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 220 not have FC_LCD_*. #define them if not there.
a6eb20d8 221
87e32266 222 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 223
637fa988
JD
224 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
225
226 * xterm.c (handle_one_xevent): Call xft_settings_event for
227 ClientMessage, PropertyNotify and DestroyNotify.
228 (x_term_init): If we have XFT, get DPI from Xft.dpi.
229 Call xsettings_initialize.
230
231 * xftfont.c (xftfont_fix_match): New function.
232 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
233 Call xftfont_fix_match after XftFontMatch.
234
235 * xfont.c (xfont_driver): Initialize all members.
236
87e32266
SM
237 * xfns.c (x_default_font_parameter):
238 Try font from Ffont_get_system_font.
637fa988
JD
239 Do not get font from x_default_parameter if we got one from
240 Ffont_get_system_font.
87e32266 241 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
242
243 * w32font.c (w32font_driver): Initialize all members.
244
245 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
246
247 * lisp.h: Declare syms_of_xsettings.
248
87e32266
SM
249 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
250 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
251
252 * ftfont.c (ftfont_filter_properties): New function.
253
254 * frame.c (x_set_font): Remove unused variable lval.
255
87e32266 256 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
257
258 * font.c (font_put_extra): Don't return if val is nil, it means
259 boolean option is off.
260 (font_parse_fcname): Collect all extra properties in extra_props
261 and call filter_properties for all drivers with extra_props and
262 font as parameter.
87e32266
SM
263 (font_open_entity): Do not use cache, it does not pick up new
264 fontconfig settings like hinting.
637fa988
JD
265 (font_load_for_lface): If spec had a name in it, store it in entity.
266
267 * emacs.c (main): Call syms_of_xsettings
268
269 * config.in: HAVE_GCONF is new.
270
271 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
272 xsettings.o is new.
273
5a942932
KH
2742009-11-17 Kenichi Handa <handa@m17n.org>
275
276 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
277 back to the default font in case that no suitable font is found.
278
b7c7a4d1
SM
2792009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
280
281 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
282 Suggested by Chad Brown <yandros@mit.edu>.
283 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
284
072f1e39
JD
2852009-11-16 Jan Djärv <jan.h.d@swipnet.se>
286
287 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
288
5d1e70a2
AS
2892009-11-14 Andreas Schwab <schwab@linux-m68k.org>
290
87e32266 291 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 292
a53cfbe5
JD
2932009-11-14 Jan Djärv <jan.h.d@swipnet.se>
294
473a99b7
JD
295 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
296 has a parent.
297
a53cfbe5
JD
298 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
299 dependency files in deps/. Include those files into Makefile.
300
301 * config.in: Generated (AUTO_DEPEND).
302
f04bb9b2
MA
3032009-11-13 Michael Albinus <michael.albinus@gmx.de>
304
b7c7a4d1 305 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
306 Vdbus_registered_functions_table, because it contains also
307 properties. Fix docstring.
b7c7a4d1 308 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 309
8f11f7ec
SM
3102009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
311
312 * alloc.c (mark_object): Don't reprocess marked strings.
313 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
314 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
315
8a605fe8
KH
3162009-11-13 Kenichi Handa <handa@m17n.org>
317
8f11f7ec 318 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
319 semantics of Vword_combining_categories.
320 (Vword_combining_categories): Describe the slight change of the
321 semantics.
322
241c4680
EZ
3232009-11-13 Eli Zaretskii <eliz@gnu.org>
324
325 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
326
327 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
328
5d58e44c
SM
3292009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
330
331 * xdisp.c (syms_of_xdisp): Fix typo in last change.
332
5e13f9d3
JB
3332009-11-12 Juanma Barranquero <lekktu@gmail.com>
334
335 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
336
cf54c754
DR
3372009-11-11 David Reitter <david.reitter@gmail.com>
338
339 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
340 variables to fix 2009-11-09 change.
341
a4ada374
DN
3422009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
343
91433552
DN
344 * process.c (ifflag_def): Make flag_sym constant.
345 (Fnetwork_interface_info): Use a constant pointer.
346 (ifflag_table):
347 * xfns.c (cursor_bits):
348 * xdisp.c (power_letter):
349 * termcap.c (speeds, esctab):
350 * sysdep.c (baud_convert):
351 * keyboard.c (lispy_accent_codes, modifier_names):
352 * image.c (xbm_format, xpm_format, pbm_format, png_format)
353 (jpeg_format, tiff_format, gif_format, svg_format)
354 (interlace_start, interlace_increment, gs_format):
355 * gtkutil.c (separator_names):
356 * fringe.c (swap_nibble):
357 * fns.c (base64_value_to_char, base64_char_to_value):
358 * fileio.c (make_temp_name_tbl):
359 * coding.c (suffixes): Make constant.
360
f4265f6c
DN
361 * frame.c (make_initial_frame):
362 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
363 build_string.
364 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
365
04420943
DN
366 * s/freebsd.h:
367 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
368
0a5d24ae
DN
369 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
370 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
371
a4ada374
DN
372 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
373 * xterm.c (syms_of_xterm):
374 * xfaces.c (syms_of_xfaces):
375 * xdisp.c (syms_of_xdisp):
376 * lread.c (syms_of_lread):
377 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
378 build_string.
91433552 379
a4ada374
DN
380 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
381
af98fc7f
SM
3822009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
383
8ab1650e 384 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 385
e90292a9
JD
3862009-11-10 Jan Djärv <jan.h.d@swipnet.se>
387
388 * keyboard.h: Declare timer_check.
389
390 * keyboard.c (timer_check_2): New function that does what the old
391 timer_check did.
392 (timer_check): Call timer_check_2 until -1 or a non-zero time is
393 returned, i.e. don't return -1 with timers pending.
394
395 * process.c: Remove extern declaration of timer_check.
396
397 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
398 even if timer_check returned -1.
399
af98fc7f
SM
400 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
401 xg_dialog_data.
e90292a9
JD
402 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
403 the event loop.
404 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
405 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
406 Destroy the dialog after xg_dialog_run.
407
045b83c0
SM
4082009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
409
410 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
411
1fb99a3a
JD
4122009-11-10 Jan Djärv <jan.h.d@swipnet.se>
413
414 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
415
04e452cb
JB
4162009-11-09 Juanma Barranquero <lekktu@gmail.com>
417
418 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
419
ef7417fd
SM
4202009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
421
422 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
423 w32menu.c, and nsmenu.m.
424 Simplify the obsolete case where position is nil.
425 (cleanup_popup_menu): New function, moved from nsmenu.m.
426 (struct skp): Remove slot `notreal'.
427 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
428 adjust callers.
429 (single_menu_item): Adjust call to parse_menu_item.
430 (syms_of_menu): Defsubr x-popup-menu.
431 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
432 (keymap_panes): Don't export any more.
433 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
434 (xmenu_show): Declare.
435 * keyboard.c (parse_menu_item): Remove arg `notreal'.
436 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
437 * keyboard.h (parse_menu_item): Update declaration.
438 * xmenu.c (Fx_popup_menu): Remove.
439 (syms_of_xmenu): Don't defsubr x-popup-menu.
440 * w32menu.c (Fx_popup_menu): Remove.
441 (syms_of_w32menu): Don't defsubr x-popup-menu.
442 * nsmenu.m (cleanup_popup_menu): Remove.
443 (ns_menu_show): Rename from ns_popup_menu and remove all the code
444 moved to menu.c's Fx_popup_menu.
445 (Fx_popup_menu): Remove.
446 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
447 menu_items (it's done in menu.c already).
448
424d6179
SM
4492009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
450
451 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
452 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
453
c0df13a6 4542009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
455
456 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 457 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
458 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
459 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
460
2de9f71c
SM
4612009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
462
463 Let integers use up 2 tags to give them one extra bit and thus double
464 their range.
465 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
466 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
467 New macros.
468 (enum Lisp_Type): Use them. Give explicit values.
469 (Lisp_Type_Limit): Remove.
470 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
471 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
472 Pay attention to USE_2_TAGS_FOR_INTS.
473 (INTEGERP): Use LISP_INT_TAG_P.
474 * fns.c (internal_equal): Simplify the default case.
475 (sxhash): Use case_Lisp_Int.
476 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
477 any more.
478 (Ftype_of): Use case_Lisp_Int.
479 (store_symval_forwarding): Take into account the fact that Ints can
480 now have more than one tag.
481 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
482 buffer_slot_type_mismatch):
483 * xfaces.c (face_attr_equal_p):
484 * print.c (print_object):
485 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
486 Use case_Lisp_Int.
487
323637a2
EZ
4882009-11-06 Eli Zaretskii <eliz@gnu.org>
489
7ac65b38
EZ
490 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
491
323637a2
EZ
492 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
493 warning.
494
e511451f
JD
4952009-11-06 Jan Djärv <jan.h.d@swipnet.se>
496
497 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
498
499 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
500
501 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
502 ButtonPressRelease and MotionNotify (bug#4870).
503
5e2327cf
DN
5042009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
505
5adc433e
DN
506 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
507
d67b4f80
DN
508 * xterm.c (syms_of_xterm):
509 * xselect.c (syms_of_xselect):
510 * xmenu.c (syms_of_xmenu):
511 * xfns.c (syms_of_xfns):
512 * xfaces.c (syms_of_xfaces):
513 * xdisp.c (syms_of_xdisp):
514 * window.c (syms_of_window):
515 * w32fns.c (syms_of_w32fns):
516 * undo.c (syms_of_undo):
517 * textprop.c (syms_of_textprop):
518 * terminal.c (syms_of_terminal):
519 * syntax.c (syms_of_syntax):
520 * sound.c (syms_of_sound):
521 * search.c (syms_of_search):
522 * print.c (syms_of_print):
523 * minibuf.c (syms_of_minibuf):
524 * macros.c (syms_of_macros):
525 * keymap.c (syms_of_keymap, initial_define_key)
526 (initial_define_lispy_key):
527 * keyboard.c (syms_of_keyboard):
528 * insdel.c (syms_of_insdel):
529 * image.c (syms_of_image):
530 * fringe.c (syms_of_fringe):
531 * frame.c (syms_of_frame):
532 * fontset.c (syms_of_fontset):
533 * fns.c (syms_of_fns):
534 * fns.c (syms_of_fns):
535 * fileio.c (syms_of_fileio):
536 * fileio.c (syms_of_fileio):
537 * eval.c (syms_of_eval):
538 * doc.c (syms_of_doc):
539 * dispnew.c (syms_of_display):
540 * dired.c (syms_of_dired):
541 * dbusbind.c (syms_of_dbusbind):
542 * data.c (syms_of_data):
543 * composite.c (syms_of_composite):
544 * coding.c (syms_of_coding):
545 * cmds.c (syms_of_cmds):
546 * charset.c (define_charset_internal, syms_of_character):
547 * ccl.c (syms_of_ccl):
548 * category.c (syms_of_category, init_category_once):
549 * casetab.c (syms_of_casetab):
550 * casefiddle.c (syms_of_casefiddle):
551 * callint.c (syms_of_callint):
552 * bytecode.c (syms_of_bytecode):
553 * buffer.c (keys_of_buffer, syms_of_buffer):
554 * alloc.c (syms_of_alloc):
555 * process.c (syms_of_process, init_process):
556 * lread.c (syms_of_lread, init_obarray):
557 * font.c (build_style_table):
558 * emacs.c (syms_of_emacs, main): Replace calls to intern with
559 intern_c_string, calls to make_pure_string with
560 make_pure_c_string. Use pure_cons instead of Fcons.
561
5e2327cf
DN
562 * process.c (socket_options): Make it const.
563 (set_socket_option, init_process): Use a const pointer.
564
565 * lread.c (intern_c_string): New function.
566 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
567 (defvar_int): Uset it. Make the name const char*.
568
569 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
570 (defvar_int): Update prototypes.
571 (DEFUN, EXFUN): Support for prototypes is now required.
572 (intern_c_string): New prototype.
573 (struct Lisp_Subr): Make symbol_name constant.
574
575 * font.c (struct table_entry): Remove unused member. Make NAMES
576 constant.
577 (weight_table, slant_table, width_table): Make constant.
578
579 * emacs.c (struct standard_args): Make name and longname constant.
580
581 * character.h (DEFSYM): Use intern_c_string.
582
a56eaaef
DN
5832009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
584
585 * alloc.c (make_pure_c_string): New function.
586
587 * eval.c (Fautoload): Purecopy all arguments.
588
f6a07420
KH
5892009-11-05 Kenichi Handa <handa@m17n.org>
590
591 * fileio.c (Finsert_file_contents): Be sure set coding-system of
592 the buffer in case of replace.
593
5d28d4b1
DN
5942009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
595
596 * puresize.h (BASE_PURESIZE): Increase to 1620000.
597
b349d111
SM
5982009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
599
d528b1ce
SM
600 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
601 when applicable (bug#4851).
602
b349d111
SM
603 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
604 (P_): Support for prototypes is now required.
605
c38eb027
CY
6062009-10-31 Chong Yidong <cyd@stupidchicken.com>
607
608 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
609 (Bug#4827).
610
0405f8d9
EZ
6112009-10-30 Eli Zaretskii <eliz@gnu.org>
612
d528b1ce 613 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 614
ca0a881a
DN
6152009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
616
617 * puresize.h (BASE_PURESIZE): Increase to 1470000.
618
d528b1ce
SM
619 * lread.c (Fload): Purecopy the file name when building
620 Vpreloaded_file_list.
ca0a881a 621
47e0e0e4
JR
6222009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
623
624 * w32fns.c (syms_of_w32fns): Change default value of
625 w32-scroll-lock-modifier to nil. (Bug#2827)
626
057bce6f
JB
6272009-10-26 Juanma Barranquero <lekktu@gmail.com>
628
782a943e 629 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 630
242bc74c
AS
6312009-10-26 Andreas Schwab <schwab@redhat.com>
632
633 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
634
522d013a
JB
6352009-10-26 Juanma Barranquero <lekktu@gmail.com>
636
637 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
638 For delta < 0, skip check that only makes sense when the mini-window
639 is going to be enlarged. (Bug#4534)
640
18060980
CY
6412009-10-25 Chong Yidong <cyd@stupidchicken.com>
642
643 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
644 string in menu maps (Bug#4471).
645
fec8f0fe
CY
6462009-10-24 Chong Yidong <cyd@stupidchicken.com>
647
648 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
649 FRAME_NS_VIEW on terminal frames (Bug#4765).
650
10d66ec0
AS
6512009-10-24 Andreas Schwab <schwab@linux-m68k.org>
652
1cae01f7
AS
653 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
654 DBUS_TYPE_UINTnn separately to get proper sign extension.
655
58a12889
AS
656 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
657 can properly handle unsigned types.
d528b1ce 658 (make_uid, make_gid): Remove.
58a12889 659
987c9327
AS
660 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
661 types again.
662
522d013a 663 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
664 (system_process_attributes): Likewise.
665
905a9ed3
DN
6662009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
667
668 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
669
670 * eval.c (Fautoload): Purecopy the filename. Simplify.
671
672 * category.c (Fdefine_category): Purecopy docstring.
673
a599b3e8
AS
6742009-10-23 Andreas Schwab <schwab@linux-m68k.org>
675
7b792fc9
AS
676 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
677
a599b3e8
AS
678 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
679
b35ac83e
CY
6802009-10-23 Chong Yidong <cyd@stupidchicken.com>
681
682 * window.c (Fwindow_edges, Fwindow_pixel_edges)
683 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
684 (Bug#4775).
685
e8903e00
SM
6862009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
687
688 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
689 (init_fileio_once):
690 * lisp.h (init_fileio_once): Remove.
691 * emacs.c (main): Don't call init_fileio_once.
692
8f43cbf3
DN
6932009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
694
695 * puresize.h (BASE_PURESIZE): Increase to 1430000.
696
26898943
AS
6972009-10-21 Andreas Schwab <schwab@linux-m68k.org>
698
699 * doprnt.c (doprnt): Fix overflow check.
700
5c646d5a
JD
7012009-10-21 Jan Djärv <jan.h.d@swipnet.se>
702
3132a7ea
JD
703 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
704
5c646d5a
JD
705 * xterm.h (x_wait_for_event): Declare it.
706
707 * xterm.c (pending_event_wait): New variable.
708 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
709 see pending_event_wait.eventtype.
710 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
711 (x_new_font): Call change_frame_size with new rows/columns before we
712 try to resize the frame.
5c646d5a 713 (x_wait_for_event): New function.
d528b1ce
SM
714 (x_set_window_size_1): Don't change gravity unless change_gravity
715 is set.
5c646d5a
JD
716 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
717 don't change frame size, instead wait for the ConfigureNotify.
718 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
719 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
720 (x_initialize): Initialize pending_event_wait.
721
722 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
723 size.
724
725 * widget.c (EmacsFrameSetValues): Add comment.
726 (EmacsFrameSetCharSize): Just call x_set_window_size.
727
728 * gtkutil.c (xg_frame_set_char_size): Flush events and call
729 x_wait_for_event.
d528b1ce 730 (flush_and_sync): Remove again.
5c646d5a
JD
731 (xg_get_font_name): Suggest monospace if no previous font is known.
732
e9c1637d
SM
7332009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
734
735 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 736 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 737
5a72cccb
YM
7382009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
739
740 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
741 processing pending events when event is filtered for input method.
ab04798f 742 (Bug#3681)
5a72cccb 743
2629aa37
JB
7442009-10-20 Juanma Barranquero <lekktu@gmail.com>
745
746 * fns.c: Add #endif accidentally removed in previous change.
747
c3417a74
DN
7482009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
749
750 * fns.c: Remove code for unsupported system: MAC_OS.
751 * image.c: Likewise. Include setjmp.h.
752
9685cef2
JD
7532009-10-19 Jan Djärv <jan.h.d@swipnet.se>
754
755 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
756 pixel -1 (bug #4742).
757
d7306fe6
DN
7582009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
759
019d2c4c
DN
760 * process.c (create_pty): Remove conditionals for no longer
761 supported systems: UNIPLUS and RTU.
762
ee6bacd4
DN
763 * xterm.c:
764 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
765
d7306fe6
DN
766 * alloc.c: Do not define struct catchtag.
767 * eval.c: Move struct catchtag definition ...
768 * lisp.h: ... here.
769
770 * image.c: Move png.h #include earlier to avoid warnings.
771
772 * xterm.c:
773 * xsmfns.c:
774 * xselect.c:
775 * xrdb.c:
776 * xmenu.c:
777 * xftfont.c:
778 * xfont.c:
779 * xfns.c:
780 * xfaces.c:
781 * xdisp.c:
782 * window.c:
783 * widget.c:
784 * w32xfns.c:
785 * w32uniscribe.c:
786 * w32term.c:
787 * w32select.c:
788 * w32reg.c:
789 * w32proc.c:
790 * w32menu.c:
791 * w32inevt.c:
792 * w32heap.c:
793 * w32font.c:
794 * w32fns.c:
795 * w32console.c:
796 * w32.c:
797 * w16select.c:
798 * vm-limit.c:
799 * unexsol.c:
800 * unexec.c:
801 * unexcw.c:
802 * unexaix.c:
803 * undo.c:
804 * tparam.c:
805 * textprop.c:
806 * terminfo.c:
807 * terminal.c:
808 * termcap.c:
809 * term.c:
810 * syntax.c:
811 * sound.c:
812 * sheap.c:
813 * search.c:
814 * scroll.c:
815 * region-cache.c:
816 * regex.c:
817 * ralloc.c:
818 * process.c:
819 * print.c:
b024548b
DN
820 * nsterm.m:
821 * nsselect.m:
822 * nsmenu.m:
823 * nsimage.m:
824 * nsfont.m:
825 * nsfns.m:
d7306fe6
DN
826 * msdos.c:
827 * minibuf.c:
828 * menu.c:
829 * marker.c:
830 * macros.c:
831 * keymap.c:
832 * keyboard.c:
833 * intervals.c:
834 * insdel.c:
835 * indent.c:
836 * gtkutil.c:
837 * ftxfont.c:
838 * ftfont.c:
839 * fringe.c:
840 * frame.c:
841 * fontset.c:
842 * font.c:
843 * fns.c:
844 * floatfns.c:
845 * filelock.c:
846 * fileio.c:
847 * emacs.c:
848 * editfns.c:
849 * dosfns.c:
850 * doprnt.c:
851 * doc.c:
852 * dispnew.c:
853 * dired.c:
854 * dbusbind.c:
855 * data.c:
856 * composite.c:
857 * coding.c:
858 * cmds.c:
859 * cm.c:
860 * chartab.c:
861 * charset.c:
862 * character.c:
863 * ccl.c:
864 * category.c:
865 * casetab.c:
866 * casefiddle.c:
867 * callproc.c:
868 * callint.c:
869 * bytecode.c:
870 * buffer.c:
871 * atimer.c: Include setjmp.h. (Bug#4643)
872
fd5f21e6
SM
8732009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
874
4c0354d7
SM
875 Remove leftover table unibyte_to_multibyte_table.
876 * character.c (unibyte_to_multibyte_table): Remove.
877 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
878 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
879 * character.h (UNIBYTE_TO_CHAR): New macro.
880 (MAKE_CHAR_MULTIBYTE): Use it.
881 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
882 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
883 (message_dolog, set_message_1):
884 * search.c (Freplace_match):
885 * editfns.c (Fcompare_buffer_substrings):
886 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
887 (concat):
888 * insdel.c (copy_text, count_size_as_multibyte):
889 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
890 * term.c (produce_glyphs):
891 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
892 * regex.c (RE_CHAR_TO_MULTIBYTE):
893 * cmds.c (internal_self_insert):
894 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
895
fd5f21e6
SM
896 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
897
4418646e
DN
8982009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
899
900 * puresize.h (BASE_PURESIZE): Increase to 1310000.
901
35f5c1d2
JB
9022009-10-16 Juanma Barranquero <lekktu@gmail.com>
903
904 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
905
a0cd8f6b
AR
9062009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
907
908 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
909 still needed under Tiger.
910
911 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
912
913 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
914 __Apple__.
915
916 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
917
01a8d3fa
KH
9182009-10-15 Kenichi Handa <handa@m17n.org>
919
920 * print.c (print_object): Escape a symbol like "2E10" too.
921
bf6c75c9 9222009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
923
924 Cleanups and changes for 64-bit compile under Snow Leopard.
925 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
926
927 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
928
c5959062 929 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
930 (ns_findfonts, nsfont_list_family): Use long format in printf, and
931 cast argument.
932 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 933 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
934
935 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
936
937 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
938 where appropriate.
939
940 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
941 where appropriate.
6e4780c5
JB
942 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
943 Use stringWithUTF8String.
bf6c75c9
AR
944 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
945
6e4780c5
JB
946 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
947 Add formal protocol mention to inheritance.
bf6c75c9
AR
948 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
949
6e4780c5
JB
950 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
951 Fix printf format.
bf6c75c9
AR
952 (ns_query_color): Use CGFloat where appropriate.
953 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
954 (EmacsScroller-mouseDown:) Use long format in printf, and cast
955 argument.
956
3d87f118
AR
957 * config.in (NS_HAVE_NSINTEGER): Drop.
958
a95c8102
AR
959 * dbusbind.c (dbus-method-return-internal)
960 (dbus-method-error-internal): Use long format in printf, and cast
961 argument.
962
963 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
964 in printf, and cast argument.
965
6873acca 966 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
967 cast argument.
968
9ec6f100
GM
9692009-10-11 Glenn Morris <rgm@gnu.org>
970
971 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
972
5be883cd
JD
9732009-10-08 Jan Djärv <jan.h.d@swipnet.se>
974
975 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
976 menu bar with a small width so it doesn't enlarge the frame.
977
d7a39b51
JB
9782009-10-08 Juanma Barranquero <lekktu@gmail.com>
979
980 * fontset.c (Fset_fontset_font): Fix typos in error messages.
981
0c2b6f8e
GM
9822009-10-06 Glenn Morris <rgm@gnu.org>
983
984 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
985 SOME_MACHINE_LISP (this enters indirectly via DOC).
986
e02131a2
EZ
9872009-10-05 Eli Zaretskii <eliz@gnu.org>
988
989 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
990
b4744254
EZ
9912009-10-04 Eli Zaretskii <eliz@gnu.org>
992
993 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
994 Doc fix.
995
dbf64827
JB
9962009-10-03 Martin Rudalics <rudalics@gmx.at>
997
998 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
999
e9a0aef8
MA
10002009-10-02 Michael Albinus <michael.albinus@gmx.de>
1001
d528b1ce 1002 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1003 used anymore outside fileio.c.
1004
1005 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1006
64eb2b56
JB
10072009-10-01 Juanma Barranquero <lekktu@gmail.com>
1008
1009 * lisp.h (Qdelete_directory_internal):
1010 Declare, instead of Qdelete_directory.
1011
1012 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1013
9d28c33e
SM
10142009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1015
1016 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1017
9d8f3bd9
MA
10182009-10-01 Michael Albinus <michael.albinus@gmx.de>
1019
9d28c33e 1020 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1021 Fdelete_directory. It is not a command anymore. It has no file
1022 name handler.
1023
9694740b
SM
10242009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1025
1026 * xdisp.c (get_next_display_element): Use an enum in last change.
1027
748e162f
KH
10282009-09-28 Kenichi Handa <handa@m17n.org>
1029
9694740b 1030 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1031 unibyte_display_via_language_environment in handling
1032 Vnobreak_char_display.
1033
17efd58d
AR
10342009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1035
1036 * nsterm.h (ns_app_name): New extern variable.
1037
1038 * nsterm.m (ns_app_name): New variable.
1039 (ns_term_init): Set and use it.
1040 (ns_term_shutdown): Use it.
1041
1042 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1043 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1044
1045 * nsfns.m (ns_set_name_iconic, ns_set_name)
1046 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1047 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1048
9694740b
SM
1049 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1050 Remove double-casting in client_data comparison.
31c2d412 1051
3208cb35
YM
10522009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1053
1054 * keyboard.c (make_lispy_event): Remember last wheel direction.
1055 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1056
b7d552d6
GM
10572009-09-26 Glenn Morris <rgm@gnu.org>
1058
1059 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1060 internal.elc. Add term/pc-win.elc.
1061 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1062 term/x-win.elc.
1063 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1064 term/w32-win.elc.
1065 (NS_SUPPORT): New.
1066 (lisp): Add NS_SUPPORT.
1067 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1068
4ff670a8
DR
10692009-09-25 David Reitter <david.reitter@gmail.com>
1070
1071 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1072 on Mac OS X 10.6+ (bug#4513).
1073
feabfb6c
JB
10742009-09-24 Juanma Barranquero <lekktu@gmail.com>
1075
1076 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1077 some parts of Emacs code (like font selection) don't grok them.
1078 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1079
de59072a
AS
10802009-09-24 Andreas Schwab <schwab@redhat.com>
1081
1082 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1083
a489517b
JB
10842009-09-24 Juanma Barranquero <lekktu@gmail.com>
1085
1086 * dired.c (Fdirectory_files): Fix typo in docstring.
1087
0592970c
AR
10882009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1089
1090 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1091 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1092 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1093 under GNUstep.
1094 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1095
1096 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1097 glyph advancement.
1098
48e8a88b
AR
10992009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1100
1101 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1102 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1103
1104 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1105 deleted (bug #4492).
1106
e14f0a78
AR
1107 * nsfont.m (Vns_reg_to_script): New lisp variable.
1108 (syms_of_nsfont): Declare it.
1109 (ns_registry_to_script): New function.
1110 (ns_get_req_script): Call it.
1111 (ns_findfonts): Don't give up on non-unicode registry.
1112
1113 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1114
5b650faa
SM
11152009-09-20 Tom Tromey <tromey@redhat.com>
1116
1117 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1118 batch mode (bug#4228).
1119
a489517b 11202009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1121
1122 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1123 carefully. (Bug #4339)
0bae4e09 1124
fcfe06f3
CY
11252009-09-18 Chong Yidong <cyd@stupidchicken.com>
1126
d798ba87 1127 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1128
31642728
AR
11292009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1130
1131 * emacs.c (inhibit_x_resources): Update doc string for NS.
1132 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1133 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1134
1135 * nsterm.h (ns_no_defaults): Remove.
1136
1137 * nsterm.m (ns_no_defaults): Remove.
1138 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1139 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1140 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1141 don't update the NSWindow itself.
1142 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1143 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1144
1145 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1146 ns_use_qd_smoothing.
1147
1148 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1149 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1150 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1151 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1152
8686ac71
JB
11532009-09-17 Juanma Barranquero <lekktu@gmail.com>
1154
1155 * emacs.c (inhibit_x_resources): New variable.
1156 (main) [HAVE_NS]: Don't process --quick command line option.
1157 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1158
1159 * lisp.h (inhibit_x_resources): Declare it extern.
1160
1161 * w32reg.c (x_get_string_resource):
1162 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1163
e227ba05
EZ
11642009-09-17 Eli Zaretskii <eliz@gnu.org>
1165
362654a6
JB
1166 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1167 Add lisp/term/internal.elc.
e227ba05 1168
742d40e8
SM
11692009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1170
1171 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1172 (bug#4461).
1173
005bd5a2
DN
11742009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1175
1176 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1177
1178 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1179 (OBJECTS_MACHINE): Remove, unused.
1180
f9af9719
SM
11812009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1182
1183 * frame.c (x_get_resource_string): Remove unused.
1184
0307c7d2
JD
11852009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1186
1187 * xterm.c (x_new_font): Call change_frame_size before calling
1188 x_set_window_size, in case frame size won't change.
1189
1190 * frame.c (x_set_font): Remove dead code.
1191
428b13d6
SM
11922009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1193
1194 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1195
5766c380
SM
11962009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1197
1198 * lread.c (Fload): Don't output a message after loading an obsolete
1199 package any more (done in Lisp now).
1200
2fd0161b
CY
12012009-09-12 Chong Yidong <cyd@stupidchicken.com>
1202
1203 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1204
bc5e75b6
SM
12052009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1206
1207 * keymap.c (Fwhere_is_internal): Use nconc2.
1208
c31c985e
AM
12092009-09-11 Alan Mackenzie <acm@muc.de>
1210
1211 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1212 batch mode.
1213
78012bd2
AS
12142009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1215
1216 * xdisp.c (display_mode_element): Detect cycles.
1217
9d889332
SM
12182009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1219
1220 * keymap.c (where_is_internal): Don't erroneously return nil right after
1221 filling the cache.
1222 (where_is_internal_1): Fix up typo.
1223
7ab5d780
GM
12242009-09-11 Glenn Morris <rgm@gnu.org>
1225
1226 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1227 share a common doc-string.
1228
5238a749
SM
12292009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1230
66d77eda
SM
1231 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1232 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1233
5238a749
SM
1234 * keymap.c (QCadvertised_binding): New constant.
1235 (syms_of_keymap): Initialize it.
1236 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1237 if applicable.
1238
19f48442
SM
12392009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1240
50d4ba39
SM
1241 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1242 (parse_menu_item): Streamline since bindings are recomputed all the
1243 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1244 more and don't support lmenu's menu-alias any more either.
1245
a88a5372
SM
1246 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1247 (where_is_internal): Strip it down to only traverse the keymaps.
1248 Move the cache handling from Fwhere_is_internal to here.
1249 (Fwhere_is_internal): Move the handling of remapping and the choice of
1250 the best binding from where_is_internal to here.
1251 Unify the cached/noncached paths, so remapping is also handled
1252 correctly when the cache is used, and so the cache can be used to
1253 speed up remap-handling when applicable.
1254 Give preference to non-remapped bindings.
1255 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1256 non-remapped bindings.
1257 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1258 command remapping.
1259
19f48442
SM
1260 * xdisp.c (display_mode_element): Move list length limit from 50 to
1261 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1262
599498c3 12632009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1264
1265 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1266
f9b7b5ac
SM
12672009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1268
a53af587
JB
1269 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1270 (Bug#4334)
1271
f9b7b5ac
SM
1272 * keymap.c (where_is_internal): Filter out shadowed remappings.
1273 Assume that where_is_internal returns unshadowed bindings to simplify
1274 the code and get rid of the gotos. Use ASIZE.
1275
04f4b72d
JD
12762009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1277
4da146f2
JD
1278 * xterm.c (x_focus_changed): If we get a focusout and pointer
1279 is invisible, make it visible.
1280
04f4b72d
JD
1281 * xterm.h: Remove condition for declaration of
1282 x_*_window_to_frame.
1283
7cef7ce3
SM
12842009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1285
1286 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1287 initial terminal as well.
1288
a54fa5b7
JD
12892009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1290
1291 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1292 x_menubar_window_to_frame.
a54fa5b7
JD
1293
1294 * xterm.c: Remove declarations also in xterm.h
1295 (XTmouse_position): Do not return valid positions
1296 for clicks in the menubar and the toolbar for Gtk+.
1297
1298 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1299 if the widget for the event has the same top level as a frame,
1300 return the frame.
1301 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1302 internal windows, bug #4122.
1303 (x_non_menubar_window_to_frame): Remove.
1304
5a021dd0
GM
13052009-09-02 Glenn Morris <rgm@gnu.org>
1306
1307 * buffer.c (default-major-mode): Move most of the doc from here...
1308 (major-mode): ... to here.
1309
548fe2f3
NR
13102009-08-30 Nick Roberts <nickrob@snap.net.nz>
1311
1312 * process.c (wait_reading_process_output): Keep the descriptor
1313 when pty is used by a non-child process, e.g., in I/O buffer of
1314 GDB this allows inferior to be restarted.
1315
e0840eef
EZ
13162009-08-29 Eli Zaretskii <eliz@gnu.org>
1317
1318 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1319 both branches into one.
1320
82e98df4
SM
13212009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1324 (main): Use enable-multibyte-characters rather than
1325 default-enable-multibyte-characters. Output a warning message when
1326 running a unibyte session.
1327
890617cb
YM
13282009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1329
1330 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1331 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1332 (copy_data_segment): Also copy __program_vars section.
1333 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1334 (dump_it) [LC_DYLD_INFO]: Use it.
1335
1336 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1337
e7adeadc
EZ
13382009-08-28 Eli Zaretskii <eliz@gnu.org>
1339
1340 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1341 $(SRC)/buildobj.h.
1342 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1343 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1344 $(SRC)/buildobj.h.
1345 (clean): Add buildobj.h.
1346
3ed8bbdc
TZ
13472009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1348
1349 * print.c (print_object): Set escapeflag to 1 when printing
1350 hashtable keys and values.
1351
155a6764
SM
13522009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1353
1354 * lread.c (read_integer): Use doubles (and potentially return a float
1355 number) as we do in string-to-number.
1356 (read1): Use strtol to read integers, signal errors on strtol's
1357 overflow and use floats if strtol's output is too large for
1358 Elisp integers.
1359
877610de
EZ
13602009-08-27 Eli Zaretskii <eliz@gnu.org>
1361
1362 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1363 (make-buildobj-SH): Fix last change.
1364 (SRC): Move to before where it's first used.
1365
ef73e7be
KH
13662009-08-27 Kenichi Handa <handa@m17n.org>
1367
550c8289
KH
1368 * process.c (send_process): Use encode_coding_object instead of
1369 encode_coding_string to perform eol-conversion even if the string
1370 is unibyte.
1371
60afa08d
KH
1372 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1373 character.
1374
ef73e7be 1375 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1376 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1377
7b3a82d7
DN
13782009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1379
5654bf63
DN
1380 * callproc.c (Fcall_process): Remove always true #if.
1381
7b3a82d7
DN
1382 * lisp.h: Replace #if 0 code for checking with text pointing to
1383 the --enable-checking configure flag.
1384
1385 * emacs.c (main): Mention the --enable-profiling configure flag
1386 instead of using CFLAGS.
1387
878bde49
KR
13882009-08-26 Ken Raeburn <raeburn@raeburn.org>
1389
1390 * Makefile.in (buildobj.h): New target.
1391 (doc.o): Depend on it.
1392 (temacs${EXEEXT}): Don't generate buildobj.lst.
1393 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1394 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1395 ($(BLD)/doc.$(O)): Depend on it.
1396 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1397 provided by Eli Zaretskii.)
1398 ($(TEMACS)): Don't generate buildobj.lst.
1399 * doc.c: Include buildobj.h.
1400 (buildobj): New static variable.
1401 (Fsnarf_documentation): Use it, instead of opening and reading
1402 buildobj.lst.
1403
1574224c
MA
14042009-08-25 Michael Albinus <michael.albinus@gmx.de>
1405
1406 * dbusbind.c (Fdbus_call_method)
1407 (Fdbus_call_method_asynchronously): Use English numeric format for
1408 timeout values in doc string.
1409
d9da2f45
KH
14102009-08-25 Kenichi Handa <handa@m17n.org>
1411
ef73e7be
KH
1412 * alloc.c (mark_char_table): New function.
1413 (mark_object): Use mark_char_table for a char-table.
1414
d9da2f45
KH
1415 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1416 (CHAR_TABLE_REF): Use it.
1417
c8edcc01
KR
14182009-08-23 Ken Raeburn <raeburn@raeburn.org>
1419
1420 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1421 before invoking the newly build emacs to check for load-path
1422 shadowing.
1423
7763401b
GM
14242009-08-22 Glenn Morris <rgm@gnu.org>
1425
1426 * Makefile.in (bootstrap_exe): New variable.
1427 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1428 Use ${bootstrap_exe}.
1429
729eadda
EZ
14302009-08-22 Eli Zaretskii <eliz@gnu.org>
1431
1432 * coding.h (encode_coding_string): Don't encode unibyte strings.
1433 (Bug#4047)
1434
eb4c6ace
MA
14352009-08-22 Michael Albinus <michael.albinus@gmx.de>
1436
1437 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1438
1439 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1440 intended as hotfix only.
1441 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1442
36e34d1b
AR
14432009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1444
1445 * nsterm.m (ns_get_color): Update documentation properly for last
1446 change, and clean up loose ends in the code left by it. Fix
1447 longstanding bug with 16-bit hex parsing, and add support for
1448 yet another X11 format (rgb:r/g/b) for compatibility.
1449 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1450 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1451
f983eb8a
SM
14522009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1453
1454 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1455
3f56d3c6
MA
14562009-08-20 Michael Albinus <michael.albinus@gmx.de>
1457
1458 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1459 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1460 (xd_initialize, xd_pending_messages): Check, whether
1461 $DBUS_SESSION_BUS_ADDRESS is set.
1462
fb641d68
YM
14632009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1464
1465 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1466
1467 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1468
cf59a374
GM
14692009-08-20 Glenn Morris <rgm@gnu.org>
1470
1471 * emacs.c (system-type): Doc fix.
1472
1373f3be
SM
14732009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1474
1475 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1476 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1477
058ed861
MA
14782009-08-18 Michael Albinus <michael.albinus@gmx.de>
1479
1373f3be
SM
1480 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1481 New functions.
058ed861
MA
1482 (xd_initialize): Revert change from 2009-08-16.
1483
563a866e 14842009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1485
1486 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1487 font-group vector, return nil.
5fc05db0 1488
e42bdf01
CY
14892009-08-17 Chong Yidong <cyd@stupidchicken.com>
1490
1491 * process.c (status_notify): Don't perform redisplay.
1492 (Fdelete_process, list_processes_1, process_send_signal):
1493 Expliticly perform redisplay.
1494 (wait_reading_process_output): Always check process status, but
1495 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1496
4230ab74
KR
14972009-08-17 Ken Raeburn <raeburn@raeburn.org>
1498
1373f3be 1499 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1500 (XFLOAT_INIT): New macro for storing a float value.
1501 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1502 * fns.c (sxhash): Copy out the value of a float in order to
1503 examine its bytes.
1504 * dbusbind.c (xd_append_arg): Likewise.
1505
4230ab74
KR
1506 * emacs.c (main): Don't call syms_of_data twice.
1507
a0645cdd
MA
15082009-08-16 Michael Albinus <michael.albinus@gmx.de>
1509
1510 * dbusbind.c (xd_initialize): Add connection file descriptor to
1511 input_wait_mask, in order to let select() detect, whether a new
1512 message has been arrived.
ca4f31ea 1513 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1514
485db0ba
MA
15152009-08-15 Michael Albinus <michael.albinus@gmx.de>
1516
1373f3be
SM
1517 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1518 New functions.
485db0ba
MA
1519
1520 * lisp.h (xd_pending_messages): Declare.
1521
1522 * keyboard.c (readable_events): Call xd_pending_messages.
1523
b5b98ff4
CY
15242009-08-15 Chong Yidong <cyd@stupidchicken.com>
1525
1373f3be 1526 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1527
f8354c6e
CY
1528 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1529
b5b98ff4
CY
1530 * buffer.c (set_buffer_internal_1)
1531 (swap_out_buffer_local_variables): Check for unbound local
1532 variables (Bug#4138).
1533
8b9fc636
EZ
15342009-08-14 Eli Zaretskii <eliz@gnu.org>
1535
1536 * process.c (create_pty): Fix last change.
1537
ce959360
CY
15382009-08-13 Chong Yidong <cyd@stupidchicken.com>
1539
1540 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1541 (xbm_load_image): Caller changed.
64b807c9 1542 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1543
c7baf7e9
NR
15442009-08-13 Nick Roberts <nickrob@snap.net.nz>
1545
1546 * process.c (create_pty): New function.
1547 (Fstart_process): Use it to allow Emacs to just associate a pty
1548 with the buffer. See associated change in gdb-mi.el.
1549 (list_processes_1): Deal with no program name.
1550 (start_process_unwind): Use pid == -2 to mean no process.
1551
1ac9108a
SM
15522009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1553
1554 * cmds.c (nonundocount): New global variable.
1555 (keys_of_cmds): Initialize it.
1556 (Fself_insert_command): Use it to combine upto 20 sequential chars
1557 into a single undo entry, just like the Qself_insert_command code in
1558 keyboard.c does.
1559 Call frame_make_pointer_invisible, also like the Qself_insert_command
1560 code in keyboard.c does.
1561 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1562 than its own local replacement for it.
1563
e267324c
KR
15642009-08-10 Ken Raeburn <raeburn@raeburn.org>
1565
1ac9108a 1566 * fns.c (concat): Don't re-set string length to its current value.
77437343 1567
1ac9108a
SM
1568 * coding.h (decode_coding_string, encode_coding_string):
1569 Use SBYTES macro.
f0bed503 1570
1ac9108a 1571 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1572 (doprnt): Merge with doprnt1, discarding lispstrings code.
1573 * lisp.h (doprnt_lisp): Don't declare.
1574
416e006d
JL
15752009-08-07 Juri Linkov <juri@jurta.org>
1576
1577 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1578
6f7d5780
DN
15792009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1580
1581 * print.c (syms_of_print): Undo previous change.
1582
f19a0f5b
TZ
15832009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1584
1585 * lread.c (read1, syms_of_lread): Read hashtables back from the
1586 readable format.
1587
1588 * print.c (print_preprocess, print_object): Print hashtables fully
1589 and readably.
1590 (syms_of_print): Provide 'hashtable-print-readable.
1591
b9173dc2
AR
15922009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1593
1594 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1595 no family set.
1596 (nsfont_open): Handle case when entity has no family.
1597
1586503c
AR
15982009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1599
1600 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1601 element, not a list, for match case.
1602
087048cd
KH
16032009-07-28 Kenichi Handa <handa@m17n.org>
1604
1605 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1606 rigidly.
1607
1608 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1609 font_parse_xlfd. Check font properties more rigidly.
1610
780c2506
DN
16112009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1612
31fd7c5c
JB
1613 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1614 bsd-common.h.
780c2506 1615
a8c0cc18
KH
16162009-07-27 Kenichi Handa <handa@m17n.org>
1617
1618 * xfaces.c (face_with_height): Call font_clear_prop.
1619
4fbe2306
CY
16202009-07-26 Chong Yidong <cyd@stupidchicken.com>
1621
111d9af3
CY
1622 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1623
1624 * xterm.c (x_term_init): Use Qx.
1625
4fbe2306
CY
1626 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1627
1ac9108a 1628 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1629 (ns_get_color): Revert 2009-07-16 change.
1630
beb0b7f9
EZ
16312009-07-25 Eli Zaretskii <eliz@gnu.org>
1632
1633 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1634 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1635
2baf5e76
KR
16362009-07-25 Ken Raeburn <raeburn@raeburn.org>
1637
1ac9108a
SM
1638 * coding.h (decode_coding_string, encode_coding_string):
1639 Use SCHARS macro.
8890e5f5 1640
2baf5e76 1641 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1642 (load_depth): Delete.
2baf5e76
KR
1643 (Qload_in_progress): New variable.
1644 (load_unwind): Don't reference load_depth or load_in_progress.
1645 (Fload): Likewise; specbind Qload_in_progress instead.
1646 (init_lread): Don't initialize load_depth.
1647 (syms_of_lread): Initialize and protect Qload_in_progress.
1648
1395c6f5
AR
16492009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1650
1651 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1652
4e2f36cf
AR
16532009-07-23 Yavor Doganov <yavor@gnu.org>
1654
1655 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1656
5dd9a6f7
AR
16572009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1658
1659 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1660 Bugs 3792, 3720, 2402.
1661 (ns_lookup_indexed_color): Check for bad index.
1662 (ns_index_color): Init unused slot to 0.
1663 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1664 Bug 3714, possibly 3082.
5dd9a6f7 1665
c902b920
JR
16662009-07-22 Jason Rumney <jasonr@gnu.org>
1667
1ac9108a
SM
1668 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1669 Position IME window at cursor (Bug#2570).
c902b920
JR
1670 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1671 (globals_of_w32fns): Dynamically load functions required above.
1672
1673 * w32term.c (w32_draw_window_cursor): Send message to reposition
1674 any IME window.
1675
090101cf
CY
16762009-07-21 Chong Yidong <cyd@stupidchicken.com>
1677
1678 * fileio.c: Revert 2009-07-16 changes.
1679 (Vauto_save_include_big_deletions): New variable.
1680 (Fdo_auto_save): Disable auto-save only if
1681 auto-save-include-big-deletions is nil.
1682
e6583e3d
CY
16832009-07-21 Chong Yidong <cyd@stupidchicken.com>
1684
1685 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1686 the overflowed pixels into account (Bug#3879).
1687
ece435a5
KR
16882009-07-21 Ken Raeburn <raeburn@raeburn.org>
1689
1690 * lread.c (load_depth): New variable.
1691 (Fload, load_unwind, init_lread): Set it to the load recursion
1692 depth; set load_in_progress as a simple boolean based on the
1693 current load_depth. (Bug#3892)
1694
40b2d973
AR
16952009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1696
1697 * nsfont.m (ns_has_attribute): Remove.
1698 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1699
10be7e0d
JL
17002009-07-18 Juri Linkov <juri@jurta.org>
1701
1702 * process.c (Fset_process_query_on_exit_flag): Mention killing
1703 a buffer in docstring.
1704
fa055055
KH
17052009-07-17 Kenichi Handa <handa@m17n.org>
1706
1707 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1708
042f7b69
YM
17092009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1710
1711 * nsfns.m (Fns_set_alpha): Remove function.
1712 (syms_of_nsfns): Don't defsubr it.
1713
1714 * nsterm.m (ns_get_color): Remove incompatible color formats.
1715 (ns_color_to_lisp): Generate #rrggbb color format string.
1716
4be941e3
RS
17172009-07-16 Richard Stallman <rms@gnu.org>
1718
1719 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1720 (Fset_buffer_auto_saved): Handle save_length = -2.
1721
4e6b227d
CY
17222009-07-16 Chong Yidong <cyd@stupidchicken.com>
1723
1724 * xterm.c (Qx_gtk_map_stock): New var.
1725
1726 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1727 of calling intern each time.
1728
a1856973
YM
17292009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1730
1731 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1732 does tiling.
1733
1734 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1735
497e54d8
KH
17362009-07-14 Kenichi Handa <handa@m17n.org>
1737
72d36834
KH
1738 * font.c (font_vconcat_entity_vectors): New function.
1739 (struct font_sort_data): New member font_driver_preference.
1740 (font_compare): Check font_driver_preference.
1741 (font_sort_entities): The format of the first argument changed.
1742 (font_delete_unmatched): Likewise.
1743 (font_list_entities): The return type changed.
1744 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1745 (font_find_for_lface): Adjuste for the above changes.
1746 Don't suppress the checking of C even if the repertory supports it.
1747 (Flist_fonts): Adjust for the above changes.
72d36834 1748
1ac9108a
SM
1749 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1750 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1751 Reject a font who has adstyle property that is different from a
1752 langname derived from registry property.
1ac9108a 1753 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1754
b6046155
EZ
17552009-07-13 Eli Zaretskii <eliz@gnu.org>
1756
1757 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1758 local copy of dirfilename.
1759
fb6b6049
KH
17602009-07-13 Kenichi Handa <handa@m17n.org>
1761
e2402a5e
KH
1762 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1763 against max_char.
1764
fb6b6049
KH
1765 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1766 calling XSYMBOL (sym).
1767
65156807
EZ
17682009-07-11 Eli Zaretskii <eliz@gnu.org>
1769
1ac9108a
SM
1770 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1771 New function.
1772 (directory_files_internal) [WINDOWSNT]:
1773 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1774 the filesystem of the directory is fast or slow.
1775
1776 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1777 file name.
1778 (is_slow_fs): New function.
1779 (stat): Use it to determine whether to issue more system calls to
1780 get accurate file attributes, when w32-get-true-file-attributes is
1781 `local'.
1782
e0ab5fcf
JD
17832009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1784
1785 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1786 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1787 parameter font-parameter as default to the font dialog.
1788
784ceded
KH
17892009-07-10 Kenichi Handa <handa@m17n.org>
1790
1791 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1792
fb8edc0b
EZ
17932009-07-09 Eli Zaretskii <eliz@gnu.org>
1794
1ac9108a 1795 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1796
fb8edc0b
EZ
1797 * w32.c (stat): Treat UNC file names as residing on remote
1798 drives. (Bug#3542)
1799
635c75b1
KH
18002009-07-09 Kenichi Handa <handa@m17n.org>
1801
1802 * fontset.c (fontset_find_font): Fix previous change.
1803
c1d5ce94
MA
18042009-07-08 Michael Albinus <michael.albinus@gmx.de>
1805
1806 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1807 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1808 error flag.
1809
edb61b39
KH
18102009-07-08 Kenichi Handa <handa@m17n.org>
1811
374bf7e4
KH
1812 * fontset.c (fontset_find_font): Fix the logic of handling
1813 charset_matched.
1814 (font_for_char): Delete unused var.
1815 (generate_ascii_font_name): Delete it.
1816
edb61b39
KH
1817 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1818
1819 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1820 (encode_coding_sjis): Fix the code range check.
1821
0f3f018c
CY
18222009-07-07 Chong Yidong <cyd@stupidchicken.com>
1823
1824 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1825 (Fexpand_file_name): Copy string data properly (Bug#3772).
1826
fcaf6f3a
JD
18272009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1828
1829 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1830 first MapNotify.
1831
6809ca75
KH
18322009-07-07 Kenichi Handa <handa@m17n.org>
1833
1834 * character.h (unibyte_has_multibyte_table): Delete extern.
1835 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1836
1837 * charset.c (Fset_charset_priority): Update charset_unibyte.
1838 (syms_of_charset): Initialize charset_unibyte.
1839
1840 * character.c (unibyte_has_multibyte_table): Delete it.
1841 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1842 charset_unibyte.
1843 (multibyte_char_to_unibyte_safe): Likewise.
1844 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1845
1ac9108a 1846 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1847 (x_produce_glyphs): Likewise.
1848
1849 * .gdbinit (xcharset): Fix the treating $arg0.
1850
ad9e2d54
EZ
18512009-07-04 Eli Zaretskii <eliz@gnu.org>
1852
1853 Emulation of `getloadavg' on MS-Windows.
1854 * w32.c: Include float.h
1855 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1856 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1857 (get_native_system_info, get_system_times): New functions.
1858 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1859 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1860 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1861 g_b_init_get_system_times, and num_of_processors.
1862
0a3472c7
JR
18632009-07-03 Jason Rumney <jasonr@gnu.org>
1864
1865 * w32term.c (w32_initialize): Use standard types.
1866
80904120
EZ
18672009-07-03 Eli Zaretskii <eliz@gnu.org>
1868
1869 * dired.c (Ffile_attributes): Decode user and group names by the
1870 locale's encoding. (Bug#3443)
1871
6978862d
DN
18722009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1873
f8d23104
DN
1874 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1875 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1876
1877 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1878
1879 * term.c (init_tty): Remove spurious #ifdef.
1880
6978862d
DN
1881 * m/mips.h: Mention this file is also used for netbsd.
1882 * m/pmax.h: Remove file.
1883
e044e4fc
JD
18842009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1885
1886 * xterm.h (struct x_display_info): Add invisible_cursor.
1887 (struct x_output): Add current_cursor.
1888
1889 * xterm.c (XTtoggle_invisible_pointer): New function.
1890 (x_define_frame_cursor): Don't define cursor if invisible or the
1891 same as before. Set current_cursor.
1892 (x_create_terminal): Set toggle_invisible_pointer_hook.
1893
1894 * xfns.c (make_invisible_cursor): New function.
1895 (x_set_mouse_color): Call make_invisible_cursor.
1896 Set current_cursor.
1897 (x_window): Set current_cursor.
1898
1899 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1900
1901 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1902 inserting a character.
1903 (read_avail_input): Call frame_make_pointer_visible.
1904
1905 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1906 (frame_make_pointer_invisible, frame_make_pointer_visible):
1907 New functions.
e044e4fc
JD
1908 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1909
1910 * frame.h: Declare frame_make_pointer_invisible and
1911 frame_make_pointer_visible.
1912 (struct frame): Add pointer_invisible.
1913
574c8efa
JD
19142009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1915
7b507248
JD
1916 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1917 frame isn't visible.
1918 (xg_frame_resized): If width/height is -1, get size of window
1919 from X server.
1920
1921 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1922 for MapNotify.
1923
835bdaa7 1924 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1925 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1926 (flush_and_sync): Reintroduce.
574c8efa 1927
3f1c6666 19282009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1929
31fd7c5c 1930 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1931
1932 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1933 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1934
1935 * frame.h: Declare Qsticky.
1936
cad9ef74
JD
1937 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1938
1939 * nsfns.m (ns_frame_parm_handlers): Ditto.
1940
1941 * frame.c: Declare Qsticky.
1942 (frame_parms): Add sticky.
1943
1944 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1945
1946 * xterm.h: Declare x_set_sticky.
1947
1948 * xterm.c (x_set_sticky): New function.
1949
69b16610
JD
1950 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1951 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1952 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1953
1954 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1955
1956 * frame.c: Qmaximized is new.
1957 (x_set_frame_parameters): Do not handle fullscreen specially.
1958 Only set width and height if explicitly set.
1959 (x_set_fullscreen): Handle Qmaximized.
1960 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1961 (syms_of_frame): Initialize Qmaximized.
1962
1ac9108a
SM
1963 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1964 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1965
1966 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1967 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1968 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1969 set gravity to NorthWestGravity when USE_GTK.
1970 (set_wm_state): New function.
31fd7c5c 1971 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1972 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1973 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1974 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1975 to x_real_positions and x_fullscreen_adjust.
1976
1977 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1978 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1979 flush_and_sync.
1980 (xg_height_changed): New function.
1981 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1982 and gtk_window_set_policy. Set frame gravity after parsing the
1983 geometry string.
3f1c6666
JD
1984 (xg_update_frame_menubar, free_frame_menubar)
1985 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1986 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1987 Remove calls to xg_frame_set_char_size.
1988
fd503d99
KH
19892009-07-01 Kenichi Handa <handa@m17n.org>
1990
1991 * keyboard.c (decode_keyboard_code): New function.
1992 (tty_read_avail_input): Decode the input bytes if necessary.
1993
1ac9108a
SM
1994 * coding.c (setup_coding_system):
1995 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1996 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1997 use Qno_conversion.
1998
24ed93fb
YM
19992009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2000
2001 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2002
99061dfc
CY
20032009-06-30 Chong Yidong <cyd@stupidchicken.com>
2004
1ac9108a 2005 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2006
ff90fbde
JR
20072009-06-30 Jason Rumney <jasonr@gnu.org>
2008
2009 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2010 is already loaded.
2011 Set user model ID if supported (bug#1849).
2012
5f445726
JM
20132009-06-29 Jim Meyering <meyering@redhat.com>
2014
2015 Remove useless if-before-xfree test.
2016 * nsfont.m (nsfont_close): Remove useless test.
2017 * term.c (delete_tty): Likewise.
2018 * w32.c (system_process_attributes): Likewise.
2019 * w32font.c (w32font_close): Likewise.
2020 * xfaces.c (x_free_gc): Likewise.
2021 * xselect.c (buffer): Likewise.
2022
b9607587
AS
20232009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2024
2025 * process.c (send_process): Keep decoded string in a local
2026 variable and protect it from GC. (Bug#3521)
2027
89ba96f4
EZ
20282009-06-28 Eli Zaretskii <eliz@gnu.org>
2029
2030 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2031 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2032
098a1589
CY
20332009-06-28 Chong Yidong <cyd@stupidchicken.com>
2034
485422be
CY
2035 * xdisp.c (start_display, handle_face_prop)
2036 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2037 (redisplay_window, try_window_id, produce_image_glyph):
2038 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2039
098a1589
CY
2040 * xterm.c (x_update_window_begin, x_new_focus_frame)
2041 (x_scroll_bar_handle_click, handle_one_xevent)
2042 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2043 (x_make_frame_visible, x_make_frame_invisible)
2044 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2045 code chunks that are now obsolete.
2046
78c38319
MA
20472009-06-28 Michael Albinus <michael.albinus@gmx.de>
2048
2049 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2050 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2051 for hours, when optimzation is enabled.
2052 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2053 (xd_read_message): Make them static.
2054
4189ed40
CY
20552009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2056
2057 * term.c (turn_on_face): Allow simultaneously bold and dim
2058 terminal faces (Bug#3530).
2059
cd9b5e16
CY
20602009-06-27 Chong Yidong <cyd@stupidchicken.com>
2061
4e23bedb
CY
2062 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2063
cd9b5e16
CY
2064 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2065 truncation glyphs (Bug#3686).
2066
07cc3c35
GM
20672009-06-27 Glenn Morris <rgm@gnu.org>
2068
2069 * m/pmax.h: Restore file, with only netbsd portions.
2070
31fd7c5c 20712009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2072
cd9b5e16 2073 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2074
42d4a64f
KH
20752009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2076
2077 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2078 the arg FORCE_SYMBOL.
2079
930fe55b 20802009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2081
2082 * fontset.c (fontset_find_font): When a usable rfont_def is found
2083 in a fallback font-group, make it the first element of the group.
2084
57ebc3fd
CY
20852009-06-24 Chong Yidong <cyd@stupidchicken.com>
2086
2087 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2088
f084f942
KH
20892009-06-24 Kenichi Handa <handa@m17n.org>
2090
2091 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2092 set for C.
2093 (fontset_font): Record the availability of a font for C both in
2094 the realized fontsets of the current one and the default one.
2095
2f686c87
DN
20962009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2097
2098 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2099 conditional, it is always defined on AIX.
2100
666e158e
MB
21012009-06-23 Miles Bader <miles@gnu.org>
2102
2103 * window.c (Vrecenter_redisplay): New variable.
2104 (syms_of_window): Initialize it.
2105 (Qtty): New extern declaration.
2106 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2107
c6da7cd2
JM
21082009-06-23 Jim Meyering <meyering@redhat.com>
2109
1ac9108a
SM
2110 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2111 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2112 pointer dereferences are guaranteed to be valid.
c6da7cd2 2113
678dca3d
KH
21142009-06-23 Kenichi Handa <handa@m17n.org>
2115
74d75424
KH
2116 * emacs.c (main): Call init_font ().
2117
2118 * font.h (Vfont_log): Extern it.
2119 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2120
2121 * font.c (font_sort_entities, font_list_entities)
2122 (font_matching_entity, font_open_entity)
2123 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2124 (Vfont_log): Delete static.
2125 (font_log_env_checked): Delete this variable.
2126 (font_add_log): Don't check font_log_env_checked.
2127 (font_deferred_log): Check Vfont_log.
2128 (init_font): New function.
2129
678dca3d
KH
2130 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2131
2132 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2133
2134 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2135
2136 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2137
2138 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2139 (face_for_char): Don't call font_deferred_log here.
2140 (font_for_char): Likewise.
2141
8a668709
CY
21422009-06-22 Chong Yidong <cyd@stupidchicken.com>
2143
9a01ee33
CY
2144 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2145 rather than its background_width for drawing the overline and
2146 underline (Bug#489).
2147
2148 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2149 rather than its background_width for drawing the overline and
2150 underline (Bug#489).
ec7c9926
CY
2151 (xg_default_icon_file): New variable.
2152 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2153 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2154
8a668709
CY
2155 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2156 (load_overlay_strings): Remove externs.
2157 (fast_find_position): Function deleted.
2158 (mouse_face_from_buffer_pos): New function, based on
2159 fast_find_position. Correctly handle before-strings,
2160 display-strings, and after-strings (Bug#1220).
2161 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2162
4d4c02d8
CY
21632009-06-21 Chong Yidong <cyd@stupidchicken.com>
2164
1ac9108a 2165 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2166 (move_it_in_display_line_to, move_it_in_display_line_to)
2167 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2168
70243478
CY
21692009-06-21 Chong Yidong <cyd@stupidchicken.com>
2170
2171 * Branch for 23.1.
2172
13087e59
JR
21732009-06-21 Jason Rumney <jasonr@gnu.org>
2174
2175 * w32term.c (keyboard_codepage): New static variable.
2176 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2177 (w32_read_socket) [WM_CHAR]: Use it to decode character
2178 input (bug#3237).
2179 (w32_initialize): Initialize it.
2180 (codepage_for_locale): New function.
2181
4735b74e
KR
21822009-06-20 Ken Raeburn <raeburn@raeburn.org>
2183
2184 * process.c (status_message): Pass Faset index argument as a lisp
2185 object, so as to work with USE_LISP_UNION_TYPE.
2186
0e727afa
YM
21872009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2188
2189 * coding.c (Ffind_coding_systems_region_internal):
2190 Cache checked characters.
2191
cf299835
KH
21922009-06-18 Kenichi Handa <handa@m17n.org>
2193
1ac9108a 2194 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2195
90f20d94
AS
21962009-06-18 Andreas Schwab <aschwab@redhat.com>
2197
2198 * xdisp.c (redisplay_internal): Check that the frame is still
2199 live after redisplay of its windows.
2200 (redisplay_windows): Check that the window is still live.
2201
7f1faf1c
KH
22022009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2203
2204 * coding.c (detect_coding_utf_16): Fix previous change.
2205
cc13543e
KH
22062009-06-16 Kenichi Handa <handa@m17n.org>
2207
2208 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2209 UTF-16 by checking the dispersion of Eth and Oth bytes.
2210
977b85f4
AS
22112009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2212
2213 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2214
66bd43d1
KH
22152009-06-15 Kenichi Handa <handa@m17n.org>
2216
2217 * process.c (status_message): Fix previous change. Be sure to
2218 decode a localized string.
2219
cb5ca9c5
YM
22202009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2221
2222 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2223 add comment explaining why.
2224
ec7709ba 22252009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2226
ec7709ba 2227 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2228
4b7f335c
AR
22292009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2230
2231 * nsfont.m (ns_attribute_value): Remove.
2232 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2233 (ns_has_attribute): Shrink the normal range.
2234 (ns_findfonts): Don't worry about requested spec in determining
2235 need for synthItal.
e41820ee 2236 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2237
73b26103
SZ
22382009-06-14 Seiji Zenitani <zenitani@mac.com>
2239
2240 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2241
5753e4da
KH
22422009-06-11 Kenichi Handa <handa@m17n.org>
2243
2244 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2245 overhang for the static composition case.
2246
3561b671
KH
22472009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2248
5753e4da
KH
2249 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2250 overhang for the automatic composition case.
2251
3561b671
KH
2252 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2253 composition case.
2254
852bbd41
CY
22552009-06-10 Chong Yidong <cyd@stupidchicken.com>
2256
2257 * xdisp.c (get_next_display_element): When handling wrap-prefix
2258 and line-prefix, treat \n as a control character (bug#3502).
2259
9903d1e6
KH
22602009-06-10 Kenichi Handa <handa@m17n.org>
2261
2262 * font.c (font_parse_family_registry): Fix for one-char foundry.
2263 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2264
0bcbaaaa
CY
22652009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2266
2267 * process.c (status_message): Fix handling of multibyte signal
2268 string (Bug#3499).
2269
40aa3f13
JM
22702009-06-09 Jim Meyering <meyering@redhat.com>
2271
1f80c7e2
CY
2272 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2273 color name is missing.
40aa3f13 2274
72d51285
KH
22752009-06-09 Kenichi Handa <handa@m17n.org>
2276
2277 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2278 FROM-CODE and TO-CODE are codepoints of CHARSET.
2279
c1d04d84
AR
22802009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2281
2282 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2283
22842009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2285
2286 Changes to support :script/:lang/:otf in NS font driver.
2287 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2288 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2289 indicate not part of font driver interface, and change callers.
2290 (ns_get_family): Remove pointless null check.
2291 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2292 ns_spec_to_descriptor, ns_descriptor_to_entity.
2293 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2294 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2295 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2296 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2297 (ns_get_req_script, ns_accumulate_script_ranges)
2298 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2299 New functions.
2300 (nsfont_list, nsfont_match): Use ns_findfonts.
2301 (nsfont_open): Use font descriptor instead of traits.
2302 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2303 (dump_glyphstring): Rename to ns_dump_glyphstring.
2304
c7eb9816
AR
2305 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2306
c1d04d84
AR
2307 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2308
2309 * fontset.c (fontset_from_font): Remove NS-specific code.
2310
ec7709ba 23112009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2312
2313 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2314 nonactive windows.
2315
31fd7c5c 23162009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2317
1ac9108a 2318 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2319
68852c13 23202009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2321
2322 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2323
6756cd1d
CY
23242009-06-07 Chong Yidong <cyd@stupidchicken.com>
2325
2326 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2327 account for the overflowing of newlines into the last glyph on the
2328 display line (Bug#3482).
2329
28bf482a
DR
23302009-06-05 David Reitter <david.reitter@gmail.com>
2331
ec7709ba
JB
2332 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2333 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2334 Fns_selection_exists_p, Fns_selection_owner_p.
2335
fdb55376
JR
23362009-06-03 Jason Rumney <jasonr@gnu.org>
2337
2338 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2339 available. (Bug#3379)
2340
05129fbe
KH
23412009-05-29 Kenichi Handa <handa@m17n.org>
2342
1ac9108a
SM
2343 * coding.c (get_translation_table):
2344 Check Venable_character_translation.
05129fbe 2345
ec7709ba 23462009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2347
ec7709ba
JB
2348 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2349 (x_make_frame_visible): Move frame to front rather than calling
15891144 2350 ns_raise_frame().
ec7709ba 2351 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2352 isn't key window.
ec7709ba 2353 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2354 drawRect may be called by NSView even if the frame is hidden.
2355
ec7709ba
JB
2356 * nsfns.m (Fx_create_frame): Follow other ports in
2357 determining visibility; default to t. Ensure async_visible is set.
15891144 2358
21f73755
EZ
23592009-05-23 Eli Zaretskii <eliz@gnu.org>
2360
2361 * dired.c (Ffile_attributes): Doc fix.
2362
34001e41
CY
23632009-05-22 Chong Yidong <cyd@stupidchicken.com>
2364
2365 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2366
46306a17
SM
23672009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2368
2369 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2370 and xfont_scratch_props.
2371 (syms_of_xfont): Do it here instead.
2372 (xfont_find_ccl_program): Delete, unused.
2373 (xfont_open): Delete unused var `i'.
2374
ef6e0694
KH
23752009-05-21 Kenichi Handa <handa@m17n.org>
2376
2377 * fontset.c (Qlatin): Don't make it static.
2378
46306a17
SM
2379 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2380 New functions.
ef6e0694
KH
2381 (xfont_scripts_cache, xfont_scratch_props): New variables.
2382 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2383 (xfont_list_pattern): Argument changed. Callers changed.
2384 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2385 (xfont_list): Don't reject a font spec with :script property.
2386 (xfont_has_char): Fix setting of encoding.
2387 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2388 xfont_scratch_props.
2389
23902009-05-19 Kenichi Handa <handa@m17n.org>
2391
46306a17 2392 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2393 Callers changed.
2394
23952009-05-18 Kenichi Handa <handa@m17n.org>
2396
2397 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2398
ac71ced7
SM
23992009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2400
2401 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2402 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2403
1c6d1051
YM
24042009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2405
2406 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2407 (x_delete_terminal): Dissociate resource database from display and
2408 then call XrmDestroyDatabase before closing display.
2409
9b9b779c
AR
24102009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2411
2412 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2413 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2414 whether selected frame is viable before raising it (based on patch
2415 by David Reitter), and improve commentary.
2416 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2417
cccd42d5
KH
24182009-05-15 Kenichi Handa <handa@m17n.org>
2419
2420 * font.c (Ffont_spec): Check arguments.
2421
337fbd17
CY
24222009-05-14 Chong Yidong <cyd@stupidchicken.com>
2423
2424 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2425 weight when testing attributes (Bug#3282).
2426
47a6002f
JD
24272009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2428
2429 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2430 what we expect to get in the next ConfigureNotify event.
2431
9cb363db
YM
2432 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2433 before Xft one (Bug#1696).
2434
b9126609
CY
24352009-05-07 David Reitter <david.reitter@gmail.com>
2436
2437 * nsfns.m (Fx_display_planes): Compute bitplanes using
2438 NSBitsPerPixelFromDepth (Bug#3207).
2439
27a69fd9
CY
24402009-05-10 Chong Yidong <cyd@stupidchicken.com>
2441
2442 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2443
00f37552
TTN
24442009-05-10 Ulrich Mueller <ulm@gentoo.org>
2445
2446 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2447
2d82a920
DR
24482009-05-07 David Reitter <david.reitter@gmail.com>
2449
ec7709ba
JB
2450 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2451 Respect mouse face background.
2d82a920 2452
46b0d52d
DR
24532009-05-07 David Reitter <david.reitter@gmail.com>
2454
ec7709ba
JB
2455 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2456 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2457 in ns_update_begin and ns_update_end.
2458
ce1b23bb
SM
24592009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2460
5996e1b7
SM
2461 * nsfns.m (ns_get_screen): Rewrite.
2462 Don't presume selected-frame is of type `ns'.
2463
ba98e3a0
SM
2464 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2465 all drivers.
2466
ce1b23bb
SM
2467 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2468
bcda200f
YM
24692009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2470
2471 * keyboard.h (add_user_signal): Fix typo in extern.
2472
2473 * lisp.h (add_user_signal): Remove extern.
2474
2475 * unexelf.c (unexec): Consider a section to precede the .bss section
2476 if its addresses overlap that of .bss.
2477 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2478 instead of dumping process.
2479
864660a2
SM
24802009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2481
2482 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2483
50da4e56
SM
24842009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2485
2486 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2487
51520a1a
DN
24882009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2489
2490 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2491 any statements.
2492
409ea3a1
AS
24932009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2494
59c4c60f
AS
2495 * process.c (read_process_output): Make sure the current buffer is
2496 always restored.
2497
409ea3a1
AS
2498 * coding.c (record_conversion_result): Don't modify
2499 Vlast_code_conversion_error for successful result.
2500 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2501
56f00ed2
KH
25022009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2503
2504 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2505 (load_charset_map): Remove unnecessary code.
56f00ed2 2506
4491c9d2
DR
25072009-04-30 David Reitter <david.reitter@gmail.com>
2508
35f5b128 2509 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2510 through f24.
2511
6970f632
CY
25122009-04-30 Chong Yidong <cyd@stupidchicken.com>
2513
2514 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2515
2516 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2517 face_at_buffer_position.
2518 (face_before_or_after_it_pos, get_next_display_element)
2519 (note_mouse_highlight): Update face_at_buffer_position call.
2520
2521 * term.c (term_mouse_highlight):
2522 * msdos.c (IT_note_mouse_highlight):
2523 * fontset.c (Finternal_char_font):
35f5b128 2524 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2525
2526 * dispextern.h (face_at_buffer_position): Update prototype.
2527
0c616f63
KH
25282009-04-30 Kenichi Handa <handa@m17n.org>
2529
35f5b128 2530 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2531
ad3aaf33
AS
25322009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2533
2534 * callproc.c (Fcall_process): Fix GC protection. Make sure
2535 current buffer is always restored.
2536
c3c963a0
YM
25372009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2538
2539 * atimer.c (init_atimer): Also clear stopped_atimers.
2540
2541 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2542
7e3386cb
YM
2543 * process.c (create_process): Clean up merger residues of
2544 2008-07-17 change.
2545
91f68422
CY
25462009-04-29 Ulrich Mueller <ulm@gentoo.org>
2547
2548 * lread.c (Vread_circle): New variable.
2549 (read1): Disable recursive read if Vread_circle is nil.
2550
24b34550
KH
25512009-04-29 Kenichi Handa <handa@m17n.org>
2552
2553 * fontset.h (set_default_ascii_font): Delete extern.
2554
2555 * fontset.c (set_default_ascii_font): Delete this unused function.
2556
2557 * frame.c (x_set_font): When ARG is a font-object, check if the
2558 font-object matches with the ASCII font-spec of the frame's
9c358bda 2559 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2560
77bf07e1
AS
25612009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2562
2563 * fns.c (Flocale_info): Protect vector from GC during decoding.
2564
2565 * process.c (Fstart_process): Protect argv strings from GC during
2566 encoding.
2567
2c55aacf
AS
25682009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2569
2570 * sysdep.c: Include <ctype.h>.
2571
b892d3c9
DR
25722009-04-27 David Reitter <david.reitter@gmail.com>
2573
35f5b128 2574 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2575 Remove commented-out code.
2576
9d0644c4
JB
25772009-04-26 Johan Bockgård <bojohan@gnu.org>
2578
2579 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2580
b7053016
JR
25812009-04-25 Jason Rumney <jasonr@gnu.org>
2582
2583 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2584
4e8231f3
YM
25852009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2586
2587 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2588 Swap bytes in short integer if fringe bitmap width > 8.
2589
493dcf2c
KH
25902009-04-23 Kenichi Handa <handa@m17n.org>
2591
2592 * xfaces.c (Fx_list_fonts): If a font size is specified in
2593 PATTERN, set it in returned scalable fonts.
2594
401e9e57
CY
25952009-04-22 Chong Yidong <cyd@stupidchicken.com>
2596
708e05dc
CY
2597 * keyboard.c (Fset_input_meta_mode): Doc fix.
2598
2599 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2600
1ac9108a 2601 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2602
2603 * coding.c (Fterminal_coding_system): Doc fix.
2604
2605 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2606 (Fx_display_pixel_height, Fx_display_planes)
2607 (Fx_display_color_cells, Fx_server_max_request_size)
2608 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2609 (Fx_display_mm_height, Fx_display_mm_width)
2610 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2611 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2612 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2613 (check_x_display_info): Handle terminal objects instead of
2614 terminal ids.
2615
401e9e57
CY
2616 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2617 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2618 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2619 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2620
df80c7f0
KH
26212009-04-21 Kenichi Handa <handa@m17n.org>
2622
5a8f12af 2623 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2624 (font_score): Check AVGWIDTH too.
908567ef 2625
df80c7f0
KH
2626 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2627 worst case.
1ac9108a
SM
2628 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2629 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2630
705af33f
JR
26312009-04-19 Jason Rumney <jasonr@gnu.org>
2632
2633 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2634 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2635
2636 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2637 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2638 get_phys_cursor_geometry.
2639
b71ac3dd 2640 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2641 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2642 using get_phys_cursor_geometry.
2643
2644 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2645 correctly calculated.
2646
dc2933eb
JD
26472009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2648
1ac9108a
SM
2649 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2650 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2651 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2652 is deprecated.
2653
973e7849
AS
26542009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2655
2656 * font.c (font_put_frame_data): Use xfree instead of free.
2657
314d66f4
JB
26582009-04-17 Juanma Barranquero <lekktu@gmail.com>
2659
2660 * w32font.c (Qja, Qko): Remove declarations.
2661 (syms_of_w32font): Don't DEFSYM them.
2662
cf702558
CY
26632009-04-17 Chong Yidong <cyd@stupidchicken.com>
2664
2665 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2666
2667 * font.h (Qja, Qko): Extern them.
2668
2669 * ftfont.c (Qja, Qko): Remove declarations.
2670
2671 * xfont.c (Qja, Qko): Remove declarations.
2672
b50504f5
KH
26732009-04-17 Kenichi Handa <handa@m17n.org>
2674
bde25748
KH
2675 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2676 string from a vector to handle Latin-1 characters correctly.
2677
b50504f5
KH
2678 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2679 entity even if the cache hits.
2680
f4646fff
AS
26812009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2682
2683 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2684 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2685
e7deaab0
AS
2686 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2687 * lisp.h: Adjust prototypes.
2688
0a0e7d49
CY
26892009-04-16 Chong Yidong <cyd@stupidchicken.com>
2690
2691 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2692 change (Bug#3003).
2693
3c908a57
KH
26942009-04-16 Kenichi Handa <handa@m17n.org>
2695
1ac9108a 2696 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2697
2698 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2699 adstyle.
2700
2701 * ftfont.c (Qja, Qko): Don't make them static.
2702 (enum ftfont_cache_for): New enum.
2703 (fc_charset_table): Undo the previous change.
2704 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2705 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2706 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2707 non-scarable font, try to get AVERAGE_WIDTH.
2708 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2709 Change ft_face_cache from a list of a hash-table. Don't check
2710 `ja' and `ko' adstyle here.
2711 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2712 FTFONT_CACHE_FOR_CHARET.
2713 (ftfont_get_charset): Undo the previous change.
1ac9108a 2714 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2715 (ftfont_close): Likewise.
2716 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2717
2718 * font.c (font_sort_entites): Change the meaning of the arg
2719 BEST-ONLY. Don't optimize for VEC of lenght 1.
2720 (font_select_entity): Just return the value of font_sort_entites.
2721
2722 * xfaces.c (merge_face_vectors): Reflect font properties in
2723 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2724 font_clear_prop if a face attribute doesn't change.
2725
3c908a57
KH
2726 * charset.h (charset_ksc5601): Extern it.
2727
2728 * charset.c (charset_ksc5601): New variable.
2729 (Fdefine_charset_internal): Set charset_ksc5601.
2730 (init_charset_once): Initialize charset_ksc5601 to -1.
2731
d65859c3
DN
27322009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2733
2734 * fileio.c (history_delete_duplicates): Remove unused declaration.
2735
2736 * callint.c (history_delete_duplicates): New declaration.
2737 (Fcall_interactively): Remove command history duplicates when
2738 history_delete_duplicates is true.
2739
3ba010e5
EZ
27402009-04-14 Eli Zaretskii <eliz@gnu.org>
2741
2742 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2743
06f19b91
KH
27442009-04-14 Kenichi Handa <handa@m17n.org>
2745
2746 * font.c (Ffont_info): Fix docstring. Fix the second element of
2747 the returned value (bug#2949).
2748
2cce8bfc
CY
27492009-04-14 Chong Yidong <cyd@stupidchicken.com>
2750
2751 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2752
d156542d
KH
27532009-04-14 Kenichi Handa <handa@m17n.org>
2754
2755 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2756 encoding charset is ascii_compatible.
2757
2758 * charset.c (Fdefine_charset_internal): Make charset
2759 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2760 code_offset is 0, and covers all ASCII characters.
2761
86fa089e
SM
27622009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2763
2764 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2765 (ns_string_to_pasteboard_internal):
2766 * nsmenu.m (process_dialog):
2767 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2768 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2769 * lisp.h (Fx_load_color_file): Declare.
2770
a8a3728b
KH
27712009-04-13 Kenichi Handa <handa@m17n.org>
2772
1ac9108a 2773 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2774 (font_select_entity): Suppress the code to optimize for the same
2775 kind of fonts.
2776 (font_load_for_lface): Get a font that supports at least ASCII
2777 characters.
2778
2779 * ftfont.c (Qja, Qko): New variables.
2780 (fc_charset_table): Delete uniquifier data for iso8859-1.
2781 (ftfont_get_latin1_charset): New function.
2782 (get_adstyle_property): New function.
2783 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2784 bitmap fonts.
2785 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2786 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2787 `ko' or `ja'.
2788 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2789 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2790 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2791 property.
2792 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2793 (syms_of_ftfont): DEFSYM Qja and Qko.
2794
483670b5
KH
27952009-04-09 Kenichi Handa <handa@m17n.org>
2796
12b55765
KH
2797 * charset.c (map_charset_chars): For a charset of `superset'
2798 method, fix calculation of code range.
2799
483670b5
KH
2800 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2801 from the list of extra properties.
2802 (font_clear_prop): Be sure to delete `:name' font property.
2803
57d3b93b
KH
28042009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2805
b4b2c2ca
YM
2806 * dispnew.c (redraw_overlapping_rows): Fix detection of
2807 overlapping for topmost and bottommost rows.
2808
1ac9108a 2809 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2810
472c3609
JR
28112009-04-06 Jason Rumney <jasonr@gnu.org>
2812
2813 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2814
ab193662
KH
28152009-04-06 Kenichi Handa <handa@m17n.org>
2816
2817 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2818
2819 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2820
0c26f026
KH
28212009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2822
2823 * ftfont.c (ftfont_open): Fix checking of the return value of
2824 FT_Load_Char. Fix setting font->underline_thickness.
2825
e173bbce
CY
28262009-04-04 Chong Yidong <cyd@stupidchicken.com>
2827
2828 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2829 (Fterminal_parameters, Fterminal_parameter)
2830 (Fset_terminal_parameter): In doc string, refer to terminal
2831 objects rather than terminal ids.
2832
693a2698
EZ
28332009-04-04 Eli Zaretskii <eliz@gnu.org>
2834
2835 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2836 ret_lim_data. (Bug#2867)
2837
d5221487
CY
28382009-04-03 Chong Yidong <cyd@stupidchicken.com>
2839
2840 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2841 so they don't get wider than the window, matching 2006-01-23
2842 change to the partner function in xdisp.c (Bug#2800).
2843
223509a3
KH
28442009-04-03 Kenichi Handa <handa@m17n.org>
2845
2846 * print.c (print_object): Make each lowest sub_char_table start a
2847 new line (Bug#2866).
2848
74fcd0b1
KH
28492009-04-02 Kenichi Handa <handa@m17n.org>
2850
2851 * fontset.c (fontset_font): Record no-font when a fontset
2852 explicitly tells not to try another font-specs.
2853
c542407d
SM
28542009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2855
2856 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2857
e3869731
KH
28582009-03-30 Kenichi Handa <handa@m17n.org>
2859
d8d2f142
KH
2860 * fontset.c (fontset_from_font): Specify only registry in a
2861 font-spec for all characters supported by that registry.
2862
e3869731
KH
2863 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2864 even if HAVE_M17N_FLT is not defined.
2865
5da5f805
CY
28662009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2867
2868 * ftfont.c: Conditionalize prototyping and use of
2869 ftfont_variation_glyphs.
2870
ab226c50
SM
28712009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2872
9628fed7
SM
2873 * frame.c (delete_frame): Work around compiler bug.
2874
2875 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2876 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2877 Some more EMACS_INT.
2878 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2879
2880 * xdisp.c (dump_glyph): Fix typo.
2881
ae19ba7c
SM
2882 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2883 (adjust_markers_gap_motion, adjust_markers_for_delete)
2884 (adjust_markers_for_insert, adjust_point)
2885 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2886 (make_gap, copy_text, count_size_as_multibyte, insert)
2887 (insert_and_inherit, insert_before_markers)
2888 (insert_before_markers_and_inherit, insert_1)
2889 (count_combining_before, count_combining_after, insert_1_both)
2890 (insert_from_string, insert_from_string_before_markers)
2891 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2892 (insert_from_buffer_1, adjust_after_replace)
2893 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2894 (replace_range_2, del_range, del_range_1, del_range_byte)
2895 (del_range_both, del_range_2, modify_region)
2896 (prepare_to_modify_buffer, signal_before_change)
2897 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2898 for buffer positions and sizes.
2899 * lisp.h: Adjust prototypes accordingly.
2900
2901 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2902 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2903 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2904
ab226c50
SM
2905 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2906
46dfb8fb
JD
29072009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2908
2909 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2910 lines and columns so we keep the same pixel height and width.
2911
2912 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2913 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2914 (x_handle_net_wm_state): New function to update frame parameter
2915 fullscreen.
2916 (x_term_init): Initialize atoms for _NET_WM_STATE.
2917
2918 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2919
d347e494
SM
29202009-03-27 Kevin Ryde <user42@zip.com.au>
2921
2922 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2923 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2924 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2925 (Fgpm_mouse_stop): Pass that new parameter.
2926 * termhooks.h (close_gpm): Adjust prototype.
2927
84db11d6
SM
29282009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2929
c95a5008
SM
2930 * lisp.h (Fx_focus_frame): Declare.
2931
84db11d6
SM
2932 * callint.c (Fcall_interactively): For '^' just delegate the work to
2933 handle-shift-selection.
2934 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2935
0a1958d6
CY
29362009-03-24 Chong Yidong <cyd@stupidchicken.com>
2937
0bfdff23
CY
2938 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2939
0a1958d6
CY
2940 * data.c (Qinteractive_form): New variable.
2941 (Finteractive_form): Use it.
2942
2943 * eval.c (Fcommandp): Use Qinteractive_form.
2944
58aec0d6
JR
29452009-03-24 Jason Rumney <jasonr@gnu.org>
2946
2947 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2948 Calculate total size precisely. Decode environment variables
2949 before substituting. (Bug#38)
2950
553dd618
KH
29512009-03-24 Kenichi Handa <handa@m17n.org>
2952
2953 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2954 encoding (Bug#2722).
553dd618 2955
c39ea606
JD
29562009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2957
2958 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2959 that gdpy is set.
2960
bc9b2b5e
AM
29612009-03-22 Alan Mackenzie <acm@muc.de>
2962
2963 * callint.c (Finteractive): Clarify the doc string - even
2964 promptless elements need \n separators.
2965
9f995a76
JR
29662009-03-22 Jason Rumney <jasonr@gnu.org>
2967
2968 * w32term.c (syms_of_w32term): Doc fix for
2969 x-use-underline-position-properties.
2970
22749e9a
EZ
29712009-03-21 Eli Zaretskii <eliz@gnu.org>
2972
2973 * w32.c (getpwuid): Change argument type to unsigned.
2974 (struct w32_id): Change type of `rid' member to unsigned.
2975 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2976 argument ID to unsigned. All callers changed.
2977 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2978
e00553bf
EZ
29792009-03-20 Eli Zaretskii <eliz@gnu.org>
2980
2981 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2982 negative, produce a float value.
2983
2984 * dired.c (make_uid, make_gid): New functions.
2985 (Ffile_attributes): Use them to avoid negative UID and GID.
2986
f761d6b6
JB
29872009-03-20 Juanma Barranquero <lekktu@gmail.com>
2988
2989 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2990 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2991 Fix typos in docstrings.
2992
d507f8d7
KH
29932009-03-19 Kenichi Handa <handa@m17n.org>
2994
2995 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2996 changed, use font_load_for_lface to get a new font object.
2997 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2998
2999 * frame.c (x_set_font): Handle the case that ARG is a cons.
3000
c68845e0
GM
30012009-03-19 Glenn Morris <rgm@gnu.org>
3002
3003 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3004
bfa49dd1
CY
30052009-03-19 Chong Yidong <cyd@stupidchicken.com>
3006
3007 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3008
8458d4c1
KH
30092009-03-19 Kenichi Handa <handa@m17n.org>
3010
3011 * charset.c (load_charset_map_from_file): When a mapfile can't be
3012 loaded, signal an error.
3013
78e7d1fe
EZ
30142009-03-18 Eli Zaretskii <eliz@gnu.org>
3015
3016 * dired.c (Ffile_attributes): Make sure UID and GID are always
3017 positive, even if the value is too large for a positive EMACS_INT.
3018 Doc fix.
3019
3020 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3021
5da9fdfa
YM
30222009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3023
3024 * xmenu.c (xdialog_show): Move Fredisplay call ...
3025 (Fx_popup_dialog): ... here.
3026
7519c40d
SM
30272009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3028
3029 * dired.c (file_name_completion): Disable the first optimization just
3030 installed, since it is not implemented correctly.
3031
2cd298e2
SM
30322009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3033
3034 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3035 only if the entry can affect bestmatch.
2cd298e2
SM
3036 Stop the search early, as Ftry_completion already does.
3037
48d37adf
CY
30382009-03-17 Chong Yidong <cyd@stupidchicken.com>
3039
e10c9c93 3040 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3041
9286b16a
CY
30422009-03-15 Chong Yidong <cyd@stupidchicken.com>
3043
3044 * keyboard.c (parse_menu_item): Don't display remappings as menu
3045 equivalent bindings (Bug#788).
3046
f7b146dc
JR
30472009-03-15 Jason Rumney <jasonr@gnu.org>
3048
3049 * w32term.h (WM_EMACS_PAINT): New message.
3050 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3051 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3052 before passing to lisp thread. (Bug#950)
3053
f761d6b6 30542009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3055
d93f9575
CY
3056 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3057 variable as it was never reset.
3058 (ns_term_init): Remove initialization of Lisp-settable defaults
3059 and ns_expand_space.
3060 (-setPanelFromDefaultValues): Remove ns_expand_space.
3061 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3062 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3063 i.e. no additional spacing, similar to Carbon port.
3064
d93f9575
CY
3065 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3066 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3067
305018ec
JD
30682009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3069
3070 * sound.c (alsa_configure): Remove call to deprecated
3071 snd_pcm_sw_params_set_xfer_align.
3072
f761d6b6 30732009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3074
3075 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3076 after clicking in a detached tool bar.
3077 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3078
46e722a9
SM
30792009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3080
348db3dd
SM
3081 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3082 int/Lisp_Object mixup).
46e722a9 3083
a3d16f39
KH
30842009-03-13 Kenichi Handa <handa@m17n.org>
3085
3086 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3087 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3088 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3089 (set_fontset_font): Change ARG to a vector. Handle range_list in
3090 ARG correctly.
3091 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3092 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3093 the above change.
3094 (fontset_from_font): Fix previous change.
fe24f56a 3095 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3096 entry. If FONTSET is the default fontset, don't set the extra
3097 slot of the returning char-table.
3098
b066e6b6
JB
30992009-03-12 Juanma Barranquero <lekktu@gmail.com>
3100
3101 * nsfns.m (Fx_close_connection): Doc fix.
3102 (Fns_do_applescript): Reflow docstring.
3103 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3104 (Fx_display_pixel_width, Fx_display_pixel_height)
3105 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3106 Fix typos in docstrings.
3107 (Fns_set_alpha): Fix typos in error messages.
3108
d472514e 31092009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3110
d472514e 3111 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3112 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3113 were used for such events.
3114
d472514e
JB
3115 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3116 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3117
d472514e 3118 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3119 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3120
fb930676
KH
31212009-03-11 Kenichi Handa <handa@m17n.org>
3122
ff85581a
KH
3123 * font.h (font_open_by_spec): Extern it.
3124
c50b7e98
KH
3125 * font.c (font_open_by_spec): New function.
3126 (font_open_by_name): Use font_open_by_spec.
3127
fb930676
KH
3128 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3129 fontset of the frame.
3130
3131 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3132 modify the default font of frames that use this fontset.
3133 (num_auto_fontsets): New variable.
3134 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3135 name. Be sure to set FONTSET_ASCII to the correct font name.
3136 (update_auto_fontset_alist): New function.
3137
df4e8455
JB
31382009-03-11 Juanma Barranquero <lekktu@gmail.com>
3139
3140 * makefile.w32-in: Update dependencies.
3141
0a375797
AR
31422009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3143
3144 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3145
61313fa3
SM
31462009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3147
3148 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3149
b55103fb
CY
31502009-03-10 Chong Yidong <cyd@stupidchicken.com>
3151
3152 * lread.c (Feval_buffer): Doc fix.
3153
dde2559c
KH
31542009-03-09 Kenichi Handa <handa@m17n.org>
3155
3156 * charset.c (Qfile_name_handler_alist): Extern it.
3157 (load_charset_map_from_file): Temporarily bind
3158 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3159
df4e8455 31602009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3161
47f588bb
GM
3162 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3163 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3164
4ddf94bd
AR
31652009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3166
4c9bdfc2
AR
3167 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3168 (x_set_window_size): Change back to calculated method of setting
3169 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3170 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3171 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3172
fe41ae9e
AR
3173 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3174
4c9bdfc2
AR
3175 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3176 accelerator in parens under GNUstep.
3177
825d0875
KH
31782009-03-06 Kenichi Handa <handa@m17n.org>
3179
3180 These changes are to detect incorrect composition sequence without
f3b3be74 3181 looking ahead the source. (Bug#2370)
825d0875
KH
3182
3183 * coding.h: Include "composite.h".
3184 (enum compisition_state): New enum.
3185 (struct compisition_status): New struct.
3186 (struct iso_2022_spec): New member cmp_status.
3187 (struct emacs_mule_spec): New struct.
3188 (struct coding_system): New members ctext_extended_segment_len and
3189 embedded_utf_8. Change the union member
3190 spec.emacs_mule_full_support to spec.emacs_mule.
3191
3192 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3193 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3194 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3195 (ADD_COMPOSITION_DATA): New arg nbytes.
3196 (emacs_mule_char): New arg cmp_status.
3197 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3198 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3199 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3200 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3201 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3202 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3203 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3204 (EMACS_MULE_COMPOSITION_END): New macro.
3205 (emacs_mule_finish_composition): New function.
3206 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3207 (decode_coding_emacs_mule): Avoid long looking ahead while
3208 handling composition.
3209 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3210 (ENCODE_COMPOSITION_RULE): New macro.
3211 (finish_composition): New function.
3212 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3213 (DECODE_COMPOSITION_START): New implementation.
3214 (DECODE_COMPOSITION_END): Likewise.
3215 (STORE_COMPOSITION_RULE): New macro.
3216 (decode_coding_iso_2022): Avoid long looking ahead while handling
3217 composition, CTEXT extended segment, and embedded UTF-8.
3218 (setup_coding_system): For a coding of type iso-2022, reset
3219 CODING_ISO_EXTSEGMENT_LEN (coding) and
3220 CODING_ISO_EMBEDDED_UTF_8 (coding).
3221 (get_translation): Delete arguments last_block, from_nchars,
3222 to_nchars. Callers changed.
3223 (produce_chars): Don't modify charbuf. Adjusted for the change of
3224 get_translation.
98a326f7 3225 (produce_composition): Adjust for the new annotation sequence.
825d0875 3226 (handle_composition_annotation): Likewise.
98a326f7 3227 (consume_chars): Adjust for the change of get_translation.
825d0875 3228
ccbc4452
AR
32292009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3230
4ddf94bd 3231 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3232
988a7ddb
KH
32332009-03-05 Kenichi Handa <handa@m17n.org>
3234
3235 * font.c (font_select_entity): New function.
3236 (font_find_for_lface): Use font_select_entity to select a font.
3237
3238 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3239 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3240 font with C restriction.
3241
98a326f7 32422009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3243
be1bce46 3244 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3245
10ea2b82
JR
32462009-03-04 Jason Rumney <jasonr@gnu.org>
3247
2c93b248 3248 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3249 characters that have already been read. (Bug#2569)
2c93b248 3250
10ea2b82
JR
3251 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3252 Log an error message if check_image_size failed.
3253 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3254 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3255
71a0c011
EZ
32562009-03-02 Eli Zaretskii <eliz@gnu.org>
3257
3258 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3259 when decoding process output.
3260
2f63bba8
RS
32612009-03-01 Richard M Stallman <rms@gnu.org>
3262
3263 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3264
3265 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3266
0a9564cb
EZ
32672009-02-28 Eli Zaretskii <eliz@gnu.org>
3268
3269 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3270 (decode_coding_emacs_mule, decode_coding_iso_2022)
3271 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3272 (decode_coding_raw_text, decode_coding_charset)
3273 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3274 Honor inhibit-eol-conversion. (Bug #2186)
3275
449148b3
JR
32762009-02-28 Jason Rumney <jasonr@gnu.org>
3277
3278 * coding.c (detect_coding_charset): If not checking latin extra,
3279 fail on characters between 0x80 and 0xA0. (Bug#2354)
3280
a4aee864
EZ
32812009-02-28 Eli Zaretskii <eliz@gnu.org>
3282
3283 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3284 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3285
d88bee5a
GM
32862009-02-27 Glenn Morris <rgm@gnu.org>
3287
3288 * callint.c (Finteractive): Doc fix.
3289
a808f22d
KH
32902009-02-27 Kenichi Handa <handa@m17n.org>
3291
3292 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3293
caf8d60c
CY
32942009-02-27 Chong Yidong <cyd@stupidchicken.com>
3295
3296 * font.c (font_style_to_value): Set value for unknown symbols to
3297 100 instead of 255.
b61137ea
CY
3298 (weight_table, slant_table, width_table): Treat "unspecified" as
3299 the default value.
caf8d60c 3300
1a0de25c
JB
33012009-02-26 Juanma Barranquero <lekktu@gmail.com>
3302
3303 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3304
8fc45744
JB
33052009-02-25 Juanma Barranquero <lekktu@gmail.com>
3306
107bd7d1
JB
3307 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3308 error as soon as a recursive load is detected.
8fc45744 3309
f097e223
AR
33102009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3311
3312 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3313 before caching.
3314
8810a12f
KH
33152009-02-24 Kenichi Handa <handa@m17n.org>
3316
3317 * fontset.c (fontset_find_font): Fix the condition for checking
3318 unavailable font.
3319
2c7d1565
GM
33202009-02-24 Glenn Morris <rgm@gnu.org>
3321
3322 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3323 whitespace that confuses documentation.
3324
a20878b6
MB
33252009-02-23 Miles Bader <miles@gnu.org>
3326
3327 * process.c (Flist_system_processes, Fprocess_attributes)
3328 (syms_of_process): Rename `system-process-attributes' to
3329 `process-attributes'.
3330
b3b58c01
AS
33312009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3332
1b3b981b
AS
3333 * coding.h (struct coding_system): Make safe_charsets a pointer to
3334 unsigned char.
3335 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3336 being 255.
3337 (SAFE_CHARSET_P): Likewise.
3338 (setup_iso_safe_charsets): Properly setup safe_charsets.
3339 (Fdefine_coding_system_internal): Likewise.
3340 (setup_coding_system): Likewise. Remove unneeded casts.
3341 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3342 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3343 unneeded casts.
3344
b3b58c01
AS
3345 * insdel.c (del_range_2): Don't modify gap contents when called
3346 from decode_coding_object. (Bug#1809)
3347
0b6f228c
CY
33482009-02-21 Chong Yidong <cyd@stupidchicken.com>
3349
3350 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3351 Qfont_object.
3352 (Ftype_of): Recognize font objects.
3353
3354 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3355
3356 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3357 moved to data.c.
3358
52f8870b
AR
33592009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3360
3361 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3362 async_iconified. Based on a patch by Christian Lynbech
3363 <christian.lynbech@tieto.com>.
3364 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3365
7087d5e9
GM
33662009-02-20 Glenn Morris <rgm@gnu.org>
3367
3368 * syntax.c (Fskip_chars_forward): Fix doc typo.
3369
41d2ceef
CY
33702009-02-20 Chong Yidong <cyd@stupidchicken.com>
3371
3372 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3373
1a3b7ca6
CY
33742009-02-19 Chong Yidong <cyd@stupidchicken.com>
3375
3376 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3377
73cce38d
KH
33782009-02-19 Kenichi Handa <handa@m17n.org>
3379
3380 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3381 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3382
a51092ee
DN
33832009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3384
3385 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3386
c423ecca
KH
33872009-02-18 Kenichi Handa <handa@m17n.org>
3388
3389 * font.c (font_check_otf_features): Fix handling of `nil' element.
3390 (Ffont_spec): Describe :lang and :otf in the docstring.
3391
4c1958f4
AS
33922009-02-16 Andreas Schwab <schwab@suse.de>
3393
3394 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3395 string.
3396
5704f39a
KH
33972009-02-16 Kenichi Handa <handa@m17n.org>
3398
3399 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3400 (Bug#1723)
5704f39a 3401
8f0085aa
CY
34022009-02-14 Chong Yidong <cyd@stupidchicken.com>
3403
a057d86a 3404 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3405
3406 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3407 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3408
aff01dd9
EZ
34092009-02-14 Eli Zaretskii <eliz@gnu.org>
3410
3411 * msdos.c (MAX_SCREEN_BUF): New macro.
3412 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3413 Encode the entire run of glyphs sharing the same face, instead of
3414 doing that one glyph at a time (fixes a bug with displaying
3415 double-size characters).
3416
ba301db3
AR
34172009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3418
3419 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3420
3421 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3422 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3423 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3424
3425 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3426 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3427
51d861de
SM
34282009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3429
3430 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3431 invisible areas.
3432
7fed8996
JR
34332009-02-12 Jason Rumney <jasonr@gnu.org>
3434
631ea4fb
JR
3435 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3436 (add_font_entity_to_list): Call check_face_name even when family
3437 is unspecified.
3438
cb4a3e42
JR
3439 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3440 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3441 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3442
7fed8996 3443 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3444 raster fonts. (Bug#2219)
7fed8996 3445
895416e3
KH
34462009-02-12 Kenichi Handa <handa@m17n.org>
3447
3448 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3449 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3450 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3451 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3452 (find_automatic_composition): While looking forward and backward,
3453 check static composition. Fix where to stop looking forward.
3454 (composition_adjust_point): Fix checking of static composition.
3455 (Fcomposition_get_gstring): Pay attention to
1dacf998 3456 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3457
3458 * lisp.h (fast_looking_at): Extern it.
3459
3460 * search.c (fast_looking_at): New function.
3461
51d861de 3462 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3463 <struct glyph>.u.cmp.to.
3464 (append_composite_glyph): Likewise.
3465
51d861de 3466 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3467 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3468 composition.
51d861de 3469 (append_composite_glyph): Adjust for the change of
895416e3
KH
3470 <strcut glyph>.u.cmp.to.
3471
8510724d
JB
34722009-02-11 Juanma Barranquero <lekktu@gmail.com>
3473
3474 * casetab.c (init_casetab_once):
3475 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3476 * font.c (font_update_lface):
3477 * fontset.c (Fnew_fontset):
3478 * ftfont.c (ftfont_drive_otf):
3479 * xfont.c (xfont_open):
3480 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3481
294fa707
SM
34822009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3483
3484 * fileio.c (Fwrite_region): !NILP -> CONSP.
3485
b5bfebec
AS
34862009-02-10 Andreas Schwab <schwab@suse.de>
3487
3488 * process.c (send_process): Properly relocate pointer into data
adab88bd 3489 when using encoded data. (Bug#2272)
b5bfebec 3490
cb84a2be
KH
34912009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3492
3493 * coding.c (detect_coding_charset): Fix previous change.
3494
89e09428
JR
34952009-02-08 Jason Rumney <jasonr@gnu.org>
3496
3497 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3498 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3499
4470a277
AS
35002009-02-07 Andreas Schwab <schwab@suse.de>
3501
3502 * unexelf.c (unexec): Fix error message.
3503
3175b12a
AR
35042009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3505
3506 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3507 when modal window is active. (Bug #2152)
3175b12a
AR
3508 (applicationShouldTerminate:): Remove now-unneeded while loop
3509 around NSRunAlertPanel.
3510
3511 * nsmenu.m (popupSession): New file-global variable.
3512 (pop_down_menu): End the popupSession before closing dialog.
3513 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3514 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3515 don't query NSApp for events (just sleep instead).
3516
8434d0b8
EZ
35172009-02-07 Eli Zaretskii <eliz@gnu.org>
3518
51d861de
SM
3519 * coding.c (syms_of_coding) <translation-table-for-input>:
3520 Modify doc string to discourage use for character code unification.
8434d0b8 3521
aa82edfd
CY
35222009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3523
3524 * atimer.c (run_timers): Update pending_atimers.
3525
2d283c7c
CY
35262009-02-06 Chong Yidong <cyd@stupidchicken.com>
3527
eb306cab
CY
3528 * image.c (svg_load_image): Fix last change.
3529
2d283c7c
CY
3530 * xfns.c (Fx_create_frame): Signal an error if no font is
3531 found (Bug#2147).
3532
4d8e170e
JB
35332009-02-05 Juanma Barranquero <lekktu@gmail.com>
3534
3535 * character.c (syms_of_character) <script-representative-chars>:
3536 Fix typo in docstring.
3537
c96169a0
AR
35382009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3539
3540 * nsmenu.m (pop_down_menu): New function.
3541 (ns_popup_dialog): Call it on unwind.
3542 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3543 call timer_check() (Bug#2154).
3544 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3545 handling_signal is set.
3546 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3547
31fd7c5c 3548 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3549
3550 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3551
3552 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3553
51d861de
SM
3554 * keyboard.c (poll_for_input_1, handle_async_input):
3555 Set handling_signal under HAVE_NS.
c96169a0 3556
aacd8ba1
GM
35572009-02-04 Glenn Morris <rgm@gnu.org>
3558
3559 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3560
4cb75c4b
KH
35612009-02-04 Kenichi Handa <handa@m17n.org>
3562
3563 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3564
3565 * charset.c (Fchar_charset): New optional arg restriction.
3566
3567 * coding.h (coding_system_charset_list): Extern it.
3568
3569 * coding.c (coding_system_charset_list): New function.
3570
3571 * composite.c: Include coding.h and termhooks.h.
3572 (composition_gstring_p): Fix for the terminal case.
3573 (composition_gstring_width): Likewise.
3574 (fill_gstring_body): Likewise.
3575 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3576 the frame.
3577 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3578 is within a composition.
867d4bb3 3579 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3580
3581 * term.c (encode_terminal_code): Fix handling of composition.
3582 (produce_composite_glyph): For static composition, get pixel_width
3583 from struct composition.
3584
826ba17e
AS
35852009-02-02 Andreas Schwab <schwab@suse.de>
3586
3587 * unexelf.c (unexec): Handle unaligned bss offset.
3588
8ad093db
AR
35892009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3590
3591 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3592 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3593
8ad093db
AR
3594 * keyboard.c (handle_interrupt): Don't call
3595 quit_throw_to_read_char() under NS.
d0a76a6e 3596
8ad093db
AR
3597 * blockinput.h: Remove NS-specific code.
3598
4d18a7a2
DN
35992009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3600
db878925
DN
3601 * dispnew.c (window_change_signal): Don't try to get the size of a
3602 suspended tty frame.
3603 * term.c (Fresume_tty): Resize if the size has changed while the
3604 tty was suspended.
3605
4d18a7a2
DN
3606 * alloc.c (mark_stack): Properly conditionalize previous change.
3607
8984df7c
JB
36082009-01-30 Juanma Barranquero <lekktu@gmail.com>
3609
3610 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3611 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3612 Remove; this code is not used on Windows.
3613
75f4f1ac
EZ
36142009-01-30 Eli Zaretskii <eliz@gnu.org>
3615
3616 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3617 EOLs that also has stray ^M characters.
3618
07a1e794
JB
36192009-01-30 Juanma Barranquero <lekktu@gmail.com>
3620
3621 * atimer.c (run_timers, alarm_signal_handler):
3622 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3623 * w32inevt.c (w32_console_read_socket):
3624 * w32term.c (w32_read_socket):
3625 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3626
a8b11cc9
CY
36272009-01-30 Chong Yidong <cyd@stupidchicken.com>
3628
3629 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3630 Initialize it as a relative filename pattern.
3631 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3632 (Fcall_process_region): Simplify temp file creation using
3633 temporary-file-directory.
3634
c279587b
EZ
36352009-01-29 Eli Zaretskii <eliz@gnu.org>
3636
3637 * msdos.c: Rename pending_signals to msdos_pending_signals.
3638 (sig_suspender, sigprocmask): Adjust.
3639
a8fe3242
CY
36402009-01-29 Chong Yidong <cyd@stupidchicken.com>
3641
3642 * keyboard.c (pending_signals): New var.
3643 (poll_for_input, input_available_signal, init_keyboard): Set it.
3644 (process_pending_signals): New function.
3645
3646 * lisp.h (QUIT): Check pending_signals instead of
3647 interrupt_input_pending. Use process_pending_signals.
3648
51d861de 3649 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3650
51d861de 3651 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3652
3653 * sysdep.c (emacs_write): Use process_pending_signals.
3654
3655 * xterm.c (XTread_socket): Update pending_signals.
3656
3657 * w32term.c (w32_read_socket): Update pending_signals.
3658
3659 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3660
6570a1c4
KH
36612009-01-29 Kenichi Handa <handa@m17n.org>
3662
3663 * xftfont.c (xftfont_has_char): New function.
3664 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3665
d72a4afa
AR
36662009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3667
3668 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3669 under GNUstep.
3670 (ns_query_color): New declaration.
3671
3672 * nsterm.m (ns_confirm_quit): New variable.
3673 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3674 (EmacsApp-applicationShouldTerminate:): Use it.
3675 (EmacsPrefsController): Let user set it.
3676 (ns_query_color): New function.
3677 (ns_defined_color): Use it.
3678 (ns_initialize): Drop.
3679 (ns_term_init): Add two lines from ns_initialize(), and set
3680 input_interrupt_mode to nil.
3681
3682 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3683 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3684
9fe78804
KH
36852009-01-28 Kenichi Handa <handa@m17n.org>
3686
3687 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3688 (fontset_get_font_group): Remember that no font-group is specified
3689 for C.
9fe78804 3690
fa57de36
CY
36912009-01-27 Chong Yidong <cyd@stupidchicken.com>
3692
930600e9
CY
3693 * fns.c (concat): Check for string overflow (bug#1787).
3694
fa57de36
CY
3695 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3696 Quadruple undo limits (bug#1501).
3697
7179ce7b
KH
36982009-01-27 Kenichi Handa <handa@m17n.org>
3699
3700 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3701 directly use GT_Get_Char_index.
3702
3703 * xftfont.c (struct xftfont_info): New member `index'.
3704
3705 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3706 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3707
5be8fcc0
CY
37082009-01-26 Kenichi Handa <handa@m17n.org>
3709
3710 * fontset.c (fontset_find_font): Fix handling of non-cons return
3711 value of fontset_get_font_group.
3712 (fontset_font): Revert last change.
3713
19ae3e61
JR
37142009-01-26 Jason Rumney <jasonr@gnu.org>
3715
3716 * w32font.c (w32font_list_internal): Return quickly if registry is
3717 unknown. Simplify final return.
3718 (add_font_entity_to_list): Break complex logic down into more
3719 manageable chunks. Move unknown registry check to
3720 w32font_list_internal.
3721
8612b71a
AR
37222009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3723
3724 Changes to remove Feval calls from GUI under NS.
3725
d8038940
JB
3726 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3727 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3728 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3729
3730 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3731 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3732 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3733 instead of NON_ASCII_KEYSTROKE_EVENT.
3734 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3735 (EmacsApp-applicationShouldTerminate:): Query user.
3736 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3737 instead of Feval.
3738
3739 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3740
3741 * keyboard.c (kbd_buffer_get_event): Check for it.
3742 (keys_of_keyboard): Define lispy keys for
3743 ns-put/unput-working-text.
3744
3745 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3746 versions.
3747 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3748
6288ae55
CY
37492009-01-25 Chong Yidong <cyd@stupidchicken.com>
3750
3751 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3752 setting current_buffer directly. (Bug#2044)
6288ae55 3753
289e7f8f
CY
37542009-01-24 Chong Yidong <cyd@stupidchicken.com>
3755
5ce87308 3756 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3757 any work. (Bug#1952, bug#1990).
5ce87308 3758
64cc3cf6 3759 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3760
b3243e6f
AR
37612009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3762
3763 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3764 (ns_no_defaults): New declaration.
3765 (main): Use it.
e0d2e69a 3766
d900b2af 3767 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3768
d900b2af 3769 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3770
d900b2af
AR
3771 * nsterm.m (ns_no_defaults): New variable.
3772 (ns_initialize): Don't read defaults when ns_no_defaults.
3773 (EmacsView-readSelectionFromPasteboard:)
3774 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3775 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3776 (ns_dumpglyphs_stretch): New function.
3777 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3778 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3779
e0d2e69a
AR
3780 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3781
3ac71f5d
CY
37822009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3783
3784 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3785 call for Sparc64.
3786
3fe53a83
AR
37872009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3788
3789 * nsfns.m:
3790 * nsgui.h:
3791 * nsmenu.m:
3792 * nsselect.m:
3793 * nsterm.h:
3794 * nsterm.m: Remove '23' comments that indicated code added during
3795 update from emacs-20 -> emacs-23.
3796
10f87c6f 37972009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3798
3799 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3800 ns_alternate_modifier. (Bug#1217)
a3b53a85 3801
c7cef62d
AR
3802 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3803 Display all shortcuts, including those w/o super modifier.
3804
575fb8bd
AR
3805 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3806
918b848b
CY
38072009-01-22 Chong Yidong <cyd@stupidchicken.com>
3808
3809 * fileio.c (Vwrite_region_post_annotation_function)
3810 (Vwrite_region_annotation_buffers): New vars.
3811 (build_annotations_unwind): Just reset
3812 Vwrite_region_annotation_buffers.
3813 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3814 Call write-region-post-annotation-function.
3815 (build_annotations): Add to Vwrite_region_annotation_buffers if
3816 buffer changes.
3817
a39e2539
AR
38182009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3819
3820 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3821 Tiger.
51d861de
SM
3822 * nsfns.m (ns_do_applescript):
3823 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3824
35ed44db
AR
38252009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3826
3827 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3828
cbe0b5bf
AR
38292009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3830
3831 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3832
6049d3a0
AR
3833 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3834
3835 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3836 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3837 handle Ctrl-tab. (Bug#1841)
3838 (ns_get_color): Use unsigned long long for scanned hex string value.
3839 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3840 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3841 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3842 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3843 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3844 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3845 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3846
d3810c21 3847 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3848 DPI. (Bug#1316)
d3810c21
AR
3849 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3850 values in onTiger section.
4c7077c3 3851
e301e634
CY
38522009-01-19 Chong Yidong <cyd@stupidchicken.com>
3853
7f82490b
CY
3854 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3855 Check return value of font_spec_from_name.
64cc3cf6 3856 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3857
3858 * font.c (font_spec_from_name): Return Qnil if font name could not
3859 be parsed.
3860 (font_parse_name): Treat a `?' character as part of an XLFD.
3861
e301e634
CY
3862 * fns.c (Fsubstring): Doc fix.
3863
1c0db158
KH
38642009-01-19 Kenichi Handa <handa@m17n.org>
3865
51d861de 3866 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3867 (ftfont_list): Likewise.
3868
acf20901
JB
38692009-01-18 Juanma Barranquero <lekktu@gmail.com>
3870
fff4e459
JB
3871 * dbusbind.c (Fdbus_register_signal):
3872 * process.c (conv_sockaddr_to_lisp):
3873 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3874
acf20901
JB
3875 * callproc.c (Fgetenv_internal): Doc fix.
3876
e7abcdfb
CY
38772009-01-16 Chong Yidong <cyd@stupidchicken.com>
3878
3879 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3880 it is not even used.
3881
b60861e6
GM
38822009-01-16 Glenn Morris <rgm@gnu.org>
3883
3884 * font.c (Ffont_variation_glyphs): Silence compiler.
3885
8db52afe
JB
38862009-01-15 Juanma Barranquero <lekktu@gmail.com>
3887
3888 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3889 Reported by David Robinow <drobinow@gmail.com>.
3890
4cddb209
KH
38912009-01-15 Kenichi Handa <handa@m17n.org>
3892
51d861de 3893 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3894
f247f67b
JR
38952009-01-14 Jason Rumney <jasonr@gnu.org>
3896
3897 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3898 never a fontset. (Bug#1562)
f247f67b 3899
f56a4450
KH
39002009-01-14 Kenichi Handa <handa@m17n.org>
3901
3902 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3903 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3904
4e99855e
CY
39052009-01-13 Chong Yidong <cyd@stupidchicken.com>
3906
3907 * font.c (font_clear_prop): If clearing the family, clear the font
3908 width index too.
3909
fff4e459 3910 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3911
24f01470
JB
39122009-01-12 Juanma Barranquero <lekktu@gmail.com>
3913
3914 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3915 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3916 functions, use sizeof.
3917
a41240a3
MR
39182009-01-12 Martin Rudalics <rudalics@gmx.at>
3919
3920 * keyboard.c (read_char): Fix case where last_nonmenu_event
3921 returned a bad value with submenus. (Bug#447)
3922
944636b8
CY
39232009-01-12 Chong Yidong <cyd@stupidchicken.com>
3924
3925 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3926 family, clear the font width index too.
3927
0dad7c6f
JR
39282009-01-11 Jason Rumney <jasonr@gnu.org>
3929
3930 * keyboard.c (cmd_error_internal): Exit when errors occur before
3931 frame creation and not in daemon mode. (Bug#1836)
3932
7c2363af
CY
39332009-01-10 Chong Yidong <cyd@stupidchicken.com>
3934
3935 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3936 of a display vector, backtrack.
3937 (try_window_reusing_current_matrix): Check glyph type before
3938 referencing charpos member.
3939
97b1b294
EZ
39402009-01-10 Eli Zaretskii <eliz@gnu.org>
3941
3942 Fix Bug #876:
3943
3944 * coding.c (inhibit_null_byte_detection): New variable.
3945 (detect_coding, detect_coding_system): Don't pay attention to null
3946 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3947 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3948 <inhibit-iso-escape-detection>: Doc fix.
3949
4624b6e3
JR
39502009-01-09 Jason Rumney <jasonr@gnu.org>
3951
3952 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3953 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3954 Only report Unicode Plane 2 fonts as unicode-sip.
3955
323b840c
CY
39562009-01-09 Chong Yidong <cyd@stupidchicken.com>
3957
51d861de
SM
3958 * xfaces.c (Fx_font_family_list): Delete function.
3959 Move compatibility version to faces.el.
323b840c 3960
51d861de 3961 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3962
eba7400d
MR
39632009-01-09 Martin Rudalics <rudalics@gmx.at>
3964
3965 * frame.c (x_set_frame_parameters): Remember requested value for
3966 fullscreen before it's reset by the parameter handler.
3967
4b09796d
GM
39682009-01-09 Glenn Morris <rgm@gnu.org>
3969
3970 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3971 (last_command_event): ... and update all users.
4b09796d
GM
3972 (last_input_char): For clarity, rename to...
3973 (last_input_event): ... and update all users.
3974 (last-command-char, last-input-char): Move to subr.el as aliases.
3975 * cmds.c, commands.h: Update for last_command_char rename.
3976
14ccea62
CY
39772009-01-08 Chong Yidong <cyd@stupidchicken.com>
3978
51d861de 3979 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3980
5f004711
JR
39812009-01-08 Jason Rumney <jasonr@gnu.org>
3982
3983 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3984 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3985 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3986 Don't declare.
fff4e459 3987 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3988 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3989
b71f6f73
KH
39902009-01-07 Kenichi Handa <handa@m17n.org>
3991
50b06221 3992 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3993 remember the coding system used for decoding in
50b06221
KH
3994 coding_system (Bug#1039).
3995
b71f6f73 3996 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3997 breaking the loop. (Bug#870)
b71f6f73
KH
3998 (decode_coding_utf_16, decode_coding_emacs_mule)
3999 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4000 (decode_coding_charset): Likewise.
4001
56f668f7
MR
40022009-01-05 Martin Rudalics <rudalics@gmx.at>
4003
4004 * frame.c (x_set_frame_parameters): Make sure height (width) get
4005 applied when fullwidth (fullheight) is set. (Bug#1522)
4006
5da9424d
JB
40072009-01-04 Juanma Barranquero <lekktu@gmail.com>
4008
4009 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4010 (utc_base): Declare as ULONGLONG, not long double.
4011 (convert_time_raw): Delete.
4012 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4013 (initialize_utc_base): New function.
4014 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4015 (convert_from_time_t): Use initialize_utc_base; compute result with
4016 64-bit arithmetic.
4017 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4018
c4605e09
EZ
40192009-01-03 Eli Zaretskii <eliz@gnu.org>
4020
9acef61c 4021 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4022 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4023 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4024 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4025 [!subprocesses]: Define.
4026 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4027 (Flist_system_processes, Fsystem_process_attributes)
4028 [!subprocesses]: Call list_system_processes and
4029 system_process_attributes instead of returning Qnil.
4030
9acef61c
JB
4031 * dosfns.c (system_process_attributes, list_system_processes):
4032 New functions.
c4605e09
EZ
4033
4034 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4035
4036 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4037 Don't use the default (no-op) implementation.
4038
8b7d0a16
JR
40392009-01-03 Jason Rumney <jasonr@gnu.org>
4040
a6d46bc1
JR
4041 * keyboard.c (parse_modifiers_uncached): Wheel events are
4042 clicks (bug#687).
4043
8b7d0a16
JR
4044 * w32term.c (x_query_colors, x_query_color): New functions.
4045
4046 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4047 (svg_load_image): Cast returned pointers from dynamically loaded
4048 functions. Eliminate W32 specific code.
4049
bfe11752
DN
40502009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4051
89e2438a
DN
4052 * nsfns.m (x_set_foreground_color, x_set_background_color)
4053 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4054 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4055 x_ prefix instead of ns_. Update references.
4056 (syms_of_nsfns): Add a FIXME comment.
4057
4058 * nsterm.m (x_set_cursor_type): New prototype.
4059 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4060
bfe11752
DN
4061 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4062 for Solaris instead of incorrectly providing Qutime and Qcutime.
4063
031da700
EZ
40642009-01-02 Eli Zaretskii <eliz@gnu.org>
4065
4066 * w32.c (process_times): Compute sum of utime and stime.
4067 (system_process_attributes): Add Qtime to the alist.
4068
4069 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4070 and add them to the alist.
4071
4072 * process.c (top level) <Qtime, Qctime>: New variables.
4073 (syms_of_process): staticpro them.
4074 (Fsystem_process_attributes): Add their documentation to the doc
4075 string.
4076
4077 * process.h: Declare Qtime and Qctime.
4078
df23bf08
JR
40792009-01-02 Jason Rumney <jasonr@gnu.org>
4080
9acef61c 4081 * image.c (Qgobject): New symbol.
df23bf08
JR
4082 (syms_of_image): Initialize it.
4083 (init_svg_functions): Load some functions from gobject library.
4084
5bbdf7aa
DN
40852009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4086
4087 * frame.c (make_terminal_frame): Remove redundant code and useless
4088 block.
4089
63136da6
AS
40902009-01-01 Andreas Schwab <schwab@suse.de>
4091
4092 * process.c (conv_sockaddr_to_lisp): Add workaround for
4093 getsockname bug on BSD.
4094
9ef69046
CY
40952009-01-01 Chong Yidong <cyd@stupidchicken.com>
4096
d6fafbe0
CY
4097 * xfns.c (x_create_tip_frame): Set border width of the X window.
4098
51d861de 4099 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4100
f9c34147
JR
41012009-01-01 Jason Rumney <jasonr@gnu.org>
4102
9acef61c 4103 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4104 Don't block input, as per earlier xterm.c changes.
4105
f5497e45
AR
41062008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4107
4108 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4109 (ns_appkit_version_int): New function.
4110 (x-server-version): Use ns_appkit_version_int and follow 21+
4111 convention of returning 3 integers.
4112
c19cab20
KH
41132008-12-30 Kenichi Handa <handa@m17n.org>
4114
4115 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4116 (CHAR_SURROGATE_PAIR_P): New macro.
4117
4118 * font.h (struct font_driver): New member get_variation_glyphs.
4119
9acef61c 4120 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4121 (Ffont_variation_glyphs): New function.
4122 (syms_of_font): Defsubr it.
4123
4124 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4125 ftfont_variation_glyphs.
4126 (setup_otf_gstring): New function.
4127 (ftfont_drive_otf): Use it.
4128 (ftfont_shape_by_flt): Handle variation selector.
4129 (ftfont_variation_glyphs): New function.
4130
28cd591f
MR
41312008-12-30 Martin Rudalics <rudalics@gmx.at>
4132
4133 * frame.c (Vemacs_iconified): Remove.
4134
7f714baf
JR
41352008-12-30 Jason Rumney <jasonr@gnu.org>
4136
4137 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4138 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4139
9d2d22ab
CY
41402008-12-30 Chong Yidong <cyd@stupidchicken.com>
4141
4142 * indent.c (Fvertical_motion): Don't advance iterator if we have
4143 reseated to the desired position.
4144
4145 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4146 checking for pos match.
4147
545312c2
KH
41482008-12-30 Kenichi Handa <handa@m17n.org>
4149
1ede3eb6
KH
4150 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4151 just get the low 8-bit of the code.
4152
545312c2
KH
4153 * font.c (font_intern_prop): Validate str as multibyte.
4154
bd7bbf29
DN
41552008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4156
31e0750e
DN
4157 * dispextern.h (struct face): Move lface and hash from the middle
4158 of bitfields.
4159
bd7bbf29
DN
4160 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4161
b5672e7c
DN
41622008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4163
4164 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4165 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4166 instead of intervals.h.
4167
d704470f
AS
41682008-12-26 Andreas Schwab <schwab@suse.de>
4169
4170 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4171 cons.
4172
54b33868
MR
41732008-12-26 Martin Rudalics <rudalics@gmx.at>
4174
4175 * textprop.c (Qminibuffer_prompt): New variable.
4176 (syms_of_textprop): Initialize it.
4177 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4178 in minibuffer-prompt face. (Bug#1662)
4179
40b615d6
JR
41802008-12-25 Jason Rumney <jasonr@gnu.org>
4181
4182 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4183
baae5c2d
JR
41842008-12-24 Jason Rumney <jasonr@gnu.org>
4185
4186 * ralloc.c (r_alloc_reset_variable): New function.
4187
4188 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4189 record of what points where. (Bug#716)
baae5c2d 4190
a9051c88
DN
41912008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4192
4193 * minibuf.c (read_minibuf): Follow the non-interactive case when
4194 running as a daemon, before detaching.
4195
8b146312
AS
41962008-12-22 Andreas Schwab <schwab@suse.de>
4197
4198 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4199 * gtkutil.c (free_widget_value): Use xfree instead of free.
4200
56f2de10
MR
42012008-12-22 Martin Rudalics <rudalics@gmx.at>
4202
4203 * frame.c (delete_frame): New function derived from
4204 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4205 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4206 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4207 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4208 * frame.h: Extern delete_frame.
4209 * window.c (window_loop):
4210 * terminal.c (delete_terminal):
4211 * xterm.c (x_connection_closed):
4212 * xfns.c (Fx_hide_tip):
9acef61c 4213 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4214
1fc200d6
JR
42152008-12-21 Jason Rumney <jasonr@gnu.org>
4216
4217 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4218 when character maps to .notdef character.
4219
5e252df2
SM
42202008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4221
4222 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4223
99b72cc4
JR
42242008-12-20 Jason Rumney <jasonr@gnu.org>
4225
4226 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4227 a graphical frame on Windows. (Bug#1325)
99b72cc4 4228
acc49a52
JD
42292008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4230
4231 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4232
6ea15123
CY
42332008-12-20 Chong Yidong <cyd@stupidchicken.com>
4234
4235 * minibuf.c (Fread_buffer): Doc fix.
4236
b2dab6c8
JR
42372008-12-20 Jason Rumney <jasonr@gnu.org>
4238
54ea0c87 4239 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4240 server name in UNC paths. (Bug#719)
54ea0c87 4241
b2dab6c8 4242 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4243 charbuf. (Bug#1035)
b2dab6c8 4244
6d1921be
DN
42452008-12-19 Daniel Engeler <engeler@gmail.com>
4246
4247 * sysdep.c (serial_configure): Fix typo.
4248
53934c98
DN
42492008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4250
4251 * sysdep.c: Include alloca.h.
f4f634e8
DN
4252 (system_process_attributes): Add implementation for Solaris.
4253
4254 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4255
06e111a6
DN
42562008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4257
4258 Reorganize implementation of Flist_system_processes and
4259 Fsystem_process_attributes. No functional changes.
4260 * process.c: Don't #include pwd.h, grp.h and limits.h.
4261 (Flist_system_processes): Just call list_system_processes.
4262 (Fsystem_process_attributes): Just call system_process_attributes.
4263 (procfs_list_system_processes, time_from_jiffies)
4264 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4265 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4266
4267 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4268 (list_system_processes): Rename from
4269 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4270 Provide a do nothing implementation.
4271 (system_process_attributes): Rename from
4272 procfs_list_system_processes.
4273 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4274 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4275
4276 * w32.c (list_system_processes): Rename from
4277 w32_list_system_processes.
4278 (system_process_attributes): Rename from
4279 w32_system_process_attributes.
4280
4281 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4282
4283 * process.h (w32_list_system_processes)
4284 (w32_system_process_attributes): Remove.
362654a6
JB
4285 (list_system_processes, system_process_attributes):
4286 New prototypes.
06e111a6 4287
6a705b23
KH
42882008-12-19 Kenichi Handa <handa@m17n.org>
4289
4290 * xfont.c (xfont_decode_coding_xlfd): New function.
4291 (xfont_encode_coding_xlfd): New function.
4292 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4293 (xfont_list): Decode and encode XLFD by iso-8859-1.
4294 (xfont_match): Likewise.
4295 (xfont_list_family): Likewise.
4296 (xfont_open): Likewise.
4297
d66c0241 4298 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4299 names are utf-8.
4300
d66c0241 4301 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4302 names are utf-8.
4303
5a130941
JD
43042008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4305
4306 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4307 changed.
bfd20325
JD
4308 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4309 clicked on a detached tool bar button.
5a130941 4310
fd95644b
DN
43112008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4312
4313 * emacs.c (main): Print and error and exit when no data is read
4314 from the pipe.
4315
e6eee6ae
JR
43162008-12-17 Jason Rumney <jasonr@gnu.org>
4317
4318 * w32font.c (w32font_has_char): Always return -1.
4319
a35dd56b
KH
43202008-12-16 Kenichi Handa <handa@m17n.org>
4321
4322 * font.c (font_open_entity): Fix previous change.
4323
0e3635c2
DN
43242008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4325
4326 * process.c: Include <limits.h>.
4327
d4835507 43282008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4329
4330 * font.c (font_update_drivers): Fix mistake in reconstructing the
4331 driver list.
4332
43332008-12-16 Chong Yidong <cyd@stupidchicken.com>
4334
4335 * font.c (font_clear_cache): Fix format of font cache data.
4336
e2cbc401
CY
43372008-12-15 Chong Yidong <cyd@stupidchicken.com>
4338
4339 * xftfont.c (xftfont_open): Free Xft font pattern if
4340 XftFontOpenPattern fails.
4341
4342 * xterm.c (x_free_frame_resources): Remove extraneous call to
4343 free_frame_faces.
4344
b131d535
CY
43452008-12-13 Chong Yidong <cyd@stupidchicken.com>
4346
4347 * xterm.c (x_delete_display): Move xim_close_dpy call to
4348 x_delete_terminal.
4349 (x_delete_terminal): Call xim_close_dpy.
4350
e6df5336
JR
43512008-12-13 Jason Rumney <jasonr@gnu.org>
4352
4353 * w32font.c (intern_font_name): New function.
4354 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4355 (w32font_open_internal, Fx_select_font): Decode font name.
4356 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4357
4358 * w32font.h (intern_font_name): Declare new function.
4359
4360 * w32uniscribe.c (add_opentype_font_name_to_list):
4361 Use intern_font_name.
4362
20d68145
CY
43632008-12-13 Chong Yidong <cyd@stupidchicken.com>
4364
9f2554de
CY
4365 * frame.c (Fdelete_frame): Call free_font_driver_list.
4366
3d9bec9a
CY
4367 * font.c (free_font_driver_list): Implement missing function.
4368
20d68145
CY
4369 * w32term.c (w32_term_init): Don't initialize the image cache
4370 here; it will be done in init_frame_faces.
4371
4372 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4373 (struct x_display_info): Remove unused member null_pixel. New
4374 member xim_callback_data.
4375
4376 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4377 (xim_initialize): Save pointer to callback function data.
4378 (xim_close_dpy): Free callback function data. Call XCloseIM,
4379 reverting 2008-11-04 change by David Smith.
4380 (x_term_init): Don't initialize the image cache here; it will be
4381 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4382 (x_delete_display): Free x_dnd_atoms member.
4383
96f9306b
KH
43842008-12-13 Kenichi Handa <handa@m17n.org>
4385
6dec9044
JB
4386 * font.c (font_rescale_ratio): Moved from xfaces.c.
4387 Argument type changed. Handle a font-spec too.
96f9306b 4388 (font_score): Check Vface_font_rescale_alist.
6dec9044 4389 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4390
4391 * xfaces.c (font_rescale_ratio): Moved to font.c.
4392
8d5b4964
CY
43932008-12-13 Chong Yidong <cyd@stupidchicken.com>
4394
4395 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4396
e6df5336
JR
43972008-12-12 Jason Rumney <jasonr@gnu.org>
4398
4399 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4400 Vwindow_system_version to the real w32 major version.
4401
97c6058a
DN
44022008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4403
4404 * term.c (init_tty): Move setting the terminal name before the
4405 potential user: maybe_fatal.
4406
ec4e88d7
CY
44072008-12-11 Chong Yidong <cyd@stupidchicken.com>
4408
d4835507
JB
4409 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4410 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4411
b4233ec9
JR
44122008-12-11 Jason Rumney <jasonr@gnu.org>
4413
8ec71e23 4414 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4415 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4416
b4233ec9 4417 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4418 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4419
011a0143
JB
44202008-12-11 Juanma Barranquero <lekktu@gmail.com>
4421
4422 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4423
3c309f34
JB
44242008-12-11 Juanma Barranquero <lekktu@gmail.com>
4425
4426 * process.c (Fsystem_process_attributes, syms_of_process):
4427 Fix typo in name of Ssystem_process_attributes.
4428 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4429
fedc6ab5
JB
44302008-12-11 Juanma Barranquero <lekktu@gmail.com>
4431
4432 * syntax.c (Fmodify_syntax_entry): Doc fix.
4433
ba3de0e8
JB
44342008-12-10 Juanma Barranquero <lekktu@gmail.com>
4435
4436 * font.c (Ffont_spec): Move usage to end of docstring.
4437
174f1c74
JR
44382008-12-10 Jason Rumney <jasonr@gnu.org>
4439
4440 * w32font.c (Qcham): New symbol.
4441 (font_supported_scripts): Add cham, and comments for other new
4442 scripts in bitfield from OpenType spec.
9d32f818
JR
4443 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4444 contain characters beyond the bmp.
174f1c74 4445
7b649478
KH
44462008-12-10 Kenichi Handa <handa@m17n.org>
4447
4448 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4449 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4450 Qunicode_sip.
4451
2133e2d1
JB
44522008-12-10 Juanma Barranquero <lekktu@gmail.com>
4453
4454 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4455 (Fcoding_system_put): Use QCdefault_char.
4456 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4457
9af886ee
CY
44582008-12-09 Chong Yidong <cyd@stupidchicken.com>
4459
74d819eb
CY
4460 * xftfont.c (syms_of_xftfont): Fix typo.
4461
4ccfa1c0 4462 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4463
7c19d3ae
DN
44642008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4465
4466 * emacs.c (main): Close daemon_pipe on exec.
4467
567826bb
CY
44682008-12-08 Chong Yidong <cyd@stupidchicken.com>
4469
4470 * termchar.h (struct tty): New members termcap_term_buffer and
4471 termcap_strings_buffer.
4472
4473 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4474 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4475 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4476 All callers changed.
4477 (init_tty): Store termcap data and string buffers in new struct
4478 tty members termcap_term_buffer and termcap_strings_buffer.
4479 (delete_tty): Free them.
4ccfa1c0 4480 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4481
aa96c42b
SZ
44822008-12-07 Seiji Zenitani <zenitani@mac.com>
4483
4484 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4485 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4486
b7e1d896
CY
44872008-12-06 Chong Yidong <cyd@stupidchicken.com>
4488
4489 * coding.c (make_conversion_work_buffer): Disable buffer
4490 modification hooks in the work buffer.
4491
b5ec91a5
EZ
44922008-12-05 Eli Zaretskii <eliz@gnu.org>
4493
4494 * process.c (procfs_system_process_attributes): If `nread' has a
4495 negative value, assign zero to it.
4496
a5d2a52b
CY
44972008-12-05 Chong Yidong <cyd@stupidchicken.com>
4498
68c5540b 4499 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4500
7bf1bb21
KH
45012008-12-05 Kenichi Handa <handa@m17n.org>
4502
4503 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4504 second character is a combining character.
4505
2fdc7d00
EZ
45062008-12-05 Eli Zaretskii <eliz@gnu.org>
4507
4508 * process.c (procfs_system_process_attributes): Don't use cmd,
4509 cmdsize, and q without initializing them first.
4510
bf6bfba8
JR
45112008-12-04 Jason Rumney <jasonr@gnu.org>
4512
4513 * w32font.c (w32font_draw): Initialize orig_clip before getting
4514 it, and delete it when finished.
4515
a3b1a468
DN
45162008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4517
4518 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4519 case when running as a daemon before detaching.
4520
8b8be8eb
JB
45212008-12-03 Juanma Barranquero <lekktu@gmail.com>
4522
805f2638 4523 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4524
b1bde622
KH
45252008-12-03 Kenichi Handa <handa@m17n.org>
4526
e500c47d
KH
4527 * font.c (font_at): Set `multibyte' at first.
4528
ca516334
KH
4529 * coding.c (decode_coding_charset): Check type of an element of
4530 vector VALIDS.
7bf1bb21 4531 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4532
4ccfa1c0 4533 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4534 (font_for_char): Likewise.
4535
1e5ecd37
CY
45362008-12-03 Chong Yidong <cyd@stupidchicken.com>
4537
d5b01609 4538 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4539 (font_update_lface): Handle fonts with corrupted size specs,
4540 i.e. non-int and non-float.
d5b01609 4541
11e3a6e4 4542 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4543 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4544 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4545
ab06788b
CY
4546 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4547
1e5ecd37 4548 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4549 underline_minimum_offset for underline position.
1e5ecd37 4550
63c125ab
DN
45512008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4552
4553 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4554
4555 * character.c (c_string_width): Specify the type for LEN.
4556
3a8406e1
KH
45572008-12-03 Kenichi Handa <handa@m17n.org>
4558
4ccfa1c0 4559 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4560 (decode_coding_utf_8): Likewise.
4ccfa1c0 4561 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4562 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4563
651df7d9
CY
45642008-12-02 Chong Yidong <cyd@stupidchicken.com>
4565
4566 * keyboard.c (make_lispy_position): Only use PT if the selected
4567 window is current.
4568
1f625c6c
AS
45692008-12-02 Andreas Schwab <schwab@suse.de>
4570
f7741ce9
AS
4571 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4572
1f625c6c
AS
4573 * doprnt.c (doprnt1): Fix size of charbuf.
4574
92bc2678
CY
45752008-12-02 Chong Yidong <cyd@stupidchicken.com>
4576
4577 * keyboard.c (timer_check): Revert last change.
4578
93b9e8cc
JB
45792008-12-02 Juanma Barranquero <lekktu@gmail.com>
4580
4581 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4582
fd7a37d5
JB
45832008-12-01 Juanma Barranquero <lekktu@gmail.com>
4584
4585 * makefile.w32-in: Update dependencies.
4586 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4587
c115043b
AS
45882008-12-01 Andreas Schwab <schwab@suse.de>
4589
4590 * font.c (register_font_driver): Use xmalloc.
4591 (font_put_frame_data): Likewise.
4592
f5668d2a
CY
45932008-12-01 Chong Yidong <cyd@stupidchicken.com>
4594
860d96be
CY
4595 * xfaces.c (realize_x_face): Make abort condition clearer.
4596
f5668d2a
CY
4597 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4598
379c17e7
CY
45992008-11-30 Chong Yidong <cyd@stupidchicken.com>
4600
4601 * keyboard.c (timer_check): After a timer runs, ensure that the
4602 selected window's buffer is current.
4603
35f36d65
JB
46042008-11-30 Juanma Barranquero <lekktu@gmail.com>
4605
f952c61c
JB
4606 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4607 It was accidentally restored by the Unicode merge.
4608
35f36d65
JB
4609 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4610
b23077df
JB
46112008-11-29 Juanma Barranquero <lekktu@gmail.com>
4612
4613 * w32proc.c: Include "coding.h".
4614 (Fw32_short_file_name): Encode filename passed to Windows API.
4615 (Fw32_long_file_name): Encode filename passed to Windows API and
4616 decode back the result. (Bug#1433)
4617
b8ebe9dd
KH
46182008-11-29 Kenichi Handa <handa@m17n.org>
4619
8cc53f96
KH
4620 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4621 not before accessing it.
4622
b8ebe9dd
KH
4623 * charset.c (Fdefine_charset_internal): After calculating
4624 min_char, max_char, and fastmap, copy the charset structure again.
4625 (encode_char): Fix the previous change.
4626
59bc82c0
SZ
46272008-11-28 Seiji Zenitani <zenitani@mac.com>
4628
4629 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4630
4631 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4632
4633 * nsterm.m (x_set_frame_alpha): New function.
4634
32247e3d
EZ
46352008-11-27 Eli Zaretskii <eliz@gnu.org>
4636
4637 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4638
b003e5ff
JB
46392008-11-27 Juanma Barranquero <lekktu@gmail.com>
4640
4641 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4642 pointer to check_face_name.
4643
708550f5
KH
46442008-11-27 Kenichi Handa <handa@m17n.org>
4645
4646 * category.h (SET_CATEGORY_SET): Call set_category_set.
4647 (set_category_set): Extern it.
4648
4649 * category.c (hash_get_category_set): New function.
4650 (Fmodify_category_entry): Adjusted for the change of
4651 char_table_ref_and_range. Call hash_get_category_set to get a
4652 category set to store in the table.
4653
4654 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4655 Funify_charset.
4656
2ae37cf0 4657 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4658 (DECODE_CHAR): Check if the decoder vector is ready.
4659 (ENCODE_CHAR): Check if the encoder char-table is ready.
4660 (maybe_unify_char): Extern it.
4661
4662 * charset.c (Vchar_unified_charset_table): Delete it.
4663 (inhibit_load_charset_map): New variable.
4664 (temp_charset_work): New variable.
4665 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4666 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4667 New macros.
4668 (load_charset_map): Meaning of control_flag changed. If
4669 inhibit_load_charset_map is nonzero, setup a table in
4670 temp_charset_work.
4671 (load_charset): New argument control_flag.
4672 (map_charset_for_dump): New function.
4673 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4674 map_charset_for_dump.
4675 (Fdefine_charset_internal): If the charset method is MAP, load
4676 mapping tables by calling load_charset.
4677 (Funify_charset): Don't load a mapping table but directly set
4678 Vchar_unify_table.
4679 (maybe_unify_char): New function.
4680 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4681 Handle the case of inhibit_load_charset_map being nonzero.
4682 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4683 Handle the case of inhibit_load_charset_map being nonzero.
4684 (Fclear_charset_maps): Just free temp_charset_work.
4685 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4686 variable.
4687
4688 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4689 change of char_table_ref_and_range.
4690 (char_table_ref_and_range): Change the meaning of argument FROM
4691 and TO. Now the caller must provide initial values for *FROM
4692 and *TO.
4693
4694 * fontset.c (fontset_add): Adjusted for the change of
4695 char_table_ref_and_range.
4696 (fontset_get_font_group): Likewise.
4697 (Ffontset_info): Likewise.
4698
4699 * keymap.c (describe_vector): Adjusted for the change of
4700 char_table_ref_and_range. For char-table, put boundary between
4701 non-ASCII and 8-bit characters.
4702
4703 * print.c (print_object): For bool-vector, delete unnecessary
4704 check of ASCII_BYTE_P.
4705
9196133b
JR
47062008-11-26 Jason Rumney <jasonr@gnu.org>
4707
4708 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4709 leading in font height. (Bug#879)
9196133b 4710
9f688acf
GM
47112008-11-26 Glenn Morris <rgm@gnu.org>
4712
4713 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4714 redefinition with ifdef. (Bug#1383)
4715
90d19aff
AR
47162008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4717
4718 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4719
4ccfa1c0 47202008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4721
4722 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4723 New EmacsView methods.
4724 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4725 Fixes bug #1048,1357,1414.
4726
47272008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4728
4729 Fix bug #1362.
4730 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4731 is not an indexed color.
4732 * nsterm.m (free_indexed_color): Add argument checking.
4733 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4734
e7d5ecb3
CY
47352008-11-24 Chong Yidong <cyd@stupidchicken.com>
4736
4737 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4738 Document confirm-after-completion value for
4739 minibuffer-completion-confirm.
4740
c285743c
JR
47412008-11-24 Jason Rumney <jasonr@gnu.org>
4742
4743 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4744 warning.
4745
b0857706
JR
47462008-11-23 Jason Rumney <jasonr@gnu.org>
4747
4748 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4749 restored before returning.
4750
4751 * w32font.c (check_face_name): New function.
4752 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4753 fonts. (Bug#642)
b0857706 4754
ee50ff07
MR
47552008-11-22 Martin Rudalics <rudalics@gmx.at>
4756
4757 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4758 confirm-nonexistent-file-or-buffer in doc-string.
4759
b8ff72fa
SM
47602008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4761
4762 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4763 Fix copy/paste typo. Add checks.
4764
cee53ed4
KH
47652008-11-21 Kenichi Handa <handa@m17n.org>
4766
4767 * coding.c (detect_coding_iso_2022): Reject invalid composition
4768 sequence.
4769 (DECODE_COMPOSITION_START): If the current source is the last
4770 block, and the current composition doesn't end, regard this
4771 sequence as invalid.
4772 (decode_coding_iso_2022): Handle invalid composition sequence.
4773
f6ef1e65
MR
47742008-11-20 Martin Rudalics <rudalics@gmx.at>
4775
4776 * window.c (coordinates_in_window): Don't return
4777 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4778 line when the window is not the rightmost one. (Bug#1372)
4779
e08b1705
MR
47802008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4781
4782 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4783
ad98e89f
EZ
47842008-11-15 Eli Zaretskii <eliz@gnu.org>
4785
4786 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4787 and bright_bg if noninteractive is non-zero.
4788
fb098a4b
CY
47892008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4790
4791 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4792 x_draw_glyph_string_background.
4793
4794 * w32term.c (x_draw_glyph_string): Likewise.
4795
ce952b6e
CY
47962008-11-15 Chong Yidong <cyd@stupidchicken.com>
4797
4798 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4799 the next glyph string once past the overhang width.
4800
4801 * nsterm.m (ns_draw_glyph_string): Likewise.
4802
4803 * w32term.c (x_draw_glyph_string): Likewise.
4804
26ea7079
CY
48052008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4806
4807 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4808 double file close.
4809
1c33c906
MR
48102008-11-14 Martin Rudalics <rudalics@gmx.at>
4811
4812 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4813 dedicated status of window before attempting to display another
4814 buffer in it.
4815
8fc29035
JB
48162008-11-14 Juanma Barranquero <lekktu@gmail.com>
4817
4818 * msdos.c (Fmsdos_long_file_names):
4819 (syms_of_msdos) <dos-unsupported-char-glyph>:
4820 * dosfns.c (Fint86): Fix typos in docstrings.
4821
55fb4286
EZ
48222008-11-14 Eli Zaretskii <eliz@gnu.org>
4823
4824 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4825
3fda0315
KY
48262008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4827
4828 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4829
7e849c17
CY
48302008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4831
4832 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4833
4834 * frame.h: Negative alpha means "don't touch".
4835
4836 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4837
4838 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4839
b9fd67bd
DN
48402008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4841
4842 * hftctl.c:
4843 * chpdef.h:
4844 * acldef.h: Remove files used only for systems no longer supported.
4845
4846 * Makefile.in: Fix .o alphabetical ordering.
4847 (hftctl.o): Remove dependency, file removed.
4848 (keymap.o, print.o): Depend on charset.h.
4849
d5998e03
KH
48502008-11-10 Kenichi Handa <handa@m17n.org>
4851
2ae37cf0 4852 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4853
be70e183
CY
48542008-11-08 Chong Yidong <cyd@stupidchicken.com>
4855
4856 * dired.c (file_name_completion): If completion_ignore_case is
4857 enabled, ignore case when checking completion-regexp-list.
4858
7cf94eac
EZ
48592008-11-08 Eli Zaretskii <eliz@gnu.org>
4860
4861 * vm-limit.c (get_lim_data): Fix last change.
4862
ee107a89
KH
48632008-11-08 Kenichi Handa <handa@m17n.org>
4864
4865 * character.c (Fget_byte): New function.
4866 (syms_of_character): Defsubr Fget_byte.
4867
5fd15622
CY
48682008-11-07 Chong Yidong <cyd@stupidchicken.com>
4869
4870 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4871 cursor position is valid after scrolling.
4872
13d62fad
JB
48732008-11-06 Juanma Barranquero <lekktu@gmail.com>
4874
4875 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4876
a1dd2936
GM
48772008-11-06 Glenn Morris <rgm@gnu.org>
4878
4879 * xterm.c (handle_one_xevent): Don't let popup menus cause
4880 mouse-autoselect-window related window switching. (Bug#1261)
4881
860cd236
CY
48822008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4883
4884 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4885
653a3150
AS
48862008-11-04 Andreas Schwab <schwab@suse.de>
4887
4888 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4889
870f5cac
CY
48902008-11-03 Chong Yidong <cyd@stupidchicken.com>
4891
4892 * xfns.c (Fx_wm_set_size_hint): New function.
4893
1e02f3cb
MR
48942008-11-03 Martin Rudalics <rudalics@gmx.at>
4895
4896 * textprop.c (Fprevious_single_char_property_change): Return 0
4897 when there's no change in a string. (Bug#1301)
4898
e630dfc6
MR
48992008-11-02 Martin Rudalics <rudalics@gmx.at>
4900
4901 * frame.c (do_switch_frame): New argument NORECORD passed to
4902 Fselect_window.
4903 (Fselect_frame): New argument NORECORD passed to
4904 do_switch_frame.
4905 (Fset_frame_selected_window): New argument NORECORD passed to
4906 Fselect_frame.
4907 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4908 in call of do_switch_frame.
4909 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4910 Handle NORECORD argument in call of Fselect_frame.
4911 * lisp.h (do_switch_frame, Fselect_frame)
4912 (Fset_frame_selected_window): Adjust declarations.
4913 * window.c (select_frame_norecord): New function.
4914 (run_window_configuration_change_hook): Use it and call
4915 Fselect_frame with NORECORD set.
4916 (Fselect_window): Pass NORECORD to Fselect_frame.
4917 (Fset_window_configuration): Handle NORECORD argument in call of
4918 do_switch_frame.
4919 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4920 Fset_frame_selected_window.
4921 * keyboard.c (command_loop_1): Handle NORECORD in call of
4922 Fselect_frame (currently ifdefd).
4923
9020b223
GM
49242008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4925
4926 * emacs.c (USAGE2): Untabify.
4927
793ffee8
SM
49282008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4929
4930 * composite.c (fill_gstring_header): Fix copy/paste typo.
4931
ab6d1131
MR
49322008-10-31 Martin Rudalics <rudalics@gmx.at>
4933
4934 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4935 (Fother_window): Rename argument and rewrite doc-string.
4936 (select_window_norecord): Fix return value. (Bug#1276)
4937
601a9cf1
JB
49382008-10-30 Juanma Barranquero <lekktu@gmail.com>
4939
4940 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4941 new frames overriding foreground for tooltips. Based on similar patch
4942 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4943
813b0652
CY
49442008-10-29 Chong Yidong <cyd@stupidchicken.com>
4945
4946 * emacs.c (Fdaemon_initialized): Initialize nfd.
4947
4414f58f
MR
49482008-10-29 Martin Rudalics <rudalics@gmx.at>
4949
4950 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4951 (Fwindow_text_height): Clarify doc-strings.
4952 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4953 doc-string of window-scroll-functions.
4954
ecdcaa09
RS
49552008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4956
4957 * category.c (syms_of_category): Fix typo in docstring.
4958
23fe745a
JB
49592008-10-28 Juanma Barranquero <lekktu@gmail.com>
4960
4961 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4962 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4963 Fix typos in docstrings.
4964
ff808935
DN
49652008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4966
4967 * emacs.c (daemon_pipe): Make non-static.
4968 (IS_DAEMON): Move definition ...
4969 * lisp.h (IS_DAEMON): ... here.
4970 (daemon_pipe): Declare.
4971 (is_daemon): Remove.
4972 * dispnew.c (init_display): Use IS_DAEMON.
4973
fc012771
SM
49742008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4975
4976 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4977 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4978
4979 * emacs.c (is_daemon): Remove.
4980 (main): Don't set is_daemon.
4981 (IS_DAEMON): New macro.
4982 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4983 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4984 parent exits.
4985 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4986
d8bdbe6f
CY
49872008-10-27 Chong Yidong <cyd@stupidchicken.com>
4988
d1a072bf
CY
4989 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4990 over-sized glyph, draw it with the default glyph width.
4991
e2e325aa
CY
4992 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4993 glyph, draw it with the default glyph width.
4994
4995 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4996 glyph, draw it with the default glyph width.
4997
d8bdbe6f
CY
4998 * xdisp.c (try_scrolling): When computing the distance from the
4999 scroll margin to PT, try moving some distance past the window
5000 bottom before giving up.
5001
7bfac547
MR
50022008-10-27 Martin Rudalics <rudalics@gmx.at>
5003
5004 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5005 (Fset_window_buffer): Explain in doc-string that a window can be
5006 "strongly" dedicated to its buffer.
5007
4ff029f6
DN
50082008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5009
5010 * emacs.c (daemon_name): New variable.
5011 (main): Deal with --daemon=SERVER_NAME.
5012 (Fdaemonp): Return a name if one was passed to --daemon.
5013
5790ef40
DN
50142008-10-26 Romain Francoise <romain@orebokech.com>
5015
f9bd0df9 5016 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5017 (main): Create a pipe before forking, make the parent exit only after
5018 the child has closed its end of the pipe. Move closing the
5019 descriptors ...
5020 (Fdaemon_initialized): ... here. New function.
5021
f5385255
SM
50222008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5023
4d632321
SM
5024 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5025 the previous unoptimized table.
5026
f5385255
SM
5027 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5028 the distinction between non-nil and non-t value of `dedicated'.
5029
6c56a0f3
CY
50302008-10-25 Chong Yidong <cyd@stupidchicken.com>
5031
5032 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5033 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5034
fec89261
MR
50352008-10-25 Martin Rudalics <rudalics@gmx.at>
5036
5037 * window.c (Fget_buffer_window, Fdelete_windows_on)
5038 (Freplace_buffer_in_windows): Make buffer argument optional and
5039 rename to buffer_or_name.
5040
34fcddd0
CY
50412008-10-24 Chong Yidong <cyd@stupidchicken.com>
5042
f5385255
SM
5043 * xdisp.c (handle_single_display_spec, handle_display_prop):
5044 Undo 2005-05-16 change.
34fcddd0
CY
5045 (handle_stop): Pop iterator if it's loaded with an empty string.
5046 (get_overlay_strings_1): Don't save iterator if it's loaded with
5047 an empty string (bug#1201).
5048
064766f2
KH
50492008-10-24 Kenichi Handa <handa@m17n.org>
5050
5051 * ftfont.c (ftfont_otf_features): Fix previous change.
5052 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5053 calling ftfont_otf_features.
5054
f9bd0df9 50552008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5056
5057 * font.c (font_match_p): Fix for the case that a vector of
5058 characters is in script-representative-chars.
5059
1dae9197
MA
50602008-10-24 Michael Albinus <michael.albinus@gmx.de>
5061
5062 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5063 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5064 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5065 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
5066 macro. (Bug#1186).
5067
f9bd0df9 50682008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5069
5070 * s/sol2-10.h: New file.
5071
878a4584
JB
50722008-10-23 Juanma Barranquero <lekktu@gmail.com>
5073
5074 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5075 poor beast has survived 9+ years and the jump from xterm.c!).
5076
cd265ca6
MR
50772008-10-23 Martin Rudalics <rudalics@gmx.at>
5078
5079 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5080 Reword doc-string.
f5385255 5081 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5082
472a4dc9
JB
50832008-10-23 Juanma Barranquero <lekktu@gmail.com>
5084
5085 * character.c (syms_of_character) <script-representative-chars>:
5086 <unicode-category-table>: Doc fixes.
5087
159bd5a2
NF
50882008-10-23 Noah Friedman <friedman@splode.com>
5089
5090 * coding.c (make_conversion_work_buffer): Check that
5091 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5092 Fget_buffer_create.
5093
49f9c344
KH
50942008-10-23 Kenichi Handa <handa@m17n.org>
5095
5096 * font.c (font_add_log): Check the values of extra properties.
5097
12bb3111
MR
50982008-10-22 Martin Rudalics <rudalics@gmx.at>
5099
5100 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5101 Reword doc-string.
5102 (Fset_window_parameter): Use NILP.
5103 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5104 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5105
bbeb4e99
JB
51062008-10-22 Juanma Barranquero <lekktu@gmail.com>
5107
5108 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5109
51102008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5111
5112 * nsfns.m (ns_appkit_version): New function.
5113 (x-server-version): Use it.
5114 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5115 (x-server-vendor): Don't check_ns().
5116
5117 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5118
a9b555d3
JB
51192008-10-22 Juanma Barranquero <lekktu@gmail.com>
5120
5121 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5122 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5123
4626499f
KH
51242008-10-22 Kenichi Handa <handa@m17n.org>
5125
e3681952
KH
5126 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5127 scripts.
5128
4626499f
KH
5129 * category.c (word_boundary_p): Check scripts instead of charset.
5130 Handle nil value in word-separating-categories and
5131 word-combining-categories.
5132 (syms_of_category): Fix docstrings of word-separating-categories
5133 and word-combining-categories.
5134
1560f91a
EZ
51352008-10-21 Eli Zaretskii <eliz@gnu.org>
5136
5137 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5138 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5139
f4668441
MR
51402008-10-21 Martin Rudalics <rudalics@gmx.at>
5141
5142 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5143 Rename arg "buffer" to "buffer_or_name".
5144 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5145 it optional.
5146 (no_switch_window): Remove since the return value is not used.
a9b555d3 5147 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5148 Consider window as dedicated when Fwindow_dedicated_p returns a
5149 non-nil value.
5150 * lisp.h: Remove prototype for no_switch_window.
5151
fd75ddb2
JD
51522008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5153
5154 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5155 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5156
07295713
KH
51572008-10-21 Kenichi Handa <handa@m17n.org>
5158
5159 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5160 check Vlatin_extra_code_table.
5161
712adc82
EZ
51622008-10-20 Eli Zaretskii <eliz@gnu.org>
5163
5164 * fileio.c (Fset_file_modes): Doc fix.
5165
f549eb0b
MA
51662008-10-19 Michael Albinus <michael.albinus@gmx.de>
5167
5168 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5169 in arrays.
5170
aac0c6e3
MR
51712008-10-19 Martin Rudalics <rudalics@gmx.at>
5172
5173 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5174 Mention kill-buffer in doc-string.
5175 (Fset_window_buffer): Reinsert tem check removed in last commit.
5176 (Fenlarge_window, Fshrink_window): Have argument names and
5177 doc-string follow Elisp manual more closely.
5178
51792008-10-18 Eli Zaretskii <eliz@gnu.org>
5180
5181 * fileio.c (Fset_file_modes): Doc fix.
5182
51832008-10-18 Martin Rudalics <rudalics@gmx.at>
5184
5185 * window.c (Fwindow_width, Fset_window_start)
5186 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5187 (Fdelete_windows_on, Freplace_buffer_in_windows):
5188 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5189 (Fwindow_dedicated_p): Make window argument optional.
5190 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5191 (Fset_window_buffer): Respect any non-nil dedicated value for
5192 window. Rename "buffer" argument to "buffer_or_name".
5193
51942008-10-18 Ulrich Mueller <ulm@gentoo.org>
5195
5196 * m/sh3.h: New file, machine description for SuperH.
5197
51982008-10-17 Martin Rudalics <rudalics@gmx.at>
5199
5200 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5201
52022008-10-17 Kenichi Handa <handa@m17n.org>
5203
5204 * ftfont.c (ftfont_otf_features): Fix indexing
5205 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5206
52072008-10-16 Magnus Henoch <mange@freemail.hu>
5208
5209 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5210 (Fdbus_call_method_asynchronously): Ditto.
5211 This change makes C-h f display the argument list.
5212
52132008-10-16 Chong Yidong <cyd@stupidchicken.com>
5214
5215 * fileio.c (Fexpand_file_name): Doc fix.
5216
5217 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5218 of :foreground and :background equivalent to unspecified (20.x
5219 compatibility).
5220
52212008-10-15 Eli Zaretskii <eliz@gnu.org>
5222
5223 * buffer.c (syms_of_buffer): Doc fix.
5224
52252008-10-14 Kenichi Handa <handa@m17n.org>
5226
5227 * font.c (font_clear_prop): When clearing font width, clear the
5228 average width field too.
5229
52302008-10-12 Andreas Schwab <schwab@suse.de>
5231
5232 * ftfont.c (ftfont_shape_by_flt): Make static.
5233 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5234
5235 * font.c: Don't include <m17n-flt.h>.
5236
52372008-10-10 Eli Zaretskii <eliz@gnu.org>
5238
5239 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5240
52412008-10-09 Eli Zaretskii <eliz@gnu.org>
5242
5243 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5244 away code.
5245
52462008-10-09 Chong Yidong <cyd@stupidchicken.com>
5247
5248 * dispnew.c (update_text_area): Avoid looping due to large glyph
5249 overhangs (bug#1070).
5250
52512008-10-09 Kenichi Handa <handa@m17n.org>
5252
5253 * fontset.c (face_for_char): If face->fontset is negative, just
5254 return ascii_face.
5255
f5385255
SM
5256 * font.c (font_delete_unmatched): Fix previous change.
5257 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5258
52592008-10-09 Martin Rudalics <rudalics@gmx.at>
5260
5261 * frame.c (Fraise_frame): On text-only terminals select frame in
5262 order to make it visible. (Bug#1061)
5263
52642008-10-08 Chong Yidong <cyd@stupidchicken.com>
5265
5266 * fontset.c (fontset_find_font): Check frame validity.
5267
52682008-10-07 Chong Yidong <cyd@stupidchicken.com>
5269
a9b555d3 5270 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5271 (xg_display_close): Allow Emacs to close all displays (bug#985).
5272
52732008-10-06 Andreas Schwab <schwab@suse.de>
5274
f5385255 5275 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5276
52772008-10-06 Chong Yidong <cyd@stupidchicken.com>
5278
f5385255 5279 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5280
a9b555d3 5281 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5282
5283 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5284 during initialization.
5285
52862008-10-04 Eli Zaretskii <eliz@gnu.org>
5287
5288 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5289 whole thing on MSDOS frames as well as on a TTY.
5290
5291 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5292 well as for TTY.
5293 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5294 well as on a TTY.
5295
5296 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5297 as well as for TTY.
5298
5299 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5300
5301 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5302 MSDOS frames as well.
5303
53042008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5305
5306 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5307 correct arguments.
b71ac3dd 5308 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5309
53102008-10-03 Glenn Morris <rgm@gnu.org>
5311
5312 * emacs.c (USAGE1): Add --daemon.
5313
53142008-10-02 Eli Zaretskii <eliz@gnu.org>
5315
5316 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5317 100, so it's in percents as advertised.
5318
53192008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5320
5321 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5322 (ns_output.current_cursor, ns_output.desired_cursor)
5323 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5324 (FRAME_NEW_CURSOR_COLOR): Remove.
5325
5326 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5327 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5328 enumeration (HOLLOW_BOX_CURSOR, etc.).
5329
5330 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5331 (draw_window_cursor): Simplify code.
f5385255
SM
5332 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5333 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5334 updates manually.
a9b555d3
JB
5335 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5336 Use core Emacs cursor types.
aac0c6e3 5337
b8ff72fa 5338 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5339
53402008-10-02 Martin Rudalics <rudalics@gmx.at>
5341
5342 * process.c (Faccept_process_output): Fix doc-string.
5343
53442008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5345
5346 * gmalloc.c (__sbrk): Also define for uClibc.
5347
5348 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5349 for uClibc.
5350
53512008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5352
5353 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5354 styles.
5355 (nsfont_open): Reenable the cache.
5356
53572008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5358
5359 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5360 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5361
53622008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5363
5364 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5365 a suspended terminal.
5366
53672008-09-30 Michael Albinus <michael.albinus@gmx.de>
5368
5369 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5370
53712008-09-30 Eli Zaretskii <eliz@gnu.org>
5372
5373 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5374
53752008-09-30 Chong Yidong <cyd@stupidchicken.com>
5376
5377 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5378 in a continued line coincides with a line beginning.
5379
53802008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5381
5382 * nsfont.m (nsfont_trait_distance): Fix bug.
5383 (nsfont_list): Return a list rather than a vector (syncs with Handa
5384 changes of 2008-05-14).
5385 (nsfont_open): Improve logging.
5386
53872008-09-29 Andreas Schwab <schwab@suse.de>
5388
5389 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5390
53912008-09-28 Martin Rudalics <rudalics@gmx.at>
5392
5393 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5394 name as char-resolve-modifiers.
5395 Reported by: Markus Triska <markus.triska@gmx.at>
5396
53972008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5398
5399 * dispnew.c (init_display): Return earlier when running as a daemon.
5400
54012008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5402
5403 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5404
54052008-09-27 Eli Zaretskii <eliz@gnu.org>
5406
5407 * composite.c (Fcomposition_get_gstring)
5408 (Fcompose_region_internal, Fcompose_string_internal)
5409 (Ffind_composition_internal): Doc fix.
5410 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5411 (syms_of_composite) <auto-composition-function>: Doc fix.
5412 (syms_of_composite) <composition-function-table>: Doc fix.
5413
54142008-09-25 Chong Yidong <cyd@stupidchicken.com>
5415
5416 * search.c (wordify): New argument for lax word-ends.
5417 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5418
54192008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5420
5421 * lisp.h (is_daemon): Declare.
5422 * dispnew.c (init_display): Do not try to initialize the terminal
5423 when running as a daemon.
5424
54252008-09-22 Chong Yidong <cyd@stupidchicken.com>
5426
5427 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5428 x_display_pixel_height.
5429
54302008-09-22 Martin Rudalics <rudalics@gmx.at>
5431
5432 * undo.c (record_point): Don't call Fundo_boundary for first
5433 change. (Bug#731)
5434
54352008-09-22 Juanma Barranquero <lekktu@gmail.com>
5436
5437 * emacs.c (Fdaemonp): Doc fix.
5438
54392008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5440
5441 * emacs.c (main): Place #ifdef in the proper place.
5442
54432008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5444
5445 * emacs.c (standard_args): Add --daemon.
5446 (main): Disconnect from the terminal when --daemon is passed.
5447 (is_daemon): New variable.
5448 (Fdaemonp): New function.
5449 (syms_of_emacs): Defsubr it.
5450
54512008-09-20 Chong Yidong <cyd@stupidchicken.com>
5452
5453 * xdisp.c (get_next_display_element): Handle string display
5454 correctly when checking for the end of a box run.
5455
54562008-09-20 Glenn Morris <rgm@gnu.org>
5457
5458 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5459 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5460 (Frename_file): Avoid copying to trash if a rename involves
5461 a delete. (Bug#964).
5462
54632008-09-20 Eli Zaretskii <eliz@gnu.org>
5464
5465 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5466 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5467 frames as well as termcap frames.
5468 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5469 get_named_tty.
5470
54712008-09-19 Eli Zaretskii <eliz@gnu.org>
5472
5473 * process.c (procfs_system_process_attributes): Fix cmdline in
5474 case /proc/PID/cmdline is empty.
5475
5476 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5477 x_display_pixel_height.
5478
54792008-09-19 Juanma Barranquero <lekktu@gmail.com>
5480
5481 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5482
5483 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5484 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5485
54862008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5487
5488 * dispextern.h (struct it): Move line_wrap away from the middle of
5489 bitfields. Move voffset in struct iterator_stack_entry after the
5490 bitfields. Move tab_width near after another short.
5491
54922008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5493
5494 * frame.h (struct frame): Move alpha from the middle of bitfields.
5495
5496 * window.h (struct window): Move frozen_window_start_p after the
5497 rest of the bitfields to reduce padding.
5498
54992008-09-18 Chong Yidong <cyd@stupidchicken.com>
5500
5501 * xterm.h (x_display_info): Remove `height' and `width' members.
5502
5503 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5504
5505 * w32term.h (w32_display_info): Remove `height', `width',
5506 `height_in', and `width_in' members.
5507
b8ff72fa
SM
5508 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5509 New functions.
aac0c6e3
MR
5510 (x_calc_absolute_position): Use them.
5511 (x_term_init): Omit removed `height' and `width' members.
5512
b8ff72fa
SM
5513 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5514 New functions.
aac0c6e3
MR
5515 (w32_read_socket, x_calc_absolute_position): Use them.
5516 (w32_initialize_display_info, w32_term_init): Omit removed members
5517 of w32_display_info.
5518
b8ff72fa
SM
5519 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5520 New functions.
5521 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5522
b8ff72fa
SM
5523 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5524 New functions.
aac0c6e3
MR
5525 (x_calc_absolute_position): Use them.
5526 (x_term_init): Omit removed `height' and `width' members.
5527
5528 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5529 (compute_tip_xy):
5530 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5531 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5532 x_display_pixel_width.
5533
55342008-09-18 Kenichi Handa <handa@m17n.org>
5535
5536 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5537 (composition_compute_stop_pos): Fix handling of static composition.
5538 (Fcomposition_get_gstring): Check FROM and TO at first.
5539
55402008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5541
46e722a9 5542 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5543 mixup (YAILOM).
5544
55452008-09-17 Chong Yidong <cyd@stupidchicken.com>
5546
5547 * indent.c (Fvertical_motion): Use position reported by iterator
5548 instead of PT for determining screen motion (bug#943).
5549
55502008-09-17 Romain Francoise <romain@orebokech.com>
5551
5552 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5553
55542008-09-17 Kenichi Handa <handa@m17n.org>
5555
5556 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5557
5558 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5559 if necessary.
5560
55612008-09-16 Kenichi Handa <handa@m17n.org>
5562
5563 * coding.c (make_conversion_work_buffer): Avoid calling
5564 Fget_buffer_create if it is not necessary.
5565
55662008-09-15 Martin Rudalics <rudalics@gmx.at>
5567
5568 * window.c (Fselect_window): Don't update window_select_count and
5569 use_time when norecord is not nil.
5570
55712008-09-14 Kenichi Handa <handa@m17n.org>
5572
5573 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5574 specpdl_ptr.
5575
55762008-09-12 Kenichi Handa <handa@m17n.org>
5577
5578 * indent.c (scan_for_column): Don't handle automatic composition
5579 if the current buffer is not associated with a window.
5580
5581 * composite.c (composition_reseat_it): If the current buffer is
5582 not associated with a window, ignore the automatic composition.
5583 (find_automatic_composition): Likewise.
5584
55852008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5586
5587 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5588 (Fgpm_mouse_stop): Use it.
5589 * termhooks.h (close_gpm): Declare.
5590 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5591 connection if Gpm_GetEvent fails.
5592
5593 * window.c (set_window_buffer): Always preserve current-buffer.
5594
55952008-09-12 Glenn Morris <rgm@gnu.org>
5596
5597 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5598
55992008-09-11 Glenn Morris <rgm@gnu.org>
5600
5601 * charset.c (charset-map-path): Doc fix.
5602
56032008-09-10 Kenichi Handa <handa@m17n.org>
5604
5605 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5606
5607 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5608 compose a grapheme cluster with the preceding base glyph.
5609
5610 * composite.c (composition_compute_stop_pos): Fix previous change.
5611 Reset cmp_it->id to -1 at first.
5612
56132008-09-10 Glenn Morris <rgm@gnu.org>
5614
5615 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5616
56172008-09-09 Chong Yidong <cyd@stupidchicken.com>
5618
5619 * keyboard.c (read_key_sequence): Reapply translation maps when
5620 switching keyboards.
5621
56222008-09-09 Kenichi Handa <handa@m17n.org>
5623
5624 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5625 characters.
5626
5627 * composite.c (FORWARD_CHAR): Fix calculation
5628 of (POSITION).pos_byte.
5629 (composition_compute_stop_pos): Limit the search of composition to
5630 at most 500 characters ahead. If we reach the limit or find a
5631 newline, set cmp_it->ch to -2 and return 0.
5632 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5633
56342008-09-08 Kenichi Handa <handa@m17n.org>
5635
5636 * indent.c (Fvertical_motion): Be sure to set
5637 it_overshoot_expected if it.cmp_it.id is non-negative.
5638
56392008-09-07 Andreas Schwab <schwab@suse.de>
5640
5641 * callproc.c (Fcall_process): Don't hold references to string data
5642 across garbage collection. Move initialisation of new_argv down
5643 to avoid compiler bug.
5644
56452008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5646
5647 * process.c (Fsystem_process_attributes): Doc fix.
5648
56492008-09-07 Chong Yidong <cyd@stupidchicken.com>
5650
5651 * callproc.c (Fcall_process): Canonicalize current directory name.
5652
5653 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5654 iterator advances to the next line if the current line ends in a
5655 continued tab.
5656
56572008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5658
5659 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5660 member to point to cmp_from.
5661
5662 * xdisp.c: Doc fix for references to gidx data member.
5663
56642008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5665
5666 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5667
56682008-09-07 Kenichi Handa <handa@m17n.org>
5669
5670 * composite.c (FORWARD_CHAR): Check STOP after
5671 incrementing (POSITION).pos.
5672
56732008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5674
5675 * process.c (Fsystem_process_attributes): Doc fix.
5676
56772008-09-06 Chong Yidong <cyd@stupidchicken.com>
5678
5679 * keyboard.c (Ftop_level): Doc fix.
5680
56812008-09-06 Eli Zaretskii <eliz@gnu.org>
5682
5683 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5684 minibuffer, don't let lower part of menu invade the echo area.
5685
5686 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5687 "char *q" to access menu text and advance through it. Revert the
5688 change that displayed ">" instead of ASCII character 0x10.
5689
56902008-09-05 Eli Zaretskii <eliz@gnu.org>
5691
5692 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5693 toggle boxes and radio buttons on MS-DOS as well.
5694
56952008-09-05 Kenichi Handa <handa@m17n.org>
5696
5697 * composite.c (autocmp_chars): Check lookback count.
5698 (composition_compute_stop_pos): Set cmp_it->lookback.
5699 (composition_reseat_it): Check lookback count.
5700 (struct position_record): New struct.
5701 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5702 (find_automatic_composition): New function.
5703 (composition_adjust_point): Use find_automatic_composition.
5704
5705 * dispextern.h (struct composition_it): New member lookback.
5706
57072008-09-02 Chong Yidong <cyd@stupidchicken.com>
5708
5709 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5710 if moving by a single line.
5711
57122008-09-02 Andreas Schwab <schwab@suse.de>
5713
5714 * xterm.c (x_delete_display): Fix merge error.
5715
5716 * fileio.c (Fexpand_file_name): Remove unused variables.
5717
57182008-09-02 Eli Zaretskii <eliz@gnu.org>
5719
5720 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5721 storage on all platforms, not just on DOS_NT.
5722
57232008-09-02 Jason Rumney <jasonr@gnu.org>
5724
b8ff72fa
SM
5725 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5726 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5727
57282008-09-01 Chong Yidong <cyd@stupidchicken.com>
5729
5730 * xfaces.c (Finternal_set_alternative_font_family_alist)
5731 (Finternal_set_alternative_font_registry_alist): Properly copy
5732 entire alist structure.
5733
57342008-09-01 Kenichi Handa <handa@m17n.org>
5735
d66c0241 5736 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5737 representative chars of the script is a vector.
d66c0241
JB
5738 (ftfont_list): Handle the case where the representative chars of
5739 the script is a vector.
aac0c6e3
MR
5740
5741 * character.c (syms_of_character): Docstring of
5742 script-representative-chars fixed.
5743
57442008-08-31 Eli Zaretskii <eliz@gnu.org>
5745
5746 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5747 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5748 the menu. Allocate larger buffer for `text', to account for
5749 possible ^C characters.
5750
57512008-08-31 Martin Rudalics <rudalics@gmx.at>
5752
5753 * xdisp.c (prepare_menu_bars): Don't call
5754 Vwindow_size_change_functions with arg Qt.
5755
57562008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5757
5758 * font.h (font_range):
5759 * fileio.c (report_file_error):
46e722a9
SM
5760 * composite.c (composition_update_it): Yet another int/Lisp_Object
5761 mixup (YAILOM).
aac0c6e3
MR
5762
57632008-08-30 Glenn Morris <rgm@gnu.org>
5764
5765 * data.c (Fmake_variable_frame_local): Doc fix.
5766
5767 * frame.c (Fmodify_frame_parameters): Doc fix.
5768
57692008-08-30 Eli Zaretskii <eliz@gnu.org>
5770
5771 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5772 needed by GetTokenInformation.
5773 (w32_system_process_attributes): Check return values of all system
5774 APIs.
5775
5776 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5777 only when the state changes.
5778 (IT_update_begin, IT_update_end): Add termscript trace.
5779
5780 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5781 clipboard is unavailable. Set dst to NULL if it doesn't point to
5782 malloc'ed data.
5783 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5784 passing random values to xfree.
5785
5786 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5787 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5788
57892008-08-29 Jason Rumney <jasonr@gnu.org>
5790
5791 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5792
57932008-08-29 Eli Zaretskii <eliz@gnu.org>
5794
5795 * composite.c (fill_gstring_body): Avoid compiler warnings.
5796
5797 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5798 LGLYPH_SET_CODE to avoid compiler warnings.
5799
2ae37cf0 5800 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5801
5802 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5803
5804 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5805 LGLYPH_SET_CODE.
5806
58072008-08-29 Kenichi Handa <handa@m17n.org>
5808
5809 * fileio.c (report_file_error): Don't downcase the first character
5810 of errstring if it is still unibyte.
5811
58122008-08-29 Kenichi Handa <handa@m17n.org>
5813
5814 These changes are to re-implement the automatic composition so
5815 that it doesn't use text properties.
5816
5817 * Makefile.in (ftfont.o): Depend on composite.h.
5818 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5819
5820 * character.h (Vunicode_category_table): Extern it.
5821
5822 * character.c (Vunicode_category_table): New variable.
5823 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5824
5825 * chartab.c (optimize_sub_char_table): Perform more greedy
5826 optimization.
5827
b8ff72fa
SM
5828 * composite.h (enum composition_method):
5829 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5830 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5831 (Vcomposition_function_table): Extern it.
5832 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5833 (composition_gstring_put_cache, composition_gstring_from_id)
5834 (composition_gstring_p, composition_gstring_width)
5835 (composition_compute_stop_pos, composition_reseat_it)
5836 (composition_update_it, composition_adjust_point): Extern them.
5837 (Fcomposition_get_gstring): EXFUN it.
5838
d66c0241 5839 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5840 (Vcomposition_function_table)
5841 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5842 (gstring_hash_table, gstring_work, gstring_work_headers):
5843 New variables.
aac0c6e3
MR
5844 (gstring_lookup_cache, composition_gstring_put_cache)
5845 (composition_gstring_from_id, composition_gstring_p)
5846 (composition_gstring_width, fill_gstring_header)
5847 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5848 (composition_reseat_it, composition_update_it)
b8ff72fa 5849 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5850 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5851 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5852 Defsubr compostion_get_gstring.
5853
5854 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5855 cmp_id.
5856 (struct glyph_string): Delete the member gidx. New members
5857 cmp_id, cmp_from, and cmp_to.
5858 (enum it_method): Delete GET_FROM_COMPOSITION.
5859 (struct composition_it): New struct.
5860 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5861 Delete c, len, cmp_id, cmp_len in u.comp.
5862
5863 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5864 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5865 (enum lglyph_indices): Likewise.
b8ff72fa 5866 (font_range): Adjust extern.
aac0c6e3
MR
5867 (font_fill_lglyph_metrics): Extern it.
5868
5869 * font.c (QCf): New variable.
5870 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5871 (font_prepare_composition): Delete this function.
5872 (font_range): Type and arguments changed.
5873 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5874 (font_fill_lglyph_metrics): New function.
b8ff72fa 5875 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5876 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5877 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5878 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5879
5880 * fontset.h (font_for_char): Extern it.
5881
5882 * fontset.c (font_for_char): New function.
5883
5884 * ftfont.c: Include composite.h.
5885 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5886 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5887
5888 * indent.c: Include composite.h and dispextern.h.
5889 (check_composition): Delete this function.
5890 (scan_for_column): Handle composition by
5891 composition_compute_stop_pos, composition_reseat_it, and
5892 composition_update_it.
5893 (compute_motion): Likewise.
5894 (Fvertical_motion): Fix checking of composition.
5895
5896 * keyboard.c (adjust_point_for_property): Check composition by
5897 composition_adjust_point.
5898
b8ff72fa 5899 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5900 struct glyph_string.
5901
b8ff72fa
SM
5902 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5903 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5904 struct glyph.
5905 (produce_composite_glyph): Likewise.
5906
b8ff72fa
SM
5907 * w32term.c (x_draw_composite_glyph_string_foreground):
5908 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5909 (x_draw_glyph_string): Likewise.
5910
5911 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5912 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5913
5914 * xdisp.c: Include font.h.
5915 (it_props): Delete the entry for Qauto_composed.
5916 (init_iterator): Initialize it->cmp_it.id to -1.
5917 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5918 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5919 (handle_auto_composed_prop): Delete it.
5920 (handle_composition_prop): Handle only static composition.
5921 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5922 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5923 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5924 (pop_it): Likewise.
5925 (get_next_element): Delete next_element_from_composition.
5926 (CHAR_COMPOSED_P): New macro.
5927 (get_next_display_element): For automatic composition, get a face
5928 from the font in the glyph-string.
5929 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5930 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5931 (next_element_from_string): Check if the character at the current
5932 position is composed by CHAR_COMPOSED_P.
5933 (next_element_from_buffer): Likewise.
d66c0241
JB
5934 (next_element_from_composition): Adjust for the change of struct it.
5935 Update it->cmp_it.
b8ff72fa
SM
5936 (dump_glyph): Adjust for the change of struct glyph.
5937 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5938 it and struct glyph. Don't handle automatic composition here.
5939 (fill_gstring_glyph_string): New function.
5940 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5941 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5942 (BUILD_GSTRING_GLYPH_STRING): New macro.
5943 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5944 automatic composition.
b8ff72fa 5945 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5946 struct glyph.
b8ff72fa 5947 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5948
b8ff72fa 5949 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5950 the change of struct glyph_string.
5951 (x_draw_glyph_string): Likewise.
5952
59532008-08-29 Glenn Morris <rgm@gnu.org>
5954
5955 * buffer.c (word-wrap): Doc fix.
5956 * xdisp.c (truncate-partial-width-windows): Doc fix.
5957 Increase default to 50.
5958
59592008-08-29 Chong Yidong <cyd@stupidchicken.com>
5960
5961 * xdisp.c (update_tool_bar_unwind): New function.
5962 (update_tool_bar): Temporarily set selected frame before building
5963 tool-bar items.
5964
59652008-08-28 Michael Albinus <michael.albinus@gmx.de>
5966
5967 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5968 snprintf, respectively.
5969 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5970
59712008-08-28 Chong Yidong <cyd@stupidchicken.com>
5972
5973 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5974 LDFLAGS to GNUstep CC invocation.
5975
59762008-08-27 Chong Yidong <cyd@stupidchicken.com>
5977
5978 * indent.c (Fvertical_motion): Revert last change. Handle the
5979 general case where we are moving forward, and PT spans multiple
5980 screen lines.
5981
5982 * eval.c (find_handler_clause): Temporarily increase
5983 max-lisp-eval-depth while printing the backtrace buffer, to
5984 guarantee that help-mode code can run.
5985
59862008-08-27 Eli Zaretskii <eliz@gnu.org>
5987
5988 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5989 colors under -rv.
5990 (IT_set_frame_parameters): Don't swap foreground and background
5991 colors if `(reverse . t)' is present in the frame properties.
5992 (internal_terminal_init): Call init_frame_faces only for the
5993 initial frame.
5994
59952008-08-27 Andreas Schwab <schwab@suse.de>
5996
5997 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5998
59992008-08-27 Andreas Schwab <schwab@suse.de>
6000
6001 * search.c (search_buffer): Set char_base to zero only at the end.
6002
60032008-08-27 Kenichi Handa <handa@m17n.org>
6004
b8ff72fa 6005 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6006
60072008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6008
6009 * xterm.c (x_term_init): Temporarily hide the partially
6010 initialized terminal while calling vendor-specific-keysyms.
6011
60122008-08-26 Eli Zaretskii <eliz@gnu.org>
6013
6014 * msdos.c (internal_terminal_init): Most initializations done only
6015 once, especially initial_screen_colors[] and termscript open.
6016
60172008-08-26 Chong Yidong <cyd@stupidchicken.com>
6018
6019 * eval.c (Fcondition_case): Doc fix.
6020
6021 * widgetprv.h (EmacsFramePart): Change font member to the new font
6022 struct.
6023
6024 * widget.c: Include character.h and font.h for XSETFONT.
6025 (setup_frame_gcs): Compute X font id from font struct, just once.
6026
60272008-08-26 Eli Zaretskii <eliz@gnu.org>
6028
6029 * term.c (get_named_tty): Fix last change.
6030
60312008-08-26 Chong Yidong <cyd@stupidchicken.com>
6032
6033 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6034 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6035
60362008-08-25 Eli Zaretskii <eliz@gnu.org>
6037
6038 * frame.c (do_switch_frame): Mark previously displayed frame as
6039 obscured for FRAME_MSDOS_P frames as well.
6040
60412008-08-24 Eli Zaretskii <eliz@gnu.org>
6042
6043 * frame.c (make_terminal_frame): Initialize f->terminal,
6044 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6045 Set the top frame to newly created frame.
6046 (Fmake_terminal_frame): Reuse the_only_display_info.
6047
6048 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6049 estimating available memory.
6050
b97439ce 60512008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6052
6053 * nsterm.m (ns_draw_window_cursor): Don't call
6054 NSDisableScreenUpdates and NSEnableScreenUpdates on
6055 non-NS_IMPL_COCOA systems.
6056
60572008-08-23 Andreas Schwab <schwab@suse.de>
6058
6059 * process.c (procfs_system_process_attributes): Fix use of
6060 uninitialized variables.
6061
60622008-08-23 Eli Zaretskii <eliz@gnu.org>
6063
6064 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6065
6066 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6067 calling tty-set-up-initial-frame-faces.
6068
b8ff72fa
SM
6069 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6070 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6071
6072 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6073 addition to output_termcap.
6074
6075 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6076
6077 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6078 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6079 highlight.
6080
6081 * process.c [!subprocesses]: Define QCname.
6082 (syms_of_process): Intern and staticpro it.
6083
6084 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6085 Adjust for changes in encoding/decoding routines.
6086 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6087 encode_coding and decode_coding.
6088
b8ff72fa 6089 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6090
6091 * dosfns.c: Include frame.h before termhooks.h.
6092 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6093 variable termscript.
6094
6095 * s/msdos.h (USER_FULL_NAME): Define.
6096 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6097
6098 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6099 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6100 pw->pw_gecos.
6101
6102 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6103 SELECTED_FRAME as additional (1st) argument.
6104 (tty_read_avail_input): Handle output_msdos_raw in
6105 addition to output_termcap.
6106
6107 * msdos.c: Include frame.h before termhooks.h.
6108 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6109 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6110 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6111 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6112 (IT_set_terminal_modes, IT_reset_terminal_modes)
6113 (IT_set_frame_parameters): Use tty->termscript instead of a global
6114 variable termscript.
6115 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6116 global variable terminal_coding. Don't refer to
6117 Vnonascii_translation_table.
6118 (internal_terminal_init): Set Vwindow_system in current_kboard.
6119 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6120 Announce date and time of session start, if termscript is open.
6121 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6122 term.c:init_tty). Open termscript only of not already open.
6123 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6124 here instead of dos_ttraw. Don't initialize display if this is an
6125 initial tty. Don't set FRAME_FONT.
6126 (Vwindow_system_version): Bump to 23.
6127 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6128 is available, set up mouse_position_hook.
6129 (dos_ttraw, IT_set_terminal_modes): If called with initial
6130 terminal, do nothing.
6131 (IT_set_frame_parameters): Handle the Qtty_type frame
6132 parameter by calling internal_terminal_init.
6133 (dos_set_window_size, show_mouse_face)
6134 (clear_mouse_face, IT_note_mode_line_highlight)
6135 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6136 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6137 (initialize_msdos_display): New function.
6138 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6139 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6140 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6141 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6142 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6143 (request_sigio, unrequest_sigio): Don't define, now defined on
6144 sysdep.c.
6145 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6146
6147 * term.c [MSDOS]: Include msdos.h.
6148 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6149 conditional to DOS_NT. Allow only one call to this function in a
6150 session. Don't allocate a new struct tty_display_info; instead,
6151 reuse the_only_display_info. Call get_tty_size to get screen
6152 dimensions. Call init_baud_rate to set bad_rate.
6153 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6154 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6155 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6156 (get_tty_terminal, get_named_tty, Ftty_type)
6157 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6158 output_termcap.
b8ff72fa
SM
6159 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6160 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6161 only when subprocesses are supported.
aac0c6e3
MR
6162
6163 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6164 f->output_data.x.
6165 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6166 terminal devices.
6167
5582fbc7 6168 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6169 x_output.
6170 (FRAME_FONT): Use output_data.tty.
6171 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6172 (struct x_display_info): Rename from display_info. Update all users in
6173 msdos.c.
aac0c6e3 6174 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6175 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6176 (dos_ttraw): Update prototype.
6177
6178 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6179 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6180
61812008-08-23 Jason Rumney <jasonr@gnu.org>
6182
6183 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6184 (fn_TIFFSetDirectory): New library function used.
6185 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6186 (tiff_load): Use :index to select among multiple images. Set count
6187 property when multiple images exist.
6188 (gif_format): Use :index, not :image.
6189
61902008-08-23 Chong Yidong <cyd@stupidchicken.com>
6191
6192 * xdisp.c (try_scrolling): Check INT_MAX instead of
6193 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6194 to obtain INT_MAX.
6195
61962008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6197
6198 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6199
62002008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6201
6202 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6203 GNUstep library location.
6204
62052008-08-21 Chong Yidong <cyd@stupidchicken.com>
6206
6207 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6208 before using it.
6209
6210 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6211
62122008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6213
6214 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6215 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6216 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6217 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6218 (EmacsApp-cursor_blink_handler): Remove declaration.
6219 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6220 match 01 Feb 2008 changes in xterm.c.
6221 (ns_read_socket): Add cast to avoid warning.
6222 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6223 GNUstep.
6224
62252008-08-20 Chong Yidong <cyd@stupidchicken.com>
6226
6227 * xselect.c (x_get_foreign_selection): Return nil if desired
6228 selection could not be obtained, instead of signalling an error.
6229
62302008-08-20 David Reitter <david.reitter@gmail.com>
6231
6232 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6233 * nsterm.m: Remove ns-specific code for cursor blinking.
6234 (ns_draw_window_cursor): Clear cursor properly rather than
6235 redrawing the area. Respect width of bar cursors.
6236 These changes enable the use of generic blink-cursor-mode and
6237 generic cursor types in NS and support smooth cursor movements (do
6238 not blink off after command).
6239 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6240 Nextstep, too.
6241
62422008-08-19 Kenichi Handa <handa@m17n.org>
6243
6244 * font.c (Vfont_log_deferred): New variable.
6245 (font_add_log): Check Vfont_log_deferred.
6246 (font_deferred_log): New function.
6247
6248 * font.h (font_deferred_log): Extern it.
6249
6250 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6251 for sorting.
6252 (face_for_char): Use deferred log.
6253
62542008-08-18 Kenichi Handa <handa@m17n.org>
6255
6256 * fontset.c (face_for_char): Add font log.
6257
6258 * font.c (font_add_log): Add the font properties :script, :lang,
6259 and :otf in the log.
6260
62612008-08-17 Chong Yidong <cyd@stupidchicken.com>
6262
6263 * xdisp.c: Remove dead code.
6264 (handle_invisible_prop, next_overlay_string): Defer call to
6265 setup_for_ellipsis.
6266 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6267
62682008-08-15 Chong Yidong <cyd@stupidchicken.com>
6269
6270 * xfaces.c (lookup_derived_face): Properly handle possible zero
6271 return value of get_lface_attributes.
6272 (merge_faces): Don't tell lookup_derived_face to signal an error
6273 if face is not found.
6274
6275 * dired.c (Fdirectory_files): Doc fix.
6276
6277 * process.c (make_process): Initialize kill_without_query struct
6278 member.
6279
62802008-08-15 Eli Zaretskii <eliz@gnu.org>
6281
6282 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6283 Alternative calculation of totphys for Visual Studio 6.
6284
6285 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6286
6287 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6288 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6289 All users changed.
6290 (stat): Only root directory passed to GetDriveType. Allow RAM
6291 disk as well as local fixed disk when w32-get-true-file-attributes
6292 is set to `local'.
6293 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6294 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6295 (w32_cached_id, w32_add_to_cache): New functions.
6296 (get_name_and_id): Look account names in the cache before calling
6297 lookup_account_sid.
6298 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6299 New initialization flags.
6300 (globals_of_w32): Initialize them to zero.
6301 (w32_system_process_attributes): Use w32_cached_id and
6302 w32_add_to_cache.
6303
63042008-08-14 Lawrence Mitchell <wence@gmx.li>
6305
6306 * lread.c (Fread_char, Fread_char_exclusive): If no character
6307 event is read before timeout is reached, return nil, rather than
6308 converting to a number.
6309
63102008-08-14 Chong Yidong <cyd@stupidchicken.com>
6311
6312 * fns.c (use_dialog_box): Doc fix.
6313
6314 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6315 on OS X.
6316
63172008-08-13 Chong Yidong <cyd@stupidchicken.com>
6318
6319 * frame.c (Qns_parse_geometry): New var.
6320 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6321
63222008-08-11 Chong Yidong <cyd@stupidchicken.com>
6323
6324 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6325 space character in calculating tabs.
6326
63272008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6328
6329 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6330
63312008-08-10 Glenn Morris <rgm@gnu.org>
6332
6333 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6334 silence gcc "limited range of data type" warnings in some
6335 make_fixnum_or_float calls.
6336
63372008-08-09 Eli Zaretskii <eliz@gnu.org>
6338
6339 * w32.c (w32_system_process_attributes): If the process does not
6340 exist, return nil.
6341
6342 * w32.c: Include thelp32.h, psapi.h and coding.h.
6343 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6344 declarations.
6345 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6346 (Process32Next_Proc): New typedefs.
6347 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6348 (g_b_init_process32_next, g_b_init_open_thread_token)
6349 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6350 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6351 (g_b_init_get_process_working_set_size)
6352 (g_b_init_global_memory_status_ex): New static variables.
6353 (globals_of_w32): Initialize them.
6354 (create_toolhelp32_snapshot, process32_first, process32_next)
6355 (open_thread_token, impersonate_self, revert_to_self)
6356 (get_process_memory_info, get_process_working_set_size)
6357 (global_memory_status, global_memory_status_ex): New wrapper
6358 functions.
6359 (w32_list_system_processes, w32_system_process_attributes)
6360 (enable_privilege, restore_privilege, ltime, process_times):
6361 New functions.
6362 (convert_time_raw): New function.
6363 (convert_time): Remove conversion of FILETIME into time in 100
6364 nsec units, call convert_time_raw instead.
6365
6366 * process.h (w32_list_system_processes, w32_system_process_attributes):
6367 Add prototypes.
6368 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6369 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6370 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6371 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6372
6373 * process.c (Fsystem_process_attributes): Doc fix.
6374
63752008-08-08 Chong Yidong <cyd@stupidchicken.com>
6376
6377 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6378 a continued multi-char glyph; if so, advance to the actual glyph.
6379
63802008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6381
6382 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6383
6384 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6385 (.m.o): Use it.
6386 * config.in: Regenerate.
6387
63882008-08-07 Chong Yidong <cyd@stupidchicken.com>
6389
6390 * xdisp.c (redisplay_window): Revert last change.
6391 (try_window): Check bottom scroll margin too.
6392
63932008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6394
6395 * config.in: Regenerate.
6396
6397 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6398 -list-load-path-shadows'.
6399 (nsgui.h): Reduce number of things depending on it.
6400
64012008-08-06 Chong Yidong <cyd@stupidchicken.com>
6402
6403 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6404 instead of window-end which does the wrong thing at eob.
6405 (try_cursor_movement): Minor optimization.
6406 (redisplay_window): If scroll margin is defined, don't assume
6407 window doesn't need scrolling.
6408
64092008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6410
6411 * config.in: Regenerate.
6412
6413 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6414 (mostlyclean): Don't delete *.d under NS.
6415
6416 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6417
64182008-08-06 Kenichi Handa <handa@m17n.org>
6419
6420 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6421
64222008-08-06 Andreas Schwab <schwab@suse.de>
6423
6424 * config.in: Regenerate.
6425
64262008-08-05 Chong Yidong <cyd@stupidchicken.com>
6427
6428 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6429 forcing a window start.
6430
6431 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6432 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6433
64342008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6435
6436 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6437 argument.
6438
64392008-08-05 Juanma Barranquero <lekktu@gmail.com>
6440
6441 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6442 <scroll-down-aggressively, before-change-functions>:
6443 <after-change-functions>: Reflow docstrings.
6444
64452008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6446 Ken Raeburn <raeburn@gnu.org>
6447
6448 Dock menu customization, based on a patch by Ken Raeburn, plus some
6449 other fixes.
6450 * nsmenu.m (dockMenu): New variable.
6451 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6452
6453 * nsterm.h (dockMenu): Declare.
6454
6455 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6456 (ns_term_init): Initialize dockMenu.
6457 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6458 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6459 left.
6460
6461 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6462
64632008-08-04 Chong Yidong <cyd@stupidchicken.com>
6464
6465 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6466
6467 * config.in: Regenerate.
6468
64692008-08-04 Seiji Zenitani <zenitani@mac.com>
6470
6471 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6472
64732008-08-04 Chong Yidong <cyd@stupidchicken.com>
6474
6475 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6476
64772008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6478
6479 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6480
6481 * keyboard.h: Comment an #endif.
6482
6483 * lisp.h (have_menus_p): Adjust comment.
6484
6485 * menu.c (find_and_return_menu_selection): Fix comparison with
6486 client_data.
6487
6488 * nsmenu.m (popup_activated_flag): New variable.
6489 (popup_activated): New function.
6490 (menu-or-popup-active-p): New exported lisp definition.
6491 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6492 when popup done.
6493 (ns_popup_dialog): Set popup_activated_flag.
6494
6495 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6496 version for GNUstep (handled by conditional typedef in nsterm.m).
6497 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6498 in rgb.txt).
6499
6500 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6501
6502 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6503
6504 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6505
6506 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6507 shortcircuit if popup_activated like GTK and X toolkit.
6508
6509 * m/inter386.h: Change DARWIN to DARWIN_OS.
6510
6511 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6512 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6513 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6514 comment on NO_SOCK_SIGIO.
6515
65162008-08-03 Chong Yidong <cyd@stupidchicken.com>
6517
6518 * nsterm.m (windowDidResize): Remove stopModal call.
6519
65202008-08-03 Andreas Schwab <schwab@suse.de>
6521
6522 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6523 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6524
65252008-08-02 Chong Yidong <cyd@stupidchicken.com>
6526
6527 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6528 Don't use uninitialized pointer variable when using getrlimit.
6529
65302008-08-02 Jason Rumney <jasonr@gnu.org>
6531
6532 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6533
65342008-08-02 Eli Zaretskii <eliz@gnu.org>
6535
6536 * alloc.c (NSTATICS): Bump to 0x640.
6537
6538 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6539
6540 * lisp.h: Add prototype for directory_files_internal.
6541
6542 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6543 New functions.
6544 (syms_of_process): Defsubr them. Add initializations for various
6545 Q* symbols used in procfs_system_process_attributes.
6546 (procfs_list_system_processes, procfs_system_process_attributes)
6547 [HAVE_PROCFS]: New functions.
6548 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6549 (procfs_get_total_memory): New functions.
6550
65512008-08-01 Juanma Barranquero <lekktu@gmail.com>
6552
6553 * xfaces.c (Fx_load_color_file): Fix previous change;
6554 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6555
65562008-08-01 Michael Albinus <michael.albinus@gmx.de>
6557
6558 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6559
65602008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6561
6562 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6563
65642008-08-01 Chong Yidong <cyd@stupidchicken.com>
6565
6566 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6567
6568 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6569 define NSApplicationDelegateReplySuccess.
6570 (EmacsView -converstationIdentifier): Use long instead of
6571 NSInteger for GNUstep, since it doesn't have NSInteger.
6572
6573 * xmenu.c: Revert last change.
6574
6575 * keyboard.h: Fix last change.
6576
65772008-08-01 Juanma Barranquero <lekktu@gmail.com>
6578
6579 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6580 on Windows.
6581
65822008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6583
6584 Warning clearing and clean-up in NS port.
6585 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6586 Add prototypes.
6587 * nsgui.h (FACE_DEFAULT): Remove, unused.
6588 (XGCValues): Change colors to unsigned long.
6589 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6590 nsterm.m.
6591 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6592 (ns_list_fonts): Remove, unused.
6593 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6594 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6595 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6596 (nsfont_draw): Compare face colors to 0, not nil.
6597 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6598 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6599 (-addSubmenuWithTitle:): Use NSMenuItem class.
6600 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6601 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6602 (ns_clip_to_row): Make gc arg a BOOL.
6603 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6604 ns_clip_to_row() call.
6605 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6606 used). Cast FRAME_FONT assignments.
6607 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6608 (ns_string_to_lispmod): Change arg to const char.
6609 (ns_term_init): Use NSMenuItem class.
6610 (EmacsApp -openFile:): Move to different section of file.
6611 (EmacsApp -application:openFiles:): Don't return a value, call
6612 -replyToOpenOrPrint:.
6613 (EmacsView -keyDown:): Fix up cast.
6614 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6615 (EmacsView -menuDown:): Cast tag in call to
6616 find_and_call_menu_selection().
6617 (ns_list_fonts): Remove, unused.
6618 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6619 (ns_fontname_to_xlfd): Make static.
6620 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6621 Remove prototypes (now in keyboard.h).
6622 (next_menubar_widget_id): Remove, unused.
6623 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6624 Remove prototypes (now in keyboard.h).
6625 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6626
66272008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6628
6629 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6630 (floatfns.o): Depend on syssignal.h.
6631 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6632
6633 * systty.h: Fix previous change that removed BSD_TERMIOS.
6634 Add comments to #ifdefs.
6635
66362008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6637
6638 * w32fns.c (w32-load-color-file): Remove.
6639 (x-open-connection): Use renamed Fx_load_color_file.
6640 * xfaces.c (x-load-color-file): Add.
6641 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6642 Emacs.clr.
6643 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6644
66452008-07-31 Michael Albinus <michael.albinus@gmx.de>
6646
6647 * dbusbind.c (Fdbus_call_method_asynchronously)
6648 (Fdbus_method_error_internal): New defuns.
6649 (xd_read_message): Handle also reply messages.
6650 (Vdbus_registered_functions_table): Extend docstring.
6651
66522008-07-31 Juanma Barranquero <lekktu@gmail.com>
6653
6654 * keyboard.c (gobble_input): Fix previous change.
6655
66562008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6657
6658 * bitmaps/README:
6659 * xfns.c:
6660 * termcap.c:
6661 * term.c:
6662 * syswait.h:
6663 * systty.h:
6664 * systime.h:
6665 * syssignal.h:
6666 * sysdep.c:
6667 * process.h:
6668 * process.c:
6669 * print.c:
6670 * ndir.h:
6671 * lread.c:
6672 * keyboard.c:
6673 * getpagesize.h:
6674 * floatfns.c:
6675 * fileio.c:
6676 * emacs.c:
6677 * doc.c:
6678 * dispnew.c:
6679 * dired.c:
6680 * data.c:
6681 * callproc.c:
6682 * buffer.c:
6683 * README:
6684 * Makefile.in:
6685 * s/template.h:
6686 * s/msdos.h:
6687 * m/vax.h: Remove VMS support.
6688 * s/vms.h:
6689 * vlimit.h:
6690 * uaf.h:
6691 * temacs.opt:
6692 * param.h:
6693 * ioctl.h: Remove file.
6694
66952008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6696
6697 * s/ms-w32.h (MULTI_KBOARD): Remove.
6698 * xterm.c:
6699 * xselect.c:
6700 * xfns.c:
6701 * window.c:
6702 * w32term.c:
6703 * w32fns.c:
6704 * terminal.c:
6705 * termhooks.h:
6706 * term.c:
6707 * sysdep.c:
6708 * keyboard.h:
6709 * keyboard.c:
6710 * frame.h:
6711 * frame.c:
6712 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6713 * config.in: Regenerate.
6714
67152008-07-30 Jason Rumney <jasonr@gnu.org>
6716
6717 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6718
6719 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6720 (w32font_open_internal): Get unicode version of textmetrics.
6721 Don't enable or disable glyph indices here.
6722 (w32font_open): Disable use of glyph indices.
6723
6724 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6725
67262008-07-30 Chong Yidong <cyd@stupidchicken.com>
6727
6728 * minibuf.c (Vread_buffer_function): Doc fix.
6729
67302008-07-30 John Paul Wallington <jpw@pobox.com>
6731
6732 * minibuf.c (read_buffer_completion_ignore_case): New var.
6733 (Fread_buffer): Use it.
6734
67352008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6736
6737 * systty.h (sensemode): Remove empty #if. Remove reference to
6738 BSD_TERMIOS, unused.
6739
6740 * sysdep.c: Remove reference to DGUX.
6741 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6742
6743 * config.in: Regenerate.
6744
67452008-07-30 Jason Rumney <jasonr@gnu.org>
6746
6747 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6748
67492008-07-29 Jason Rumney <jasonr@gnu.org>
6750
6751 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6752 is populated.
6753 (uniscribe_encode_char): Always use uniscribe.
6754 Avoid using context if cache is populated.
6755
67562008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6757
6758 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6759 open menu.
6760
6761 * gtkutil.c (menu_nav_ended): Remove.
6762 (create_menus): Remove signal connect for menu_nav_ended.
6763
67642008-07-28 Chong Yidong <cyd@stupidchicken.com>
6765
6766 * xdisp.c (redisplay_window): Check return value of
6767 compute_window_start_on_continuation_line before forcing a window
6768 start.
6769
67702008-07-28 Jason Rumney <jasonr@gnu.org>
6771
6772 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6773
6774 * w32term.c (w32_enable_unicode_output, cleartype_active):
6775 Remove obsolete display options.
6776 (x_draw_glyph_string_background): Don't use old cleartype_active
6777 workaround.
6778 (w32_initialize): Remove cleartype_active initialization.
6779 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6780
67812008-07-28 Andreas Schwab <schwab@suse.de>
6782
6783 * lisp.h (init_weak_hash_tables, syms_of_font)
6784 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6785 (remove_hash_entry): Don't declare.
6786 * eval.c (maybe_call_debugger): Make static and move before use.
6787 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6788 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6789 * xterm.h (x_set_frame_alpha): Declare.
6790
67912008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6792
6793 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6794 (create_menus): Connect selection-done to menu_nav_ended.
6795
67962008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6797
6798 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6799 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6800 parameter with read of 'alpha' one.
6801 (Qns_frame_parameter): Remove.
5582fbc7 6802 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6803 (next-selection-coding-system, Vselection_coding_system)
6804 (Vnext_selection_coding_system): Drop.
6805
68062008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6807
6808 * nsfns.m (do-applescript, do_applescript): Rename to
6809 ns-do-applescript, ns_do_applescript, and move within file.
6810
68112008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6812
6813 Remove support for Mac Carbon.
6814 * mactoolbox.c:
6815 * macterm.h:
6816 * macterm.c:
6817 * macselect.c:
6818 * macmenu.c:
6819 * macgui.h:
6820 * macfns.c:
6821 * mac.c: Remove file.
6822 * s/darwin.h:
6823 * m/intel386.h:
6824 * xfaces.c:
6825 * xdisp.c:
6826 * window.c:
6827 * tparam.c:
6828 * termhooks.h:
6829 * termcap.c:
6830 * term.c:
6831 * syssignal.h:
6832 * sysselect.h:
6833 * sysdep.c:
6834 * process.c:
6835 * lread.c:
6836 * lisp.h:
6837 * keyboard.c:
6838 * image.c:
6839 * fringe.c:
6840 * frame.h:
6841 * frame.c:
6842 * fontset.c:
6843 * font.h:
6844 * font.c:
6845 * fns.c:
6846 * fileio.c:
6847 * emacs.c:
6848 * dispnew.c:
6849 * dispextern.h:
6850 * config.in:
6851 * atimer.c:
2ae37cf0 6852 * Makefile.in: Remove code for Carbon.
aac0c6e3 6853
f0131492 68542008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6855
6856 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6857
68582008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6859
6860 * macterm.h (kCGBitmapByteOrder32Host): New define for
6861 non-universal SDKs.
6862
6863 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6864 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6865
6866 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6867 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6868
68692008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6870
6871 * w32inevt.c: Include dispextern.h.
6872
68732008-07-26 Andreas Schwab <schwab@suse.de>
6874
6875 * print.c (print_object): Fix off-by-one in last change.
6876
68772008-07-25 Juanma Barranquero <lekktu@gmail.com>
6878
6879 * term.c (syms_of_term): Don't initialize default_orig_pair,
6880 default_set_foreground and default_set_background on Windows.
6881
68822008-07-25 Jason Rumney <jasonr@gnu.org>
6883
6884 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6885 ScriptItemize. Clean up return value checking. Remove unused
6886 variables.
6887 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6888 shaping engine.
6889
6890 * w32font.c (w32font_has_char): Handle the case where we can't
6891 determine the script for a character.
6892
68932008-07-25 Chong Yidong <cyd@stupidchicken.com>
6894
6895 * term.c (syms_of_term): Initialize default_orig_pair,
6896 default_set_foreground, and default_set_background.
6897
6898 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6899 clash (bug#86).
6900 (getloadavg): Callers changed.
6901
6902 * image.c (svg_load_image): Fix last change.
6903 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6904 image size is valid. Use g_object_unref instead of deprecated
6905 rsvg_handle_free to free rsvg handle.
6906 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6907
69082008-07-25 Jason Rumney <jasonr@gnu.org>
6909
6910 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6911 surrogates before looking up glyph index.
6912 (w32font_text_extents): Encode as surrogates if falling back to
6913 functions that need UTF-16 wide chars.
6914
6915 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6916 BMP as surrogates before looking up glyph index.
6917
69182008-07-25 Chong Yidong <cyd@stupidchicken.com>
6919
6920 * image.c (svg_load_image): Check for failure in return value of
6921 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6922
69232008-07-25 Jason Rumney <jasonr@gnu.org>
6924
6925 * w32font.c (Fx_select_font): Reverse sense of second arg.
6926
69272008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6928
6929 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6930 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6931
6932 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6933 (PURESIZE): Use it.
6934
69352008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6936
6937 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6938 * m/alpha.h (TEXT_END):
6939 * m/ibmrs6000.h (TEXT_END):
6940 * m/macppc.h (TEXT_END):
6941 * s/darwin.h (TEXT_END):
6942 * s/msdos.h (TEXT_END): Remove, unused.
6943 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6944 * s/cygwin.h: Remove comment.
6945
6946 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6947 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6948 * m/intel386.h (DOT_GLOBAL_START):
6949 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6950 (USG): Remove, file not used on USG platforms.
6951
6952 * Makefile.in (HAVE_X11): Remove empty #else.
6953
69542008-07-24 Andreas Schwab <schwab@suse.de>
6955
6956 * fileio.c (Finsert_file_contents): Properly adjust undo list
6957 after format conversion.
6958
69592008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6960
6961 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6962 (menu_nav_ended): Remove.
6963 (create_menus): Remove signal connect for menu_nav_ended.
6964 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6965 create_menus.
6966 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6967
69682008-07-23 Jason Rumney <jasonr@gnu.org>
6969
6970 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6971 with opened font.
6972 (w32font_open): Set font type to gdi.
6973
6974 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6975
69762008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6977
6978 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6979 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6980 defines it.
6981 * unexec.c (ADDR_CORRECT): Define unconditionally.
6982
6983 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6984
6985 * unexec.c: Remove code depending on !COFF and USG, the file is
6986 not used for such systems.
6987
6988 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6989 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6990 (LD_SWITCH_SYSTEM_1): Remove, update users.
6991
6992 * s/darwin.h (DATA_END):
6993 * m/intel386.h (DATA_END):
6994 * m/ibmrs6000.h (DATA_END):
6995 * m/alpha.h (DATA_END): Remove, unused.
6996
6997 * config.in: Regenerate.
6998 * s/ms-w32.h (subprocesses): Define unconditionally.
6999 * s/template.h (subprocesses): Update comment.
7000 * s/vms.h (subprocesses):
7001 * s/usg5-4.h (subprocesses):
7002 * s/hpux10-20.h (subprocesses):
7003 * s/gnu-linux.h (subprocesses):
7004 * s/cygwin.h (subprocesses):
7005 * s/bsd-common.h (subprocesses):
7006 * s/aix4-2.h (subprocesses):
7007 * s/darwin.h (subprocesses): Do not define, defined by default now.
7008
7009 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7010 Remove all references.
7011 (temacs): Add GNUstep specific ld flags.
7012
7013 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7014 similarly to what X does.
7015
70162008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7017
7018 * nsfns.m (x-list-fonts): Remove.
7019 (syms_of_nsfns): Drop the x-list-fonts declaration.
7020 * nsterm.m: Get rid of remaining "//" comments.
7021
70222008-07-22 Chong Yidong <cyd@stupidchicken.com>
7023
7024 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7025
7026 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7027 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7028 (Fns_own_selection_internal, Fx_disown_selection_internal)
7029 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7030
7031 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7032 ... */' style of docstrings. Doc fixes.
7033
70342008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7035
7036 * terminfo.c (UP, BC, PC): Undo previous change.
7037
7038 * nsfns.m: Rename ns prefixed functions/variables to the
7039 corresponding x versions. Update references.
7040
70412008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7042
7043 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7044
70452008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7046
7047 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7048 Remove forwarding functions.
7049 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7050 non-static.
7051 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7052 non-static.
7053 (ns_frame_parm_handlers): Use the new names.
7054 (syms_of_nsfns): Move to the end of file.
7055
7056 * nsterm.m (syms_of_nsterm): Move to the end of file.
7057
7058 * dispnew.c (init_display): Remove code for X10.
7059
70602008-07-22 Jason Rumney <jasonr@gnu.org>
7061
7062 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7063 bare drive.
7064
70652008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7066
7067 * nsterm.m (syms_of_nsterm): Remove debugging println.
7068
70692008-07-22 David Reitter <david.reitter@gmail.com>
7070
7071 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7072 Carbon implementation of the same functionality: execute arbitrary
7073 AppleScript code.
7074
70752008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7076
7077 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7078 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7079 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7080 (Fx_display_mm_height, Fx_display_mm_width)
7081 (Fx_display_backing_store, Fx_display_visual_class)
7082 (Fx_display_save_under, Fx_open_connection)
7083 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7084 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7085 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7086 (Fx_display_pixel_width, Fx_display_pixel_height)
7087 (Fx_display_usable_bounds, Fx_display_planes)
7088 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7089 ... */' style of docstrings.
7090
70912008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7092
7093 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7094 on this platform.
7095 (mips):
7096 * m/iris4d.h (mips): Do not define.
7097 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7098
7099 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7100
7101 * image.c:
7102 * nsfns.m:
7103 * nsselect.m:
7104 * nsterm.h:
7105 * nsterm.m: Rename ns prefixed functions/variables to the
7106 corresponding x versions. Update references.
7107
7108 * m/ibms390x.h (NO_REMAP): Do not undefine.
7109
7110 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7111
71122008-07-21 Chong Yidong <cyd@stupidchicken.com>
7113
7114 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7115 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7116 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7117 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7118 (Fns_display_mm_height, Fns_display_mm_width)
7119 (Fns_display_backing_store, Fns_display_visual_class)
7120 (Fns_display_save_under, Fns_open_connection)
7121 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7122 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7123 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7124 (Fns_display_pixel_width, Fns_display_pixel_height)
7125 (Fns_display_usable_bounds, Fx_display_planes)
7126 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7127
71282008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7129
7130 * print.c (print_object): Check print_depth before searching for
7131 circularities.
7132
71332008-07-21 Michael Albinus <michael.albinus@gmx.de>
7134
7135 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7136 only sprintf.
7137
71382008-07-21 Kenichi Handa <handa@m17n.org>
7139
7140 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7141
71422008-07-20 Andreas Schwab <schwab@suse.de>
7143
7144 * syntax.c (find_start_pos, find_start_value)
7145 (find_start_value_byte, find_start_begv, find_defun_start)
7146 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7147
71482008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7149
7150 * s/sol2-3.h: Insert contents of s/sol2.h.
7151 (LD_SWITCH_SYSTEM): Remove redundant definition.
7152 * s/sol2.h: Remove, unused.
7153
71542008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7155
7156 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7157
71582008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7159
7160 * Makefile.in (ns_appdir): Fix typo in find command.
7161
71622008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7163
7164 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7165
7166 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7167 added not supported anymore.
7168
7169 * s/usg5-4-2.h (LIBS_SYSTEM):
7170 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7171
7172 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7173 * s/lynxos.h (GETPGRP_NO_ARG):
7174 * s/hpux10-20.h (NO_SIOCTL_H):
7175 * s/gnu.h (GETPGRP_NO_ARG):
7176 * s/gnu-linux.h (NO_SIOCTL_H):
7177 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7178 * s/cygwin.h (GETPGRP_NO_ARG):
7179 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7180 (C_DEBUG_SWITCH): Remove duplicate definition.
7181
7182 * m/ibms390.h: Remove boilerplate comments.
7183
7184 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7185
7186 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7187 (wait_reading_process_output): Remove code for SunOS, platform not
7188 supported anymore. Use SOLARIS2 instead of sun.
7189
71902008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7191
7192 * font.c (font_open_by_name): Under NS, default lface height to zero.
7193 (font_open_for_lface): Under NS, set size based on frame fontsize.
7194 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7195 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7196
71972008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7198
7199 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7200 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7201 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7202 YES/NO.
7203 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7204 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7205 * Makefile.in (clean): Clear out build destination dir.
7206
72072008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7208
7209 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7210 xterm, xselect.
7211 * lisp.h: Remove declaration of hash_remove.
7212 * nsgui.h: Remove redefinitions of hash_remove.
7213 * fns.c (hash_remove): Rename to hash_remove_from_table.
7214
72152008-07-19 Seiji Zenitani <zenitani@mac.com>
7216
7217 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7218 strdup() the family UTF8String before modifying it.
7219
72202008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7221
7222 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7223 NS_FACE_BACKGROUND with 0 instead of nil.
7224 * nsfont.m (nsfont_draw): Same.
7225
72262008-07-19 Chong Yidong <cyd@stupidchicken.com>
7227
7228 * nsfns.m (ns_set_background_color): Fix crash.
7229
72302008-07-18 Chong Yidong <cyd@stupidchicken.com>
7231
7232 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7233
72342008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7235
7236 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7237
72382008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7239
7240 * gtkutil.c: Include <config.h> instead of "config.h".
7241
7242 * lisp.h (Foverlay_buffer): Add EXFUN.
7243
7244 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7245 child process to complete child_setup. Undo 2005-09-21 change.
7246
7247 * s/darwin.h: Mention setsid after vfork.
7248
72492008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7250
7251 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7252 Depend on macgui.h.
7253
7254 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7255 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7256
7257 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7258 and f19.
7259 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7260
7261 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7262 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7263 Remove enumerators.
7264
7265 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7266 Check if FACE_FROM_ID returns NULL.
7267
72682008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7269
7270 * w32inevt.c (change_frame_size): Remove extern declaration.
7271 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7272 change_frame_size.
7273
72742008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7275
7276 * getloadavg.c: Revert last change (2008-07-15).
7277
72782008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7279
7280 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7281 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7282 from configure.
7283
72842008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7285
7286 * s/sol2.h:
7287 * s/sol2-4.h: Reorganize conditionals.
7288
7289 * ecrt0.c: Remove code depending on m68000, not used anymore.
7290
7291 * fns.c (hash_remove): Make static.
7292 * lisp.h (hash_remove): Don't prototype.
7293
7294 * m/ibmrs6000.h:
7295 * m/ibms390x.h:
7296 * m/macppc.h: Remove boilerplate comments.
7297
7298 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7299 Solaris, which does not need them.
7300
7301 * m/vax.h: Remove comments about unsupported systems.
7302
7303 * s/darwin.h: Reorganize ifdefs.
7304
73052008-07-17 Andreas Schwab <schwab@suse.de>
7306
7307 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7308
73092008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7310
7311 Use SDATA. Follow coding convention of placing operators at
7312 beginning of next line rather than end of previous line, and placing
7313 spaces around infix operators.
7314
7315 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7316 in case it was defined already.
7317 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7318 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7319 ns_default.
7320 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7321 Lisp_Objects.
7322 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7323 (ns_defined_color, ns_color_to_lisp): Declare.
7324 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7325 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7326 it's accepted even with USE_LISP_UNION_TYPE.
7327 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7328 (update_frame_tool_bar): Remove apparently obsolete tests for
7329 non-integerness of f->tool_bar_lines.
7330 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7331 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7332 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7333 (nsfont_open): Don't confuse NULL for Qnil.
7334 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7335 * menu.h (find_and_call_menu_selection):
7336 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7337 (find_and_return_menu_selection): Always return something.
7338 * frame.h: Include dispextern.h for Display_Info.
7339 (display_x_get_resource): Declare.
7340
73412008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7342
7343 * syntax.c: Remove stdio.h include accidentally introduced in
7344 Emacs.app commit.
7345 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7346 NS_IMPL_COCOA.
7347 * keyboard.c (handle_async_input, input_available_signal): Remove
7348 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7349
73502008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7351
7352 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7353 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7354 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7355 Use SDATA.
7356
7357 * keymap.c: Remove all NS-specific code.
7358 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7359 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7360 where_is_preferred_modifier, return a different value depending on how
7361 preferred is the binding.
7362 (where_is_internal): Adjust accordingly.
7363 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7364 Adjust to new preferred_sequence_p.
7365 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7366 * keyboard.c (parse_solitary_modifier): Not static any more.
7367 * keyboard.h (parse_solitary_modifier): Declare.
7368
73692008-07-16 Andreas Schwab <schwab@suse.de>
7370
7371 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7372 of easymenu.
7373
73742008-07-16 Chong Yidong <cyd@stupidchicken.com>
7375
7376 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7377 that we don't move off the line.
7378
73792008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7380
7381 * keyboard.c (Qsuper): Remove.
7382 (parse_menu_item): Don't call where_is_internal specially for NS.
7383
73842008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7385
7386 * s/gnu-linux.h: Remove boilerplate comments.
7387
7388 * m/alpha.h (__ELF__): Consolidate conditions.
7389
7390 * m/m68k.h (linux): Use GNU_LINUX instead.
7391 Remove boilerplate comments.
7392
7393 * m/intel386.h: Undo refactoring from previous change.
7394 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7395 too, remove dead code.
7396 (linux): Use GNU_LINUX instead.
7397
73982008-07-16 Jason Rumney <jasonr@gnu.org>
7399
7400 * w32gui.h: Repeat 26 June changes lost by last change.
7401
74022008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7403
7404 * systty.h: Remove code for Aix on 386, unsupported platform.
7405
7406 * s/ms-w32.h: Remove boilerplate comments.
7407 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7408
7409 * s/gnu-linux.h (TERM): Remove support.
7410 (HAVE_SYSVIPC): Remove, unused.
7411 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7412 for this system.
7413
7414 * process.c: Remove support for IRIS, unused.
7415 Remove support for TERM, not relevant anymore.
7416
7417 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7418 used with the definition.
7419
7420 * s/aix4-2.h (static): Do not undef.
7421
7422 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7423 only used on Aix.
7424 (HAVE_SYSVIPC): Remove, unused.
7425
7426 * m/hp800.h (CANNOT_DUMP): Do not undef.
7427
7428 * m/alpha.h: Fix comment.
7429
7430 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7431 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7432 used by this configuration.
7433 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7434 * unexec.c: Remove code depending on HPUX and
7435 USG_SHARED_LIBRARIES, not used with this file. Remove code
7436 depending on IRIS, unused. Remove if 0-ed code.
7437
7438 * s/template.h: Remove comments about static.
7439
7440 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7441 Remove if 0-ed code.
7442 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7443 were the same as the default.
7444 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7445 Remove boilerplate comments.
7446 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7447 (HAVE_SYSVIPC): Remove, unused.
7448 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7449
7450 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7451 Remove boilerplate comments.
7452 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7453 Remove boilerplate comments.
7454 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7455 Remove boilerplate comments.
7456 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7457
7458 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7459 USG systems which do not use DATA_SEG_BITS.
7460 Refactor code. Remove boilerplate comments.
7461
7462 * m/ibms390.h:
7463 * m/m68k.h:
7464 * s/bsd-common.h:
7465 * s/cygwin.h:
7466 * s/darwin.h:
7467 * s/freebsd.h:
7468 * s/gnu.h:
7469 * s/msdos.h: Remove boilerplate comments.
7470
7471 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7472 do not use this file.
aac0c6e3
MR
7473 (IRIS_4D): Remove, unused.
7474
7475 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7476 do not use this file.
aac0c6e3
MR
7477 (SIGN_EXTEND_CHAR):
7478 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7479 * unexmips.c: Remove file, unused.
7480
7481 * editfns.c (Fuser_full_name): Replace the only use of
7482 USER_FULL_NAME with its value.
7483 * config.in: Regenerate.
7484
74852008-07-16 David Reitter <david.reitter@gmail.com>
7486
7487 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7488 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7489
74902008-07-16 Glenn Morris <rgm@gnu.org>
7491
7492 * emacs.c (system-type): Doc fix.
7493
74942008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7495
7496 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7497 If the cache doesn't work, let's fix it, rather than work around it.
7498
74992008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7500
7501 * Makefile.in: Correct additions for nsfont.o in last commit.
7502 * nsfont.m: New file (forgot last commit).
7503
75042008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7505
7506 * callproc.c (set_initial_environment): Initialize
7507 Vprocess_environment under CANNOT_DUMP (fixes crash when
7508 batch-compiling for bootstrap).
7509
75102008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7511 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7512
7513 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7514 fix crash due to different init order.
7515
75162008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7517
7518 Changes and additions for NeXTstep windowing system (Cocoa and
7519 GNUstep) support.
7520
7521 * Makefile.in:
7522 * config.in: Support defines and build commands for NS port.
7523 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7524 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7525 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7526 windowing.
7527 (struct face): Add synth_ital field.
7528 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7529 (init_display): Initialize Vinitial_window_system to "ns" when so
7530 compiled.
7531 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7532 (display_arg): Use under NS.
7533 (main): Under NS, allocate autorelease pool and handle command line
7534 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7535 (standard_args): Add NS-specific args.
7536 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7537 * font.c (DEFAULT_ENCODING): New variable.
7538 (font_find_for_lface): Use it.
7539 (syms_of_font): Load syms_of_nsfont under NS.
7540 * font.h: Declare nsfont_driver when compiled under NS.
7541 * fontset.c: When compiling under NS, include nsterm.h.
7542 (fontset_from_font): Autoconstruct fontset under NS.
7543 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7544 symbol, document and use it.
7545 (do_switch_frame): When for_deletion under Cocoa, add
7546 Fraise_frame(Qnil).
7547 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7548 (x_get_arg): Allow "yes" and "no" as boolean values.
7549 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7550 Qright under Cocoa.
7551 (focus-follows-mouse): Default to 0 under NS.
7552 * frame.h (enum output_method): Add output_ns.
7553 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7554 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7555 (FRAME_WINDOW_P): NS-specific definition.
7556 * fringe.c (max_used_fringe_bitmap): Make public.
7557 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7558 (getloadavg): Use NeXT code under descendant OS's.
7559 * image.c (includes and header section, x_create_bitmap_from_data)
7560 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7561 (image_background_transparent, x_clear_image_1)
7562 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7563 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7564 (x_to_xcolors, x_from_xcolors, x_disable_image)
7565 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7566 other GUIs, including XPM support using code originally written for
7567 Carbon GUI.
7568 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7569 using NS API.
7570 (image_ascent): Use font metrics macros instead of direct struct field
7571 access.
7572 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7573 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7574 Also, handle NS as GTK for menu bar purposes.
7575 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7576 toolkit where they differ.
7577 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7578 use cachelist, still needed under NS.
7579 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7580 (struct widget_value): Define it here for menu.c.
7581 * keymap.c (includes): Include modifier internals.
7582 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7583 NS.
7584 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7585 support for preferring sequences using certain modifiers, specified by
7586 the FIRSTONLY argument.
7587 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7588 under NS GNUstep implementation.
7589 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7590 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7591 * menu.c: Include nsterm.h under NS.
7592 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7593 (free_menubar_widget_tree_value, update_submenu_strings)
7594 (find_and_call_menu_selection): Treat NS as X and NT.
7595 (find_and_return_menu_selection): New function, used for popup menus.
7596 * nsgui.h:
7597 * nsterm.h:
7598 * nsfns.m:
7599 * nsimage.m:
7600 * nsmenu.m:
7601 * nsselect.m:
7602 * nsterm.m: New files.
7603 * process.c (wait_reading_process_output): Under NS, call ns_select()
7604 instead of plain select().
7605 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7606 beginning of buffer.
7607 * sysselect.h (init_process): Rename when compiling under Cocoa to
7608 avoid name conflict.
7609 * termhooks.h (display_info): Add ns_display_info to union.
7610 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7611 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7612 COCOA environment.
7613 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7614 unexec() signature. (Note, this will dump, but the resulting file
7615 crashes; unexosx is used instead; keeping around for reference and
7616 possible aid in getting dump working under GNUstep.)
7617 * w32gui.h (button_type, widget_value): Remove definitions (now in
7618 keyboard.h).
7619 * window.c: Include nsterm.h when compiling under NS.
7620 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7621 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7622 other GUI windowing systems.
7623 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7624 GTK.
7625 (x_consider_frame_title): Under NS, set icon type and frame
7626 modified-state indicator; use ns_set_name_as_filename() when using
7627 formatted title.
7628 (update_window_cursor): Make public when compiling under NS.
7629 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7630 (hourglass_atimer, Vhourglass_delay
7631 * xfaces.c (header section, init_frame_faces, clear_font_table)
7632 (defined_color, unload_color, x_face_list_fonts)
7633 (prepare_face_for_display): Add NS support parallel to other GUIs.
7634 Emulate GCs like other non-X GUIs.
7635 (split_font_name): Don't lowercase font name under NS.
7636 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7637 under NS.
7638 * s/darwin.h: Add support for compilation under NS.
7639
76402008-07-15 Jason Rumney <jasonr@gnu.org>
7641
7642 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7643 (w32_show_hourglass): Rename from show_hourglass.
7644 (w32_hide_hourglass): Rename from hide_hourglass.
7645 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7646 (Vhourglass_delay): Declare extern.
7647 (hourglass_started): Remove.
7648
7649 * xdisp.c (Vhourglass_delay): Remove static.
7650 (hourglass_started, start_hourglass, cancel_hourglass):
7651 Don't include these versions on WINDOWSNT.
7652
76532008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7654
7655 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7656 variables (formerly in xfns.c).
7657 (show_hourglass, hide_hourglass): New prototypes (same).
7658 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7659 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7660 in xfns.c).
7661 (syms_of_xdisp): Declare/initialize display-hourglass,
7662 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7663 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7664 formerly in xfns.c.
7665 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7666 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7667 (start_hourglass, cancel_hourglass): Remove.
7668 (show_hourglass, hide_hourglass): Remove prototypes and static
7669 modifiers.
7670 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7671 hourglass_atimer, hourglass_shown_p declaration/initialization.
7672 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7673 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7674 (start_hourglass, cancel_hourglass): Remove.
7675 (show_hourglass, hide_hourglass): Remove prototypes and static
7676 modifiers.
7677 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7678 hourglass_atimer, hourglass_shown_p declaration/initialization.
7679 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7680 (DEFAULT_HOURGLASS_DELAY): Remove.
7681 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7682 hourglass_shown_p declaration/initialization.
7683
76842008-07-14 Jason Rumney <jasonr@gnu.org>
7685
7686 * w32fns.c (w32_get_arg): Remove wrapper function.
7687 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7688 directly.
7689 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7690
76912008-07-14 Kenichi Handa <handa@m17n.org>
7692
7693 * xfont.c (xfont_open): Add workaround for X's bug.
7694
76952008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7696
7697 * fontset.c: Include <stdio.h> unconditionally.
7698
76992008-07-13 Michael Albinus <michael.albinus@gmx.de>
7700
7701 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7702 for filtering.
7703
77042008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7705
7706 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7707
7708 * m/macppc.h:
7709 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7710
7711 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7712 (SPECIAL_EMACS_INT):
7713 * m/ia64.h (SPECIAL_EMACS_INT):
7714 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7715 * s/gnu.h (NLIST_STRUCT):
7716 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7717 * s/gnu-linux.h (LINUX):
7718 * s/msdos.h (HAVE_FACES):
7719 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7720
7721 * systty.h:
7722 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7723 anymore.
7724
77252008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7726
7727 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7728 always defined as int.
7729
7730 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7731 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7732 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7733 * s/freebsd.h (HAVE_WAIT_HEADER):
7734 * s/bsd-common.h (HAVE_UNION_WAIT):
7735 * s/aix4-2.h (HAVE_WAIT_HEADER):
7736 * m/mips.h (HAVE_UNION_WAIT):
7737 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7738 (COFF, static): Do not define, they are undefined later in the file.
7739
7740 * process.c (update_status): Don't use a union.
7741 (status_convert):
7742 (sigchld_handler): Use int instead of WAITTYPE.
7743
77442008-07-12 Chong Yidong <cyd@stupidchicken.com>
7745
7746 * indent.c (Fvertical_motion): Restore hscroll before moving to
7747 goal column.
7748
77492008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7750
7751 * lisp.h: Remove left over code.
7752
77532008-07-11 Andreas Schwab <schwab@suse.de>
7754
7755 * lisp.h: Fix logic in last change.
7756
7757 * menu.h: New file.
7758 * menu.c: Include it.
7759 * xmenu.c: Likewise.
7760 * Makefile.in: Update dependencies.
7761
77622008-07-11 Kenichi Handa <handa@m17n.org>
7763
7764 * fontset.c (fontset_from_font): Cancel the previous change.
7765
77662008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7767
7768 * lisp.h:
7769 * w32heap.c:
7770 * emacs.c:
7771 * alloc.c: Replace all references of NO_UNION_TYPE with
7772 USE_LISP_UNION_TYPE.
7773
7774 * m/xtensa.h (NO_UNION_TYPE):
7775 * m/vax.h (NO_UNION_TYPE):
7776 * m/template.h (NO_UNION_TYPE):
7777 * m/sparc.h (NO_UNION_TYPE):
7778 * m/mips.h (NO_UNION_TYPE):
7779 * m/macppc.h (NO_UNION_TYPE):
7780 * m/m68k.h (NO_UNION_TYPE):
7781 * m/iris4d.h (NO_UNION_TYPE):
7782 * m/intel386.h (NO_UNION_TYPE):
7783 * m/ibms390x.h (NO_UNION_TYPE):
7784 * m/ibms390.h (NO_UNION_TYPE):
7785 * m/ibmrs6000.h (NO_UNION_TYPE):
7786 * m/ia64.h (NO_UNION_TYPE):
7787 * m/hp800.h (NO_UNION_TYPE):
7788 * m/arm.h (NO_UNION_TYPE):
7789 * m/amdx86-64.h (NO_UNION_TYPE):
7790 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7791 defining it the same.
7792
77932008-07-10 Chong Yidong <cyd@stupidchicken.com>
7794
7795 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7796
77972008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7798
7799 * fileio.c:
7800 * sysdep.c
7801 * systty.h:
7802 * m/ibmrs6000.h:
7803 * m/iris4d.h:
7804 * s/aix4-2.h:
7805 * s/freebsd.h:
7806 * s/gnu-linux.h:
7807 * s/hpux10-20.h:
7808 * s/hpux11.h:
7809 * s/netbsd.h:
7810 * s/sol2-3.h:
7811 * s/sol2-4.h:
7812 * s/sol2.h:
7813 * s/usg5-4.h:
7814 * s/vms.h: Remove references to unused variables.
7815
78162008-07-10 Andreas Schwab <schwab@suse.de>
7817
7818 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7819 pattern before matching the generic family.
7820
78212008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7822
7823 * unexec.c:
7824 * s/vms.h:
7825 * s/usg5-4-2.h:
7826 * s/sol2-5.h:
7827 * s/freebsd.h:
7828 * s/darwin.h: Remove dead code.
7829
7830 * m/template.h:
7831 * m/sparc.h:
7832 * m/mips.h:
7833 * m/m68k.h:
7834 * m/iris4d.h:
7835 * m/intel386.h:
7836 * m/ibms390x.h:
7837 * m/ibms390.h:
7838 * m/ia64.h:
7839 * m/hp800.h:
7840 * m/arm.h:
7841 * m/amdx86-64.h: Remove dead code and references to unused
7842 and compiler defined symbols.
7843
7844 * unexmips.c:
7845 * unexelf.c: Remove references to desupported systems.
7846
7847 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7848
7849 * m/powermac.h: Remove boilerplate comments.
7850 (NO_REMAP): Remove unused definition.
7851
7852 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7853 define them.
7854
78552008-07-10 Kenichi Handa <handa@m17n.org>
7856
7857 * xfont.c (xfont_open): Log the reason of failure.
7858
78592008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7860
7861 * fontset.c (fontset_get_font_group):
7862 * font.c (font_check_otf): Specify argument types.
7863
78642008-07-09 Kenichi Handa <handa@m17n.org>
7865
7866 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7867 non-ASCII char is found.
7868
7869 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7870 (reorder_font_vector): Change the arg preferred_family to font.
7871 Prefer the spec matching with font.
7872 (fontset_get_font_group): New function.
7873 (fontset_find_font): Change the format of an element of a realized
7874 fontset. Use fontset_get_font_group.
7875 (fontset_font): Try the current fontset, the default fontset, the
7876 fallbacks of the current fontset, and the fallbacks of the default
7877 fontset in this order.
7878 (face_for_char): Delete the shortcut to use the current font.
7879 (fontset_from_font): Don't set fonts for Latin in the fontset.
7880
7881 * font.h (font_make_object, font_match_p): Adjust prototypes.
7882
7883 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7884
7885 * font.c (font_make_object): New arg entity and pixelsize.
7886 (font_check_otf_features, font_check_otf): New functions.
7887 (font_match_p): Check :lang, :script, and :otf properties.
7888
7889 * xfont.c (xfont_open): Adjust it for the change of
7890 font_make_object.
7891 (xfont_text_extents): Fix initial setting of metrics.
7892
7893 * ftfont.c (struct ftfont_info): New member index, delete member
7894 fc_charset_idx. Make the member order compatible with struct
7895 xftfont_info.
7896 (fc_charset_table): Change charset names to registry names.
7897 (ftfont_pattern_entity): Delete the args registry and
7898 fc_charset_idx. Change the value of :font-entity property
7899 to (FONTNAME . INDEX). Always set :registry property to
7900 `iso10646-1'.
7901 (struct ftfont_cache_data): New struct.
7902 (ftfont_lookup_cache): New arg for_face.
7903 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7904 (ftfont_driver): Set the member otf_capability.
7905 (ftfont_get_charset): Adjust it for the change of
7906 fc_charset_table.
7907 (OTF_TAG_SYM): New macro.
7908 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7909 for the change of fc_charset_table.
7910 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7911 ftfont_pattern_entity. Add FC_INDEX to objset.
7912 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7913 and ftfont_pattern_entity.
7914 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7915 font_make_object, struct ftfont_info.
7916 (ftfont_has_char): Use ftfont_get_fc_charset.
7917 (ftfont_otf_features, ftfont_otf_capability): New functions.
7918 (ftfont_shape): Use ftfont_get_otf.
7919 (ftfont_text_extents): Fix initial setting of metrics.
7920
7921 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7922 member order compatible with struct ftfont_info.
7923 (xftfont_open): Add FC_CHARSET to the pattern. Set
7924 xftfont_info->ft_size. Don't unlock the face. Check BDF
7925 properties if appropriate.
7926 (xftfont_close): Unlock the face.
7927 (xftfont_anchor_point, xftfont_shape): Deleted.
7928 (syms_of_xftfont): Don't set members anchor_point and shape of
7929 xftfont_driver.
7930
7931 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7932 font_make_object.
7933
7934 * w32font.c (w32font_open): Adjust it for the change of
7935 font_make_object.
7936 (w32font_open_internal): Don't set properties of font_object here.
7937
79382008-07-08 Chong Yidong <cyd@stupidchicken.com>
7939
7940 * macfns.c (x_create_tip_frame):
7941 * w32fns.c (x_create_tip_frame):
7942 * xfns.c (x_create_tip_frame): Pass parameter argument to
7943 face-set-after-frame-default.
7944
7945 * xfaces.c (Finternal_merge_in_global_face): Save merged
7946 attributes for the default face back into the face vector.
7947
79482008-07-08 Andreas Schwab <schwab@suse.de>
7949
7950 * fontset.h: Declare fontset_from_font. Don't declare
7951 new_fontset_from_font and fontset_from_font_name.
7952 * xterm.c: Include "fontset.h".
7953 * Makefile.in (xterm.o): Update dependencies.
7954
79552008-07-08 Glenn Morris <rgm@gnu.org>
7956
7957 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7958 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7959
79602008-07-07 Chong Yidong <cyd@stupidchicken.com>
7961
7962 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7963 (x_set_frame_parameters): Don't bind it.
7964
79652008-07-07 Juanma Barranquero <lekktu@gmail.com>
7966
7967 * w32fns.c (map_w32_filename): Declare extern.
7968
79692008-07-07 Jason Rumney <jasonr@gnu.org>
7970
7971 * w32term.c (WS_EX_LAYERED): Define if not already.
7972
79732008-07-06 Chong Yidong <cyd@stupidchicken.com>
7974
7975 * xfaces.c (set_font_frame_param): Don't try to set the font
7976 parameter if it is still unspecified in the lface.
7977
79782008-07-05 Chong Yidong <cyd@stupidchicken.com>
7979
7980 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7981 face if it didn't already exist.
7982
7983 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7984
79852008-07-05 Andreas Schwab <schwab@suse.de>
7986
7987 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7988
79892008-07-05 Chong Yidong <cyd@stupidchicken.com>
7990
7991 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7992 word-wrapping.
7993 (IT_DISPLAYING_WHITESPACE): New macro.
7994 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7995 when word-wrapping. Simplify word-wrapping logic. Use correct
7996 pixel positions when saving copies of the iterator.
7997 (display_line): Use proper wrap point if the last character on a
7998 line was preceded by whitespace.
7999
80002008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8001
8002 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8003
80042008-07-04 Kenichi Handa <handa@m17n.org>
8005
8006 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8007
8008 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8009
80102008-07-02 Jason Rumney <jasonr@gnu.org>
8011
8012 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8013 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8014
8015 * xdisp.c (next_element_from_display_vector): Move assignment out
8016 of if statement.
8017
80182008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8019
8020 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8021
8022 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8023 (syms_of_fileio): Initialize and export them.
8024 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8025
8026 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8027 (Fsystem_move_file_to_trash): New function.
8028 (syms_of_w32fns): Export it to lisp.
8029
80302008-07-01 Jason Rumney <jasonr@gnu.org>
8031
8032 * w32font.c (w32font_text_extents): Don't count overhang as part
8033 of width.
8034
80352008-06-30 Miles Bader <miles@gnu.org>
8036
8037 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8038 Add `avoid_cursor_p' field.
8039
8040 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8041 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8042 (append_glyph, append_composite_glyph, produce_image_glyph)
8043 (append_stretch_glyph): Initialize avoid_cursor_p.
8044 (get_it_property): Rename from `get_line_height_property'.
8045 (x_produce_glyphs): Use get_it_property.
8046 (handle_line_prefix, push_display_prop): New functions.
8047 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8048 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8049 New variables.
8050 (syms_of_xdisp): Initialize them.
8051
80522008-06-30 Kenichi Handa <handa@m17n.org>
8053
8054 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8055 XftDefaultSubstitute (they are called in XftFontMatch).
8056 (xftfont_open): Fix args to ftfont_font_format.
8057
8058 * ftfont.c (fc_charset_table): New member lang.
8059 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8060 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8061 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8062 (ftfont_open): Fix args to ftfont_font_format.
8063 (ftfont_font_format): New arg filename.
8064
80652008-06-30 Chong Yidong <cyd@stupidchicken.com>
8066
8067 * xfaces.c (Finternal_merge_in_global_face): If default face was
8068 modified, realize it again. Update the font face attribute.
8069
80702008-06-29 Jason Rumney <jasonr@gnu.org>
8071
8072 * w32term.c (x_set_frame_alpha): Fix logic.
8073
80742008-06-29 Kenichi Handa <handa@m17n.org>
8075
8076 * fontset.c (Finternal_char_font): Return font-object instead of
8077 font-name.
8078
8079 * composite.c (get_composition_id): Fix the width calculation for TAB.
8080
80812008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8082
8083 * indent.c (Fvertical_motion): Properly handle float column arg.
8084
80852008-06-28 Jason Rumney <jasonr@gnu.org>
8086
8087 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8088 (pfnSetLayeredWindowAttributes): New function pointer.
8089 (w32_initialize): Initialize it when supported.
8090 (x_set_frame_alpha): New function.
8091
8092 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8093 (w32_frame_parm_handlers): Set alpha handler.
8094
8095 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8096
80972008-06-27 Jason Rumney <jasonr@gnu.org>
8098
8099 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8100 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8101 (w32_to_x_charset, x_to_w32_charset)
8102 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8103 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8104 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8105 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8106 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8107 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8108 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8109 (Qw32_charset_unicode): Remove.
8110 (syms_of_w32fns): Update for above changes.
8111
8112 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8113 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8114 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8115 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8116 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8117 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8118 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8119 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8120 (syms_of_w32font): Update for above changes.
8121
81222008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8123
8124 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8125 removed #if.
8126 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8127
81282008-06-26 Juanma Barranquero <lekktu@gmail.com>
8129 Eli Zaretskii <eliz@gnu.org>
8130
8131 * makefile.w32-in (LOCAL_FLAGS):
8132 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8133
8134 * sysdep.c (_spawnlp, _getpid):
8135 Declare with explicit _cdecl instead of _CRTAPI1.
8136
8137 * editfns.c (Fget_internal_run_time):
8138 Check for WINDOWSNT with #ifdef, not #if.
8139
81402008-06-26 Jason Rumney <jasonr@gnu.org>
8141
8142 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8143
8144 * w32term.c (x_draw_glyph_string_foreground)
8145 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8146 Use FONT_HANDLE macro.
8147 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8148
8149 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8150 (uniscribe_encode_char): Use FONT_HANDLE macro.
8151
8152 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8153 (w32font_text_extents): Use precast w32_font.
8154 (w32font_close): Free cached metrics.
8155 (w32font_open_internal): Allocate space for name on stack.
8156
81572008-06-26 Chong Yidong <cyd@stupidchicken.com>
8158
8159 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8160
81612008-06-26 Jason Rumney <jasonr@gnu.org>
8162
8163 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8164 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8165
81662008-06-26 Juanma Barranquero <lekktu@gmail.com>
8167
8168 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8169
81702008-06-26 Jason Rumney <jasonr@gnu.org>
8171
8172 * w32bdf.c, w32bdf.h: Remove obsolete files.
8173
8174 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8175
8176 * w32gui.h: Don't include w32bdf.h.
8177 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8178 Remove obsolete font support.
8179
8180 * w32font.h (struct w32font_info): Remove compat_w32_font.
8181 Add hfont member.
8182 (FONT_COMPAT): Remove obsolete macro.
8183
8184 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8185 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8186 (w32font_open_internal): Remove compat code. Set new hfont member.
8187 (Fx_select_font): Use new hfont member.
8188
8189 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8190 (uniscribe_encode_char): Use new hfont member.
8191
8192 * w32term.c (x_draw_glyph_string_foreground)
8193 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8194 (x_draw_glyph_string): Use metrics in w32font_info.
8195
81962008-06-26 Kenichi Handa <handa@m17n.org>
8197
8198 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8199
82002008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8201
8202 * unexnext.c:
8203 * m/ews4800.h:
8204 * m/hp9000s300.h:
8205 * m/ibm370aix.h:
8206 * m/mips-siemens.h:
8207 * m/ncr386.h:
8208 * m/next.h:
8209 * m/pmax.h:
8210 * m/powerpcle.h:
8211 * m/tandem-s2.h:
8212 * s/386bsd.h:
8213 * s/bsd386.h:
8214 * s/bsd4-1.h:
8215 * s/bsd4-2.h:
8216 * s/bsdos2-1.h:
8217 * s/bsdos2.h:
8218 * s/bsdos3.h:
8219 * s/bsdos4.h:
8220 * s/nextstep.h:
8221 * s/ultrix4-3.h:
8222 * s/usg5-0.h:
8223 * s/usg5-2-2.h:
8224 * s/usg5-2.h:
8225 * s/usg5-4-3.h:
8226 * s/ux4800.h:
8227 * s/uxpds.h:
8228 * s/uxpv.h: Remove support for obsolete systems.
8229 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8230 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8231 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8232 Remove, insert contents in s/aix4-2.h.
8233 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8234 * s/bsd4-3.h: Rename to ...
8235 * s/bsd-common.h: ... this.
8236 * data.c:
8237 * doc.c:
8238 * ecrt0.c:
8239 * emacs.c:
8240 * fileio.c:
8241 * floatfns.c:
8242 * keyboard.c:
8243 * mem-limits.h:
8244 * print.c:
8245 * process.c:
8246 * sysdep.c:
8247 * syssignal.h:
8248 * systty.h:
8249 * syswait.h:
8250 * term.c:
8251 * unexec.c:
8252 * unexelf.c:
8253 * unexhp9k800.c:
8254 * m/hp800.h:
8255 * m/ibmrs6000.h:
8256 * m/mips.h:
8257 * m/vax.h:
8258 * s/darwin.h:
8259 * s/freebsd.h:
8260 * s/gnu.h:
8261 * s/ms-w32.h:
8262 * s/msdos.h:
8263 * s/netbsd.h:
8264 * s/template.h: Remove references to obsolete variables.
8265
8266 * Makefile.in: Add dependencies for all unexec files.
8267 (admindir): Remove unused variable.
8268 (UNEXEC_SRC): Remove references.
8269
82702008-06-25 Chong Yidong <cyd@stupidchicken.com>
8271
8272 * xfns.c (x_default_font_parameter): If Xft is available, first
8273 try Monospace-12 for the default font.
8274
82752008-06-25 Jason Rumney <jasonr@gnu.org>
8276
8277 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8278
82792008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8280
8281 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8282
8283 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8284
82852008-06-25 Juanma Barranquero <lekktu@gmail.com>
8286
8287 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8288 <scroll-conservatively>: Fix typo in docstring.
8289
8290 * xselect.c (Fx_send_client_event): Doc fix.
8291
82922008-06-25 Kenichi Handa <handa@m17n.org>
8293
8294 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8295
8296 * font.c (font_parse_fcname): Remove unused variables.
8297 (font_sort_entites): Delete the arg SPEC. Caller changed.
8298 Fix for the case of ! best_only.
8299 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8300
8301 * lisp.h (Fstring_to_unibyte): EXFUN it.
8302
8303 * character.h (str_to_unibyte): Extern it.
8304
8305 * character.c (str_to_unibyte): New function.
8306
8307 * fns.c (Fstring_to_unibyte): New function.
8308 (syms_of_fns): Defsubr it.
8309
83102008-06-24 Kenichi Handa <handa@m17n.org>
8311
8312 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8313 DPI too.
8314 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8315
83162008-06-24 Andreas Schwab <schwab@suse.de>
8317
8318 * Makefile.in (${lispsource}loaddefs.el): Rename from
8319 ../lisp/loaddefs.el.
8320 (bootstrap-clean): Do what distclean does but don't remove
8321 Makefile.
8322 (distclean): Depend on bootstrap-clean and remove Makefile.
8323
83242008-06-24 Chong Yidong <cyd@stupidchicken.com>
8325
8326 * buffer.h (struct buffer): New member word_wrap.
8327
8328 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8329 word-wrap.
8330 (init_buffer_once): Initialize them.
8331
8332 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8333 line_wrap enum possessing three possible values.
8334
8335 * termopts.h: Replace truncate_partial_width_windows with
8336 Vtruncate_partial_width_windows.
8337
8338 * dispnew.c (direct_output_for_insert): Avoid direct output when
8339 inserting a space with word wrap on.
8340
8341 * indent.c (compute_motion): Obey integer values of
8342 truncate-partial-width-windows.
8343
8344 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8345 replacing truncate_partial_width_windows.
8346 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8347 truncate only if the window width is below that integer.
8348 (start_display, resize_mini_window, produce_stretch_glyph)
8349 (display_string, move_it_in_display_line_to): Use line_wrap.
8350 (back_to_previous_visible_line_start, reseat_1): Reset
8351 string_from_display_prop_p.
8352 (display_line): Extend default face to end of line when wrapping.
8353
83542008-06-24 Kim F. Storm <storm@cua.dk>
8355
8356 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8357 to wrap continued lines at word boundaries.
8358
83592008-06-24 Jason Rumney <jasonr@gnu.org>
8360
8361 * font.c (Ffont_face_attributes): Multiply pixel size before point
8362 conversion to avoid multiplying rounding error.
8363
83642008-06-23 Jason Rumney <jasonr@gnu.org>
8365
8366 * w32term.c (x_draw_glyph_string_background)
8367 (x_draw_glyph_string): Remove old bdf font code.
8368
8369 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8370
83712008-06-22 Kenichi Handa <handa@m17n.org>
8372
8373 * font.c (font_find_for_lface): Try the adstyle specified in
8374 the property of LFACE_FONT of LFACE (if any).
8375
83762008-06-21 Seiji Zenitani <zenitani@mac.com>
8377 Ryo Yoshitake <ryo@shiftmode.net>
8378
8379 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8380
83812008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8382
8383 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8384 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8385 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8386 (witness-emacs): Remove.
8387 (lisp, shortlisp): Move loaddefs.el earlier.
8388 (mostlyclean): Forget about witness-emacs.
8389
83902008-06-22 Glenn Morris <rgm@gnu.org>
8391
8392 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8393 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8394
83952008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8396
8397 * Makefile.in (PRECOMP): Remove.
8398 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8399 (witness-emacs): Run `compile-first'.
8400 (.el.elc): Use the new compile-onefile target.
8401
84022008-06-21 Kenichi Handa <handa@m17n.org>
8403
8404 * xftfont.c (xftfont_open): Handle QCembolden only when
8405 FC_EMBOLDEN is defined.
8406
84072008-06-21 Andreas Schwab <schwab@suse.de>
8408
8409 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8410 (.el.elc): Likewise.
8411
84122008-06-21 Miles Bader <miles@gnu.org>
8413
8414 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8415 build dir, not the lisp source dir.
8416
84172008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8418
8419 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8420 (bootstrapclean): Remove.
8421 (.el.elc): New rule.
8422 (PRECOMP): New var.
8423 (../lisp/subdirs.el): Remove.
8424 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8425 (witness-emacs): New target.
8426 (mostlyclean): Remove witness-emacs as well.
8427 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8428 Add witness-emacs dependency.
8429
84302008-06-20 Chong Yidong <cyd@stupidchicken.com>
8431
8432 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8433 defined by the font.
8434
84352008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8436
8437 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8438 (bootstrap-clean): New target that keeps TAGS around.
8439 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8440 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8441
84422008-06-20 Jason Rumney <jasonr@gnu.org>
8443
8444 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8445 Remove obsolete font code.
8446
8447 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8448 to determine language support.
8449
84502008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8451
8452 * sysdep.c (cfsetspeed): New fun extracted from the code.
8453 (cfmakeraw): Move before first use.
8454
84552008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8456
8457 * sysdep.c (cfmakeraw): Provide fallback implementation.
8458 (serial_configure): Provide fallback implementation of cfsetspeed.
8459
84602008-06-20 Kenichi Handa <handa@m17n.org>
8461
8462 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8463 the pattern.
8464
8465 * fontset.c (fontset_from_font): Copy font_spec before changing
8466 the elements.
8467
8468 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8469
84702008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8471
8472 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8473 for explicit `font' parameters.
8474
8475 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8476
84772008-06-19 Kenichi Handa <handa@m17n.org>
8478
8479 * frame.c: Include <ctype.h>.
8480 (x_set_font_backend): Allow spacing characters in the X resource
8481 for FontBackend.
8482
84832008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8484
8485 * w32fns.c, xfns.c (Qfont_param): New var.
8486 (syms_of_w32fns): Initialize it.
8487 (x_default_font_parameter): Record explicit `font' into
8488 `font-parameter'.
8489
84902008-06-18 Kenichi Handa <handa@m17n.org>
8491
8492 * font.c (font_parse_xlfd): Fix previous change.
8493 (font_parse_fcname): Don't use :fc-unknown-spec.
8494 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8495 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8496 (font_add_log): Prepend the driver name to the resulting fonts.
8497
8498 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8499 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8500 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8501
8502 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8503 (QCembolden): New variables.
8504 (syms_of_xftfont): DEFSYM them.
8505 (xftfont_open): Call XftFontMatch. Don't trust the result of
8506 XftTextExtents8 if the pixel_size is less than 5.
8507
85082008-06-18 Andreas Schwab <schwab@suse.de>
8509
8510 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8511 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8512
85132008-06-18 Jason Rumney <jasonr@gnu.org>
8514
8515 * w32font.c (w32font_list, w32font_match): Add logging.
8516
8517 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8518
85192008-06-17 Chong Yidong <cyd@stupidchicken.com>
8520
8521 * font.c (font_parse_fcname): Store divider characters for
8522 unknown-spec list. For known key symbols, intern using correct
8523 symbol name.
8524
85252008-06-17 Kenichi Handa <handa@m17n.org>
8526
8527 * xfaces.c (realize_default_face): If the frame is not on window
8528 system, set the fontset of face to nil.
8529
85302008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8531
8532 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8533
85342008-06-16 Juanma Barranquero <lekktu@gmail.com>
8535
8536 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8537 (build_font_name_from_vector): Delete externs.
8538
8539 * xfaces.c (struct font_name): Don't declare.
8540
85412008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8542
8543 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8544
85452008-06-16 Chong Yidong <cyd@stupidchicken.com>
8546
8547 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8548
85492008-06-16 Juanma Barranquero <lekktu@gmail.com>
8550
8551 * font.c (Ffont_spec): Fix usage in docstring.
8552 (Ffont_face_attributes): Doc fix.
8553
85542008-06-16 Andreas Schwab <schwab@suse.de>
8555
8556 * font.c (Ffont_face_attributes): Fix definition.
8557
85582008-06-16 Jason Rumney <jasonr@gnu.org>
8559
8560 * font.h (font_style_symbolic_from_value): Remove.
8561
8562 * font.c (font_style_symbolic_from_value): Remove.
8563 (font_style_symbolic): Revert to pre 2008-06-13 version.
8564
8565 * w32font.c (w32_to_fc_weight): New function.
8566 (w32font_full_name, logfont_to_fcname): Use it.
8567
85682008-06-16 Kenichi Handa <handa@m17n.org>
8569
8570 * font.c (font_check_object): Delete it.
8571 (font_clear_cache): Check if a font-object is alive.
8572 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8573 font-object to nil.
8574 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8575 (font_at): Don't call font_check_object.
8576 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8577
85782008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8579
8580 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8581
85822008-06-16 Chong Yidong <cyd@stupidchicken.com>
8583
8584 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8585
85862008-06-15 Chong Yidong <cyd@stupidchicken.com>
8587
8588 * font.c (font_parse_fcname): Only one decimal point.
8589 (font_unparse_fcname): Handle data in family and foundry indices
8590 as symbols, not strings.
8591 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8592
8593 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8594
8595 * font.h (font_unparse_gtkname): Add prototype.
8596
85972008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8598
8599 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8600
86012008-06-15 Andreas Schwab <schwab@suse.de>
8602
8603 * font.c (font_update_drivers): Fix crash when no drivers match.
8604
86052008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8606
8607 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8608 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8609
86102008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8611
8612 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8613
86142008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8615
8616 * process.c (Fserial_process_configure, Fprocess_send_eof):
8617 Use EQ to compare Lisp_Objects.
8618
86192008-06-13 Jason Rumney <jasonr@gnu.org>
8620
8621 * w32fns.c (Fw32_select_font): Remove old font API function.
8622
8623 * w32font.c (logfont_to_fcname): New function.
8624 (Fx_select_font): New font dialog function compatible with
8625 GTK/fontconfig version.
8626
8627 * font.c (font_style_symbolic_from_value): New function.
8628 (font_style_symbolic): Use it.
8629
8630 * font.h (font_style_symbolic_from_value): Declare new function.
8631
86322008-06-13 Juanma Barranquero <lekktu@gmail.com>
8633
8634 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8635 <font-width-table>: Fix typos in docstrings.
8636
86372008-06-13 Daniel Engeler <engeler@gmail.com>
8638
8639 These changes add serial port access.
8640 * process.c: Add HAVE_SERIAL.
8641 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8642 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8643 (list_processes_1, select_wrapper, Fstop_process)
8644 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8645 (status_notify): Modify to handle serial processes.
8646 [HAVE_SERIAL] (Fserial_process_configure)
8647 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8648 New functions.
8649 * process.h (struct Lisp_Process): Add `type'.
8650 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8651 New functions.
8652 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8653 serial ports.
b71ac3dd 8654 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8655 * w32.h: Add FILE_SERIAL.
8656 (struct _child_process): Add ovl_read, ovl_write.
8657
86582008-06-13 Kenichi Handa <handa@m17n.org>
8659
8660 * dispextern.h (enum lface_attribute_index): New member
8661 LFACE_FOUNDRY_INDEX.
8662
8663 * font.c (font_score): Delete arg alternate_families. Check only
8664 weight, slant, width, and size. Ignore the difference of alias
8665 style symbols.
8666 (font_sort_entites): Adjust for the above change. Reflect the
8667 order of font-driver to scores.
8668 (font_list_entities): Don't check alternate_familes here.
8669 (font_clear_prop): Handle foundry.
8670 (font_update_lface): Don't parse "foundry-family" form here.
8671 Handle FONT_FOUNDRY_INDEX.
8672 (font_find_for_lface): Likewise. Handle alternate families here.
8673 If registry is nil, try iso8859-1 and ascii-0.
8674 (font_open_for_lface): Pay attention to size in ENTITY.
8675 (font_open_by_name): Simplify by calling font_load_for_lface.
8676 (free_font_driver_list): Delete it.
8677 (font_update_drivers): Preserve the order of backends.
8678 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8679 of font_score and font_sort_entites.
8680 (font_update_sort_order): Likewise.
8681
8682 * xfaces.c (LFACE_FOUNDRY): New macro.
8683 (check_lface_attrs): Check foundry.
8684 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8685 (merge_face_vectors): Check foundry.
8686 (merge_face_ref): Likewise.
8687 (Finternal_set_lisp_face_attribute): Likewise.
8688 (x_update_menu_appearance): Likewise.
8689 (Finternal_get_lisp_face_attribute): Likewise.
8690 (lface_hash): Likewise.
8691 (lface_same_font_attributes_p): Likewise.
8692 (x_supports_face_attributes_p): Likewise.
8693 (tty_supports_face_attributes_p): Likewise.
8694 (Finternal_set_alternative_font_family_alist): Intern strings.
8695 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8696 (realize_default_face): Set LFACE_FOUNDRY (lface).
8697
8698 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8699 font-driver at first.
8700
8701 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8702
87032008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8704
8705 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8706
87072008-06-12 Jim Meyering <meyering@redhat.com>
8708
8709 Make unexec_free handle NULL the same way free does.
8710 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8711
87122008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8713
8714 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8715 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8716 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8717 (WEAK_ALIAS): Simplify.
8718 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8719 when searching a unibyte buffer.
8720
87212008-06-12 Chong Yidong <cyd@stupidchicken.com>
8722
8723 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8724
87252008-06-12 Juanma Barranquero <lekktu@gmail.com>
8726
8727 * w32font.c: Include ctype.h.
8728
87292008-06-11 Jason Rumney <jasonr@gnu.org>
8730
8731 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8732 misreported as space.
8733 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8734 as aliases for registry iso10646-1.
8735
87362008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8737
8738 * buffer.c (clone_per_buffer_values): Skip `name'.
8739
87402008-06-11 Chong Yidong <cyd@stupidchicken.com>
8741
8742 * font.c (font_parse_fcname): Fix last change; accept decimal
8743 points in font size.
8744
87452008-06-10 Jason Rumney <jasonr@gnu.org>
8746
8747 * w32uniscribe.c (add_opentype_font_name_to_list):
8748 Skip non unicode fonts.
8749
87502008-06-10 Chong Yidong <cyd@stupidchicken.com>
8751
8752 * xfns.c (Fx_font_dialog): New function.
8753
8754 * gtkutil.c (xg_dialog_response_cb): Rename from
8755 xg_file_response_callback.
8756 (pop_down_dialog): Rename from pop_down_file_dialog.
8757 (xg_get_file_name): Callers changed.
8758 (xg_get_font_name): New function.
8759
8760 * gtkutil.h (xg_get_font_name): Insert prototype.
8761
87622008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8763
8764 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8765 x_underline_minimum_display_offset.
8766 (syms_of_xdisp): Declare it here rather than in xterm.c.
8767 * dispextern.h (underline_minimum_offset): Declare it.
8768 * w32term.c (x_draw_glyph_string): Use it.
8769 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8770 (syms_of_xterm): Don't declare it any more.
8771 (x_draw_glyph_string): Adjust to the new name.
8772
87732008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8774
8775 * xterm.c (x_underline_minimum_display_offset): New var.
8776 (x_draw_glyph_string): Use it.
8777 (syms_of_xterm): Declare it.
8778
87792008-06-10 Chong Yidong <cyd@stupidchicken.com>
8780
8781 * font.c (font_parse_fcname): Accept GTK-style font names too.
8782
87832008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8784
8785 * dired.c (file_name_completion): Don't return t if the match is exact
8786 but with different capitalization.
8787 * minibuf.c (Ftry_completion): Simplify.
8788
8789 * window.c (Vwindow_point_insertion_type): New var.
8790 (set_window_buffer): Use it.
8791 (syms_of_window): Init and export it to Lisp.
8792
87932008-06-10 Kenichi Handa <handa@m17n.org>
8794
8795 * font.h (font_intern_prop): Prototype adjusted.
8796
8797 * font.c (font_intern_prop): New arg force_symbol.
8798 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8799 Adjust for the change of font_intern_prop.
8800
8801 * ftfont.c (ftfont_pattern_entity):
8802 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8803 (w32_registry):
8804 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8805 the change of font_intern_prop.
8806
88072008-06-09 Juanma Barranquero <lekktu@gmail.com>
8808
8809 * w32menu.c (digest_single_submenu): Declare extern.
8810
88112008-06-09 Jason Rumney <jasonr@gnu.org>
8812
8813 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8814
8815 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8816 (parse_single_submenu): Remove.
8817 (digest_single_submenu): Remove.
8818 (syms_of_w32menu): Don't initialise variables that have moved
8819 to menu.c.
8820 (set_frame_menubar): Sync with version in xmenu.c.
8821 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8822
8823 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8824 Make static again.
8825
88262008-06-09 Jason Rumney <jasonr@gnu.org>
8827
8828 Changes to w32 files related to the move of common menu code
8829 to menu.c on 2008-06-08 by Chong Yidong.
8830
8831 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8832 defs to w32gui.h.
8833 (single_keymap_panes, push_menu_item, push_menu_pane):
8834 Make globally visible.
8835
8836 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8837 (local_free, malloc_widget_value, free_widget_value)
8838 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8839 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8840 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8841 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8842 (menu_items, menu_items_allocated, menu_items_used)
8843 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8844 (init_menu_items, finish_menu_items, discard_menu_items)
8845 (grow_menu_items, push_submenu_start, push_submenu_end)
8846 (push_left_right_boundary, push_menu_pane, push_menu_item)
8847 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8848 (free_menubar_widget_tree_value, parse_single_submenu)
8849 (update_submenu_strings): Remove functions.
8850 (xmalloc_widget_value): Remove and declare extern.
8851
8852 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8853 (OBJ1): Build it.
8854
8855 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8856 (local_heap, local_alloc, local_free, malloc_widget_value)
8857 (free_widget_value): Define here.
8858
88592008-06-09 Kenichi Handa <handa@m17n.org>
8860
8861 * font.h (Qascii_0): Extern it.
8862
8863 * font.c (Qascii_0): New variable.
8864 (syms_of_font): DEFSYM it.
8865 (font_open_by_name): If the registry "iso8859-1" fails, try also
8866 "ascii-0".
8867
8868 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8869
88702008-06-08 Kenichi Handa <handa@m17n.org>
8871
8872 * .gdbinit (xfont): New command.
8873
88742008-06-08 Andreas Schwab <schwab@suse.de>
8875
8876 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8877 * Makefile.in (menu.o): Update dependencies.
8878
8879 * Makefile.in (obj): Always add menu.o.
8880 * emacs.c (main): Always call syms_of_menu.
8881 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8882
88832008-06-08 Chong Yidong <cyd@stupidchicken.com>
8884
8885 * Makefile.in: Compile menu.c.
8886
8887 * lisp.h: Declare syms_of_menu.
8888
8889 * emacs.c (main): Call syms_of_menu.
8890
8891 * keyboard.h: Relocate platform-independent menu definitions from
8892 xmenu.c.
8893
8894 * menu.c: New file. Relocate platform-independent menu
8895 definitions from xmenu.c. Suggested by Adrian Robert.
8896
8897 * xmenu.c: Remove platform-independent menu definitions.
8898 (menu_items menu_items_inuse, menu_items_allocated)
8899 (menu_items_used, menu_items_n_panes)
8900 (menu_items_submenu_depth): Move to keyboard.h.
8901 (init_menu_items, finish_menu_items, unuse_menu_items)
8902 (discard_menu_items, restore_menu_items, save_menu_items)
8903 (grow_menu_items, push_submenu_start, push_submenu_end)
8904 (push_left_right_boundary, push_menu_pane, push_menu_item)
8905 (keymap_panes, single_keymap_panes, single_menu_item)
8906 (list_of_panes, list_of_items, find_and_call_menu_selection)
8907 (xmalloc_widget_value, free_menubar_widget_value_tree)
8908 (parse_single_submenu, digest_single_submenu)
8909 (update_submenu_strings): Move to menu.c.
8910
89112008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8912
8913 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8914
89152008-06-06 Miles Bader <miles@gnu.org>
8916
8917 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8918 face, not frame default.
8919
89202008-06-05 Martin Rudalics <rudalics@gmx.at>
8921
8922 * window.c (pop_up_windows, pop_up_frames)
8923 (display_buffer_reuse_frames, Vpop_up_frame_function)
8924 (Vdisplay_buffer_function, Veven_window_heights)
8925 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8926 (Vspecial_display_function, Vsame_window_buffer_names)
8927 (Vsame_window_regexps, split_height_threshold)
8928 (Vsplit_window_preferred_function): Move those vars to window.el.
8929 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8930 (Fdisplay_buffer): Move those functions to window.el.
8931 (syms_of_window): Remove corresponding declarations.
8932 (display_buffer): New function.
8933 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8934 * dispnew.c (Flast_nonminibuf_frame): New function.
8935 * buffer.c (Fpop_to_buffer): Move to window.el.
8936
89372008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8938
8939 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8940
89412008-06-05 Kenichi Handa <handa@m17n.org>
8942
8943 * coding.c (detect_coding): Fix previous change.
8944 (detect_coding_system): Likewise.
8945
89462008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8947
8948 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8949
8950 * keymap.c (Vminibuffer_local_filename_must_match_map):
8951 Rename from Vminibuffer_local_must_match_filename_map.
8952 (syms_of_keymap):
8953 * minibuf.c (Fcompleting_read): Adjust accordingly.
8954 * commands.h: Rename declaration as well.
8955
89562008-06-05 Kenichi Handa <handa@m17n.org>
8957
8958 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8959 family name.
8960 (Ffont_put): Likewise.
8961
8962 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8963 current font-spec.
8964
8965 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8966 is unspecified.
8967
8968 * xfaces.c (realize_x_face): If the font-related face attributes
8969 are the same as those of default face, realize a new fontset from
8970 default->fontset.
8971 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8972
89732008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8974
8975 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8976 (move_it_in_display_line): New wrapper.
8977
8978 * window.c (window_scroll_pixel_based_preserve_x)
8979 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8980 (window_scroll_pixel_based, window_scroll_line_based):
8981 Use them to preserve column positions.
8982 (syms_of_window): Initialize them.
8983
8984 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8985 (HPOS . VPOS) pair.
8986
8987 * dispextern.h (move_it_in_display_line): Declare.
8988
89892008-06-05 Juanma Barranquero <lekktu@gmail.com>
8990
8991 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8992 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8993 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8994
89952008-06-04 Juanma Barranquero <lekktu@gmail.com>
8996
8997 * window.c (Fset_window_parameter): Doc fix.
8998 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8999
90002008-06-04 Joakim Verona <joakim@verona.se>
9001
9002 * window.h (struct window): Add new member window_parameters.
9003
9004 * window.c (Fwindow_parameters, Fwindow_parameter)
9005 (Fset_window_parameter): New defuns.
9006 (syms_of_window): Defsubr the new defuns.
9007 (make_window): Initialize window_parameters to nil.
9008
90092008-06-04 John Paul Wallington <jpw@pobox.com>
9010
9011 * eval.c (Fdefmacro): Doc fix.
9012
90132008-06-04 Kenichi Handa <handa@m17n.org>
9014
9015 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9016 Be sure to call setup_coding_system when we find a proper coding system.
9017 (detect_coding_system): Fix handling of coding->head_ascii.
9018
90192008-06-03 Andreas Schwab <schwab@suse.de>
9020
9021 * font.c (font_prop_validate_spacing): Fix last change.
9022
90232008-06-03 Kenichi Handa <handa@m17n.org>
9024
9025 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9026 (font_parse_fcname): Fix handling of unknown key.
9027
9028 * xfont.c (xfont_list): Try an alias.
9029
9030 * charset.c (char_charset): Return NULL if the arg charset_list is
9031 specified and C doesn't belong to any of them.
9032
90332008-06-02 Chip Coldwell <coldwell@redhat.com>
9034
9035 * font.c (font_pixel_size): Don't take cdr of an integer.
9036
90372008-06-02 Jim Meyering <meyering@redhat.com>
9038
9039 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9040 * alloc.c (xfree): Return right away for a NULL arg.
9041 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9042 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9043 * mac.c (create_apple_event_from_event_ref): Likewise.
9044 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9045 Likewise.
9046 * doprnt.c (doprnt1): Likewise.
9047 * frame.c (frame): Likewise.
9048 * keyboard.c (wipe_kboard): Likewise.
9049 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9050 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9051 * term.c (tty_default_color_capabilities, maybe_fatal)
9052 (delete_tty): Likewise.
9053 * w16select.c (string): Likewise.
9054 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9055 * w32bdf.c (w32_free_bdf_font): Likewise.
9056 * w32fns.c (w32_unload_font): Likewise.
9057 * w32font.c (w32font_close): Likewise.
9058 * window.c (size_window): Likewise.
9059 * xselect.c (receive_incremental_selection): Likewise.
9060 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9061 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9062 * w32.c (stat): Likewise.
9063
9064 Remove useless if-before-free tests.
9065 * editfns.c (Fset_time_zone_rule): Likewise.
9066 * lread.c (nosuffix): Likewise.
9067 * ralloc.c (get_bloc): Likewise.
9068 * regex.c (reg_free): Likewise.
9069 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9070 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9071 * xsmfns.c (smc_save_yourself_CB): Likewise.
9072
90732008-06-02 Kenichi Handa <handa@m17n.org>
9074
9075 * font.c (font_find_for_lface): Handle float font size.
9076 (font_open_for_lface): Likewise.
9077
9078 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9079 comparing the properties.
9080
90812008-06-01 Jason Rumney <jasonr@gnu.org>
9082
9083 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9084 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9085 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9086 Don't add empty script list.
9087 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9088
90892008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9090
9091 * Makefile.in (dot, dotdot): Remove, update users.
9092 ".." has been used elsewhere in the file for a long time.
9093 (LIBXT_STATIC): Remove conditional based on unused variable.
9094
90952008-06-01 Miles Bader <miles@gnu.org>
9096
9097 * xfaces.c (Vface_remapping_alist): New variable.
9098 (syms_of_xfaces): Initialize it.
9099 (enum named_merge_point_kind): New type.
9100 (struct named_merge_point): Add `named_merge_point_kind' field.
9101 (push_named_merge_point): Make cycle detection respect different
9102 named-merge-point kinds.
9103 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9104 Remove face-name alias resolution.
9105 (lface_from_face_name): New definition using
9106 `lface_from_face_name_no_resolve'.
9107 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9108 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9109 (get_lface_attributes): New definition that layers face-remapping on
9110 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9111 (lookup_basic_face): New function.
9112 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9113 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9114 `get_lface_attributes'.
9115 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9116 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9117 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9118
9119 * xdisp.c (init_iterator): Pass base_face_id through
9120 `lookup_basic_face' when we actually use it as a face-id.
9121 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9122 DEFAULT_FACE_ID.
9123
9124 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9125 lookup the initial face-id.
9126
9127 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9128
91292008-06-01 Juanma Barranquero <lekktu@gmail.com>
9130
9131 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9132 (Fremove_text_properties): Fix typos in docstrings.
9133
91342008-05-31 Kenichi Handa <handa@m17n.org>
9135
9136 * font.c (font_list_entities): Fix the car part of data to be
9137 stored in the cache.
9138
9139 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9140
91412008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9142
9143 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9144 Add a `test' argument so another predicate than `equal' can be used.
9145 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9146 (map_char_table): Remove unused vars `c' and `i'.
9147 * lisp.h (Foptimize_char_table): Adjust declaration.
9148 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9149
91502008-05-30 Kenichi Handa <handa@m17n.org>
9151
9152 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9153 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9154 defined.
9155
91562008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9157
9158 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9159 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9160 frame-local settings for the same variable.
9161
91622008-05-30 Kenichi Handa <handa@m17n.org>
9163
9164 * fontset.c (Ffont_info): Move to font.c.
9165 (syms_of_fontset): Delete defsubr of Sfont_info.
9166
9167 * font.c (font_style_to_value, font_score): Delete casting of the
9168 args to xstcasecmp.
9169 (register_font_driver): Increment num_font_drivers only when
9170 registering the driver globally.
9171 (Ffont_info): Move from fontset.c. Handle a font object too.
9172 (syms_of_font): Defsubr Sfont_info.
9173
91742008-05-29 Kenichi Handa <handa@m17n.org>
9175
9176 * coding.h (enum define_coding_utf8_arg_index): New enum.
9177 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9178 coding_attr_utf_bom.
9179 (enum utf_bom_type): Rename from utf_16_bom_type.
9180 (struct utf_16_spec): Adjust for the above change.
9181 (struct coding_system): Add utf_8_bom in `spec' union.
9182
9183 * coding.c (CODING_UTF_8_BOM): New macro.
9184 (enum coding_category): Delete coding_category_utf_8, add
9185 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9186 coding_category_utf_8_sig.
9187 (CATEGORY_MASK_UTF_8): Delete it.
9188 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9189 (CATEGORY_MASK_UTF_8_SIG): New macros.
9190 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9191 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9192 CATEGORY_MASK_UTF_8_SIG.
9193 (CATEGORY_MASK_UTF_8): New macro.
9194 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9195 (detect_coding_utf_8): Check BOM.
9196 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9197 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9198 (encode_coding_utf_16): Likewise.
9199 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9200 (detect_coding, detect_coding_system): Handle utf-8-auto.
9201 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9202 (syms_of_coding): Fix setting up of Vcoding_category_table.
9203
92042008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9205
9206 * process.c (Faccept_process_output): If `millisec' is non-nil,
9207 `seconds' default to 0.
9208 (wait_reading_process_output): Also return non-nil if we read output
9209 from a non-running process.
9210
92112008-05-29 Jason Rumney <jasonr@gnu.org>
9212
9213 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9214 `raster' specified.
9215 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9216 in the uniscribe backend, but disallow any font that has no
9217 unicode subrange support.
9218
92192008-05-29 Juanma Barranquero <lekktu@gmail.com>
9220
9221 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9222 Fix typos in docstrings.
9223
92242008-05-29 Kenichi Handa <handa@m17n.org>
9225
9226 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9227 (Fx_family_fonts): Set frame correctly.
9228
92292008-05-28 Jason Rumney <jasonr@gnu.org>
9230
9231 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9232
92332008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9234
9235 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9236 calling build_annotations.
9237
92382008-05-28 Juanma Barranquero <lekktu@gmail.com>
9239
9240 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9241 (Fencode_coding_string):
9242 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9243 <latin-extra-code-table>: Fix typos in docstrings.
9244 (syms_of_coding) <coding-system-alist>: Doc fix.
9245 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9246
92472008-05-28 Kenichi Handa <handa@m17n.org>
9248
9249 * fontset.c (Ffont_info): Don't call font_close_object.
9250
9251 * font.c (font_parse_family_registry): Use Ffont_put to validate
9252 foundry and family.
9253 (font_delete_unmatched): Don't check spacing.
9254 (font_list_entities): Add spacing to the spec to list fonts.
9255
9256 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9257 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9258
9259 * coding.c (encode_coding_raw_text): Fix previous change.
9260 (encode_coding_object): When the dst_object is a buffer and is
9261 different from src_object, move gap to PT.
9262
92632008-05-27 Chong Yidong <cyd@stupidchicken.com>
9264
9265 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9266
92672008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9268
9269 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9270 all branches. Compute it differently.
9271
9272 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9273
92742008-05-27 Juanma Barranquero <lekktu@gmail.com>
9275
9276 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9277 into "else if () ... else ...".
9278
92792008-05-27 Jason Rumney <jasonr@gnu.org>
9280
9281 * w32font.c (w32font_open_internal): Determine if glyph indices
9282 are likely to work here.
9283
92842008-05-27 Chong Yidong <cyd@stupidchicken.com>
9285
9286 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9287 draw overlap glyphs with appropriate highlighting.
9288
92892008-05-27 Kenichi Handa <handa@m17n.org>
9290
9291 * xfont.c (xfont_open): Fix calculation of font->average_width.
9292
92932008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9294
9295 * casefiddle.c (casify_object): Try to guess better whether the
9296 argument is a byte or a char.
9297
92982008-05-26 Andreas Schwab <schwab@suse.de>
9299
9300 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9301 Always send multiples of format size.
9302
9303 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9304
93052008-05-26 Jason Rumney <jasonr@gnu.org>
9306
9307 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9308 (compute_metrics): Don't set failure if we just cleared the cache.
9309 (w32_weight_table): Remove unused variable.
9310 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9311 backwards compatibility.
9312
93132008-05-25 Kenichi Handa <handa@m17n.org>
9314
9315 * w32term.c (x_draw_glyph_string):
9316 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9317
9318 * xfaces.c: Delete unused function prototypes.
9319 (xstrlwr, font_frame): Delete them.
9320 (clear_face_cache): Delete unused variable.
9321
9322 * xftfont.c (xftfont_open): Delete unused variable.
9323 If underline_thickness is not 1, adjust underline_position.
9324
9325 * ftxfont.c (ftxfont_open): Delete unused variable.
9326
9327 * fontset.c (face_for_char): Optimize for the case of no charset
9328 property.
9329
9330 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9331 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9332 (otf_open, font_otf_capability, generate_otf_features)
9333 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9334 Comment out by surrounding "#if 0" and "#endif" for the moment.
9335 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9336 (syms_of_font): Codes for accessing above commented out.
9337
93382008-05-24 Eli Zaretskii <eliz@gnu.org>
9339
9340 * w32proc.c: Include dispextern.h.
9341
9342 * w32.c: Include dispextern.h.
9343
93442008-05-23 Juanma Barranquero <lekktu@gmail.com>
9345
9346 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9347 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9348 Fix typos in docstrings.
9349
93502008-05-23 Jason Rumney <jasonr@gnu.org>
9351
9352 * xsmfns.c: Remove includes that are already included by config.h.
9353
93542008-05-23 Kenichi Handa <handa@m17n.org>
9355
9356 * charset.c (Qemacs, charset_emacs): New variables.
9357 (char_charset): Fix for non-Unicode characters.
9358 (syms_of_charset): Define charset_emacs.
9359
9360 * w32term.c (x_draw_glyph_string): Be sure to update
9361 s->underline_thickness and s->underline_position. Be sure to draw
9362 underline within the current line area.
9363
9364 * xterm.c (x_draw_glyph_string): Be sure to update
9365 s->underline_thickness and s->underline_position. Be sure to draw
9366 underline within the current line area.
9367
9368 * fontset.c: Delete unused variables and add casting for char *
9369 throughout the file.
9370 (fontset_font): Try the fallback fonts of the current fontset
9371 before consulting the default fontset.
9372
9373 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9374
9375 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9376
93772008-05-22 Jason Rumney <jasonr@gnu.org>
9378
9379 * font.c: Don't include strings.h.
9380
9381 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9382
9383 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9384 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9385 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9386 to call xstrcasecmp.
9387
9388 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9389
9390 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9391
9392 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9393
9394 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9395
93962008-05-22 Kenichi Handa <handa@m17n.org>
9397
9398 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9399
9400 * font.c (font_prop_validate_style): Adjust for the format
9401 change of font_style_table.
9402
9403 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9404 two args.
9405
9406 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9407 two args.
9408
94092008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9410
9411 * minibuf.c (keys_of_minibuf): Delete.
9412 * lisp.h (keys_of_minibuf): Delete.
9413 * emacs.c (main): Don't call keys_of_minibuf.
9414
94152008-05-22 Kenichi Handa <handa@m17n.org>
9416
9417 * ftfont.c (ftfont_resolve_generic_family): Rename from
9418 ftfont_list_generic_family. Return a single family for each
9419 generic family.
9420 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9421 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9422 Call font_add_log.
9423 (ftfont_match): Call font_add_log.
9424
9425 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9426 (FONT_DEBUG): Define it.
9427 (font_add_log): Extern it.
9428 (font_assert): Rename from xassert.
9429
9430 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9431 (xfont_list_family): Call font_add_log.
9432 (xfont_match): Likewise.
9433 (memq_no_quit): Delete.
9434
9435 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9436 call of Ffont_xlfd_name.
9437
9438 * xfaces.c (struct table_entry, slant_table, weight_table)
9439 (swidth_table): Move to font.c.
9440
9441 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9442 xassert are changed to font_assert. Delete many unused variables.
9443 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9444 New variables.
9445 (struct table_entry): Move from xfaces.c and modified.
9446 (weight_table, slant_table, width_table): Move from xfaces.c and
9447 contents adjusted for the change of struct table_entry.
9448 (font_style_to_value, font_style_symbolic): Adjust for the
9449 format change of font_style_table.
9450 (font_parse_family_registry): Don't overwrite existing foundry and
9451 family of font_spec.
9452 (font_score): Fix calculation of diff for sizes.
9453 (font_sort_entites): Call font_add_log.
9454 (font_delete_unmatched): Return a newly created list.
9455 (font_list_entities): Fix previous change. Call font_add_log.
9456 (font_matching_entity, font_open_entity, font_close_entity):
9457 Call font_add_log.
9458 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9459 (Finternal_set_font_style_table): Delete.
9460 (BUILD_STYLE_TABLE): New macro.
9461 (build_style_table): New function.
9462 (Vfont_log, font_log_env_checked): New variables.
9463 (font_add_log): New function.
9464 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9465 Declare Lisp variables "font-weight-table", "font-slant-table",
9466 "font-width-table", and "font-log". Initialize font_style_table.
9467
94682008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9469
9470 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9471
94722008-05-21 Seiji Zenitani <zenitani@mac.com>
9473 Ryo Yoshitake <ryo@shiftmode.net>
9474
9475 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9476 (Vframe_alpha_lower_limit): New variable.
9477 (x_set_alpha): New function.
9478
9479 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9480
9481 * xfns.c (x-create-frame, Qalpha):
9482 Initialize the frame parameter `alpha'.
9483 * xterm.c (OPAQUE, OPACITY): New.
9484 (x_set_frame_alpha): New function.
9485 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9486
9487 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9488 * w32fns.c (w32_frame_parm_handlers): Likewise.
9489
94902008-05-20 Jason Rumney <jasonr@gnu.org>
9491
9492 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9493 truetype fonts to opentype list.
9494
94952008-05-20 Juanma Barranquero <lekktu@gmail.com>
9496
9497 * fontset.c (Ffontset_info): Doc fix.
9498 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9499 <ignore-relative-composition>: Fix typos in docstrings.
9500
9501 * font.c (syms-of-font) <font-encoding-alist>:
9502 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9503 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9504 (Ffont_otf_alternates): Doc fixes.
9505
95062008-05-20 Kenichi Handa <handa@m17n.org>
9507
9508 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9509 font.h through out the file.
9510 (FONT_DRIVERS): Rename from FONTOBJ.
9511 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9512 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9513
9514 * emacs.c (main): Call syms_of_font unconditionally.
9515
9516 * font.h (find_font_encoding): Extern it.
9517
9518 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9519 fontset.c.
9520 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9521 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9522 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9523 only when HAVE_WINDOW_SYSTEM is defined.
9524 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9525 when HAVE_WINDOW_SYSTEM is defined.
9526
9527 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9528 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9529
9530 * xfaces.c: Include font.h unconditionally.
9531 (merge_face_ref, merge_face_vectors)
9532 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9533
95342008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9535
9536 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9537 indirect_variable.
9538 * eval.c (lisp_indirect_variable): New fun.
9539 (Fuser_variable_p): Use it.
9540
95412008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9542
9543 * lisp.h (indirect_variable):
9544 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9545 Use Lisp_Symbol pointers rather than Lisp_Object.
9546 Adjust callers.
9547 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9548 To this end, change calling-convention.
9549
9550 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9551 if some non-hidden buffers are selected by string&pred.
9552
95532008-05-19 Chong Yidong <cyd@stupidchicken.com>
9554
9555 * process.c (wait_reading_process_output): Always check status
9556 when in batch mode.
9557
95582008-05-19 Kenichi Handa <handa@m17n.org>
9559
9560 * font.c (font_list_entities): Fix handling of cache.
9561 (font_matching_entity): Likewise.
9562
9563 * ftfont.c (cs_iso8859_1): Delete.
9564 (ft_face_cache): New variable.
9565 (struct ftfont_info): New member fc_charset_idx.
9566 (ftfont_build_basic_charsets): Delete.
9567 (fc_charset_table): New variable.
9568 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9569 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9570 Callers changed.
9571 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9572 (ftfont_spec_pattern): New argument fc_charset_idx.
9573 Check registry more rigidly. Change callers.
9574 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9575 change of :font-entity property of the font.
9576
9577 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9578 property of the font.
9579
95802008-05-18 Juanma Barranquero <lekktu@gmail.com>
9581
9582 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9583 (Funencodable_char_position, Fcheck_coding_systems_region)
9584 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9585 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9586 (Ffind_operation_coding_system, Fset_coding_system_priority)
9587 (Fcoding_system_eol_type): Doc fixes.
9588
95892008-05-17 Glenn Morris <rgm@gnu.org>
9590
9591 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9592
95932008-05-16 Eli Zaretskii <eliz@gnu.org>
9594
9595 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9596 and st_gid.
9597
9598 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9599 HAVE_WINDOW_SYSTEM is not defined.
9600
9601 * xfaces.c (merge_face_ref, merge_face_vectors)
9602 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9603 HAVE_WINDOW_SYSTEM is defined.
9604 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9605
96062008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9607
9608 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9609
96102008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9611
9612 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9613
96142008-05-15 Kenichi Handa <handa@m17n.org>
9615
9616 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9617 preference.
9618
96192008-05-15 Glenn Morris <rgm@gnu.org>
9620
9621 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9622
96232008-05-15 Chong Yidong <cyd@stupidchicken.com>
9624
9625 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9626 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9627
9628 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9629
96302008-05-15 Kenichi Handa <handa@m17n.org>
9631
9632 * ftfont.c (ftfont_list): Downcase family name to check generic
9633 families.
9634
9635 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9636 font-spec for QCfont value.
9637
9638 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9639 buffer. Check the return value of it.
9640
96412008-05-14 Jason Rumney <jasonr@gnu.org>
9642
9643 * w32term.c (w32_get_glyph_overhangs): Remove.
9644 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9645
96462008-05-14 Kenichi Handa <handa@m17n.org>
9647
9648 * font.c (font_prop_validate): Make nil a valid value.
9649 (font_clear_cache): Check if the cached vector of entities is nil
9650 or not.
9651
96522008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9653
9654 * emacs.c (main_thread): Conditionalize on
9655 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9656 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9657
9658 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9659 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9660 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9661
96622008-05-14 Kenichi Handa <handa@m17n.org>
9663
9664 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9665 has no corresponding coding system.
9666
96672008-05-14 Jason Rumney <jasonr@gnu.org>
9668
9669 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9670
9671 * w32font.h (w32font_open_internal): Update declaration.
9672
9673 * w32font.c (w32font_open_internal): Change last argument from
9674 w32font_info struct to font object. Fill in font object from
9675 font_entity. Get Outline metrics if possible. Use them to
9676 calculate underline position and thickness. Use xlfd name as name
9677 property. Don't set codepage.
9678 (w32font_open): Pass font_object to w32font_open_internal. Don't
9679 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9680 (w32font_draw): Use s->font.
9681 (clear_cached_metrics): Don't clear non-existent blocks.
9682
9683 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9684 font was not found.
9685 (x_draw_glyph_string): Use underline position and thickness from font.
9686
9687 * w32uniscribe.c (uniscribe_open): Pass font_object to
9688 w32font_open_internal.
9689
96902008-05-14 Kenichi Handa <handa@m17n.org>
9691
9692 These changes are to delete all legacy font-handling codes, and
9693 make Emacs use only font-backends.
9694
9695 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9696 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9697
9698 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9699
9700 * charset.h (Vcharset_non_preferred_head)
9701 (Vcurrent_iso639_language): Extern them.
9702
9703 * charset.c (Vcharset_non_preferred_head): New variable.
9704 (Vcurrent_iso639_language): New variable.
9705 (syms_of_charset): Declare it as a Lisp variable.
9706 (char_charset): Don't check non preferred charsets. As a last
9707 resort, return charset_unicode.
9708 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9709
9710 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9711 conditionals. Don't check enable_font_backend. Delete all codes
9712 used only when USE_FONT_BACKEND is not defined.
9713
9714 * dispextern.h (struct glyph_string): Change type of `font' to
9715 `struct font *'.
9716 (struct glyph_string): New member underline_position and
9717 underline_thickness.
9718 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9719 (struct face): Change type of `font' to `struct font *'. Remove
9720 members `font_name', `font_info_id'.
9721 (per_char_metric, encode_char): Delete externs.
9722 (calc_pixel_width_or_height): Adjust the prototype.
9723
9724 * emacs.c (enable_font_backend): Delete extern.
9725 (main): Don't set enable_font_backend. Don't check the command
9726 line argument "-disable-font-backend".
9727
9728 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9729 (enum font_property_index): New members FONT_DPI_INDEX,
9730 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9731 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9732 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9733 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9734 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9735 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9736 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9737 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9738 (struct font_spec, struct font_entity): New structs.
9739 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9740 (struct font): Many members from old "struct font_info" moved to
9741 here. Members font and entity deleted.
9742 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9743 the new font-related objects.
9744 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9745 (CHECK_FONT_GET_OBJECT): Likewise.
9746 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9747 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9748 (struct font_driver): New members case_sensitive anc check. Type
9749 of the member list and open changed.
9750 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9751 (font_symbolic_width, font_find_object, font_get_spec)
9752 (font_set_lface_from_name): Delete extern.
9753 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9754
9755 * font.c: Include <strings.h>.
9756 (enable_font_backend): Delete it.
9757 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9758 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9759 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9760 (null_string): Delete it.
9761 (null_vector): Make it static.
9762 (font_family_alist): Delete it.
9763 (Qnormal): Extern it.
9764 (QCextra, QClanguage): Delete it.
9765 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9766 (font_make_spec, font_make_entity, font_make_object)
9767 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9768 the string. Callers changed.
9769 (font_pixel_size): Adjusted for the format change of font-related
9770 objects.
9771 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9772 (font_style_to_value, font_style_symbolic): New function.
9773 (build_font_family_alist): Delete it.
9774 (font_registry_charsets): Use Fassoc_string instead of
9775 assq_no_quit.
9776 (font_prop_validate_symbol): Don't return null_string.
9777 (font_prop_validate_style): Adjusted for the change of
9778 style-related values in a font vector.
9779 (font_property_table): Delete entries for QClanguage and
9780 QCantialias, add entries for QCavgwidth.
9781 (get_font_prop_index): Delete the 2nd argument FROM.
9782 (font_prop_validate): Arguments changed.
9783 (font_put_extra): Adjusted for the change of font-related objects.
9784 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9785 (font_parse_fcname, font_unparse_fcname)
9786 (font_prepare_composition): Likewise.
9787 (font_parse_family_registry): Renamed from font_merge_old_spec.
9788 (otf_open): Delete the 1st arg entity.
9789 (font_otf_capability): Adjusted for the above change.
9790 (font_score): New arg alternate_families. Adjusted for the change
9791 of font-related objects.
9792 (font_sort_entites): New arg best_only.
9793 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9794 Delete them.
9795 (font_match_p): Check alternate families.
9796 (font_find_object): Delete it.
9797 (font_check_object): New function.
9798 (font_clear_cache): Adjusted for the change of font-related objects.
9799 (font_delete_unmatched): New arg.
9800 (font_list_entities): Call font_driver->list with a spec that
9801 doesn't specify style-related properties.
9802 (font_matching_entity): Arguments changed. Caller changed.
9803 (font_open_entity): Adjusted for the change of font-related objects.
9804 (font_close_object, font_has_char, font_encode_char)
9805 (font_get_name, font_get_spec): Likewise.
9806 (font_spec_from_name, font_clear_prop, font_update_lface):
9807 New functions.
9808 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9809 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9810 (font_at): Adjusted for the change of font-related objects.
9811 (font_range): New function.
9812 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9813 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9814 (Fcopy_font_spec, Fmerge_font_spec): New function.
9815 (Ffont_family_list): Renamed from list-families.
9816 (Finternal_set_font_style_table): Arguments changed.
9817 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9818 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9819 change of font-related objects.
9820 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9821
9822 * fontset.h (struct font_info): Delete it. Most members go to
9823 struct font.
9824 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9825 (enum FONT_SPEC_INDEX): Delete it.
9826 (font_info, list_fonts_func, load_font_func, query_font_func)
9827 (set_frame_fontset_func, find_ccl_program_func)
9828 (get_font_repertory_func, new_fontset_from_font_name): Delete
9829 externs.
9830 (fontset_from_font_name): Extern it.
9831 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9832 (FONT_INFO_FROM_FACE): Deleted.
9833 (face_for_font): Adjust prototype.
9834
9835 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9836 conditionals. Don't check enable_font_backend. Delete all codes
9837 used only when USE_FONT_BACKEND is not defined.
9838 (get_font_info_func, list_font_func, load_font_func)
9839 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9840 (get_font_repertory_func): Delete them.
9841 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9842 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9843 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9844 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9845 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9846 (fontset_compare_rfontdef): New function.
9847 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9848 rfont-defs by qsort. Adjusted for the change of font-group vector.
9849 (load_font_get_repertory): Deleted.
9850 (fontset_find_font): Use new macros to ref/set elements of
9851 font-def and rfont-def.
9852 (fontset_font): Fix the timing of remembering that no font for C.
9853 (free_face_fontset): Do nothing if the face has no fontset.
9854 (face_suitable_for_char_p): Use new macros to ref/set elements of
9855 rfont-def.
9856 (face_for_char): Likewise. Call face_for_char with font_object.
9857 (fs_load_font): Delete. Delete #pragma surrounding it.
9858 (fs_query_fontset): Use strcasecmp instead of strcmp.
9859 (generate_ascii_font_name): Adjusted for the format change of
9860 font-spec.
9861 (Fset_fontset_font): Likewise. Use new macros to set elements of
9862 font-def.
9863 (Fnew_fontset): Use font_unparse_xlfd to generate
9864 FONTSET_ASCII (fontset).
9865 (new_fontset_from_font_name): Deleted.
9866 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9867 a fontset is already created for the font. FIx updating of
9868 Vfontset_alias_alist.
9869 (fontset_ascii_font): Deleted.
9870 (Ffont_info): Adjusted for the format change of font-spec.
9871 (Finternal_char_font): Likewise.
9872 (Ffontset_info): Likewise.
9873 (syms_of_fontset): Don't check load_font_func.
9874
9875 * fns.c (internal_equal): Handle PREV_FONT.
9876
9877 * frame.h: Delete USE_FONT_BACKEND conditional.
9878
9879 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9880 conditionals. Don't check enable_font_backend. Delete all codes
9881 used only when USE_FONT_BACKEND is not defined.
9882 (x_set_font): Call x_new_font, not x_new_fontset2.
9883 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9884 already set for the frame.
9885
9886 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9887 a font-entity by font_make_entity. Use font_intern_prop instead
9888 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9889 font property. If a font is scalable, set avgwidth property to 0.
9890 Set font-entity property by font_put_extra.
9891 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9892 (ffont_driver): Adjusted for the change of struct font_driver.
9893 (ftfont_spec_pattern): New function.
9894 (ftfont_list): Return a list, not vector.
9895 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9896 (ftfont_list_family): Don't downcase names.
9897 (ftfont_free_entity): Deleted.
9898 (ftfont_open): Return a font-object. Adjusted for the change of
9899 struct font. Get underline_thickness and underline_position from
9900 font property. Don't update dpyinfo->smallest_font_height and
9901 dpyinfo->smallest_char_width.
9902 (ftfont_close): Don't free `struct font'.
9903 (ftfont_has_char): Adjusted for the format change of font-entity.
9904 (ftfont_encode_char, ftfont_text_extents): Likewise.
9905
9906 * ftxfont.c (ftxfont_list): Return a list, not vector.
9907 (ftxfont_open): Return a font-object. Adjusted for the change of
9908 struct font. Get underline_thickness and underline_position from
9909 font property. Don't update dpyinfo->smallest_font_height and
9910 dpyinfo->smallest_char_width.
9911 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9912 (ftxfont_draw): Adjusted for the change of struct font.
9913
9914 * image.c (image_ascent): Don't include "charset.h". Include
9915 "character.h" and "font.h".
9916
9917 * lisp.h (enum pvec_type): New member PREV_FONT.
9918 (Fassoc_string): EXFUN it.
9919
9920 * print.c: Include font.h.
9921 (print_object): Handle font-related objects.
9922
9923 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9924 conditionals. Don't check enable_font_backend. Delete all codes
9925 used only when USE_FONT_BACKEND is not defined.
9926 (handle_auto_composed_prop): Do nothing if it->f is not on a
9927 window system. Check how many following characters can be
9928 displayed by the same font.
9929 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9930 'struct font *'.
9931 (get_char_face_and_encoding): Assign the whole encoding task to
9932 the `encode-char' method of a font driver.
9933 (fill_composite_glyph_string): Adjusted for the change of `struct
9934 face' and `struct glyph_string'.
9935 (fill_glyph_string): Likewise.
9936 (get_per_char_metric): Arguments changed.
9937 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9938 and `struct glyph_string'.
9939 (produce_stretch_glyph, calc_line_height_property)
9940 (x_produce_glyphs): Likewise.
9941
9942 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9943 conditionals. Don't check enable_font_backend. Delete all codes
9944 used only when USE_FONT_BACKEND is not defined. Use
9945 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9946 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9947 (Qp): Extern them.
9948 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9949 Deleted.
9950 (struct font_name): Deleted.
9951 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9952 (compare_fonts_by_sort_order): New function.
9953 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9954 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9955 Deleted.
9956 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9957 compare_fonts_by_sort_order.
9958 (Fx_font_family_list): Call Ffont_family_list.
9959 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9960 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9961 (face_symbolic_slant, face_symbolic_swidth)
9962 (split_font_name_into_vector, build_font_name_from_vector)
9963 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9964 (font_rescale_ratio, split_font_name, build_font_name)
9965 (free_font_names, sort_fonts, x_face_list_fonts)
9966 (face_font_available_p, sorted_font_list, cmp_font_names)
9967 (font_list_1, concat_font_list, font_list, remove_duplicates):
9968 Deleted.
9969 (Fx_list_fonts): Use Ffont_list.
9970 (LFACE_AVGWIDTH): Deleted.
9971 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9972 by FONTP.
9973 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9974 (set_lface_from_font_name): Delete it.
9975 (set_lface_from_font): Renamed from
9976 set_lface_from_font_and_fontset. Caller changed. Don't set
9977 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9978 for face.
9979 (merge_face_vectors): Copy font-spec if necessary.
9980 Clear properties of the font-spec if necessary.
9981 (merge_face_ref): Clear properties of the font-spec if necessary.
9982 (Finternal_set_lisp_face_attribute): Likewise.
9983 (set_font_frame_param): Use font_load_for_lface to load a
9984 font-object, and call Fmodify_frame_parameters with it.
9985 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9986 font name by Ffont_xlfd_name.
9987 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9988 QCslant, and QCwidth.
9989 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9990 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9991 Compare fonts by EQ.
9992 (lookup_non_ascii_face): Deleted.
9993 (face_for_font): The 2nd argument changed.
9994 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9995 Check atomic font properties by case insensitive.
9996 (realize_non_ascii_face): Set face->overstrike correctly.
9997 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9998 (dump_realized_face): Get font name from
9999 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10000
10001 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10002 conditionals. Don't check enable_font_backend. Delete all codes
10003 used only when USE_FONT_BACKEND is not defined.
10004 (xic_create_xfontset): Original code deleted and renamed from
10005 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10006 (x_make_gc): Don't set GCFont in GCs.
10007 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10008 opened by "fixed".
10009 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10010 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10011 get_font_repertory_func.
10012
10013 * xfont.c: Include <stdlib.h> and "ccl.h".
10014 (struct xfont_info): New structure.
10015 (xfont_query_font): Deleted.
10016 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10017 moved from xterm.c.
10018 (xfont_driver): Adjusted for the change of struct font_driver.
10019 (compare_font_names): New function.
10020 (xfont_list_pattern): Sort font names case insensitively. Make
10021 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10022 (xfont_list): Return a list, not vector.
10023 (xfont_match): If the font doesn't have QCname property, generate
10024 a name from the other font properties.
10025 (xfont_open): Return a font-object. Adjusted for the change of
10026 struct font. Get underline_thickness and underline_position from
10027 font property. Don't update dpyinfo->smallest_font_height and
10028 dpyinfo->smallest_char_width.
10029 (xfont_close): Don't free struct font.
10030 (xfont_prepare_face): Adjusted for the change of struct font.
10031 (xfont_done_face): Deleted.
10032 (xfont_has_char): Adjusted for the change of struct font.
10033 (xfont_encode_char, xfont_draw): Likewise.
10034 (xfont_check): New function.
10035
10036 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10037 callback function.
10038 (xftfont_match): Adjusted for the format change of font-entity.
10039 (xftfont_open): Adjusted for the format change of font-entity and
10040 font-object. Adjusted for the change of struct font. Return a
10041 font-object. Don't update dpyinfo->smallest_font_height and
10042 dpyinfo->smallest_char_width.
10043 (xftfont_close): Block input while calling XftFontClose.
10044 (xftfont_prepare_face): Don't block input while calling
10045 xftfont_get_colors. Adjusted for the change of struct font.
10046 (xftfont_shape): Return value of error case fixed.
10047
10048 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10049
10050 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10051 conditionals.
10052 (FONT_WIDTH): Return (f)->max_width.
10053 (struct x_display_info): Delete member `font'.
10054 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10055 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10056 (struct x_output): Change type of `font' to `struct font *'.
10057
10058 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10059 conditionals. Don't check enable_font_backend. Delete all codes
10060 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10061 (x_per_char_metric, x_encode_char): Deleted.
10062 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10063 (x_compute_glyph_string_overhangs): Adjusted for the change of
10064 `struct face'.
10065 (x_draw_glyph_string_foreground)
10066 (x_draw_composite_glyph_string_foreground): Likewise.
10067 (x_draw_glyph_string): Likewise. Use font->underline_position and
10068 font->underline_thickness.
10069 (x_new_font): Renamed from x_new_fontset2.
10070 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10071 (x_check_font): Call `check' method of a font driver.
10072 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10073 (x_query_font, x_get_font_repertory): Deleted.
10074 (x_find_ccl_program): Renamed and moved to xfont.c.
10075 (x_redisplay_interface): Adjusted for the change of `struct
10076 redisplay_interface'.
10077
10078 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10079 conditionals. Don't check enable_font_backend. Delete all codes
10080 used only when USE_FONT_BACKEND is not defined. Surround non-used
10081 code by "#ifdef OLD_FONT" and "endif".
10082 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10083
10084 * w32font.h (struct w32font_info): New member.
10085 (FONT_COMPAT): New macro.
10086 (w32font_open_internal): Prototype adjusted.
10087
10088 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10089 OLD_FONT" and "endif".
10090
10091 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10092 conditionals. Don't check enable_font_backend. Delete all codes
10093 used only when USE_FONT_BACKEND is not defined.
10094 (w32font_open): Return a font-object. Make a font-object by
10095 font_make_object. Adjusted for the change of struct w32font_info.
10096 (w32font_close): Don't free struct font. Adjusted for the change
10097 of struct w32font_info.
10098 (w32font_encode_char, w32font_text_extents, w32font_draw):
10099 Adjusted for the change of struct w32font_info.
10100 (w32font_draw): Likewise.
10101 (w32font_list_internal): Return a list, not vector.
10102 (w32font_open_internal): Change the 4th arg to font-object.
10103 Adjusted for the change of struct w32font_info and font-object format.
10104 (add_font_name_to_list): Don't downcase names.
10105 (w32_enumfont_pattern_entity): Make a font-entity by
10106 font_make_entity. Adjusted for the format change of font-entity.
10107 Use FONT_SET_STYLE to set a style-related font property. If a
10108 font is scalable, set avgwidth property to 0. Set font-entity
10109 property by font_put_extra.
10110 (font_matches_spec): Adjusted for the format change of font-entity.
10111 (w32_weight_table, w32_decode_weight): New variables.
10112 (w32_encode_weight): New function.
10113 (fill_in_logfont): Adjusted for the format change of font-spec.
10114 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10115 weight value.
10116 (w32font_driver): Adjusted for the change of struct font_driver.
10117
10118 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10119 conditionals. Don't check enable_font_backend. Surround non-used
10120 code by "#ifdef OLD_FONT" and "endif".
10121 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10122 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10123
10124 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10125 conditionals. Don't check enable_font_backend. Delete all codes
10126 used only when USE_FONT_BACKEND is not defined. Surround non-used
10127 code by "#ifdef OLD_FONT" and "endif".
10128
10129 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10130 (uniscribe_open): Return value changed to font-object.
10131 Adjusted for the format change of font-object.
10132 (uniscribe_otf_capability): Adjusted for the change of struct font.
10133 (add_opentype_font_name_to_list): Don't downcase names.
10134 (uniscribe_font_driver): Adjusted for the change of struct
10135 font_driver.
10136
101372008-05-13 Chong Yidong <cyd@stupidchicken.com>
10138
10139 * dispnew.c (update_frame_1): Check if tty output is still valid
10140 before flushing it.
10141
101422008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10143
10144 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10145 to Gtk+ menus.
10146
101472008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10148
10149 * dired.c (file_name_completion): Tweak the code so as to always do it
10150 in a single pass. Tighten the scope of some variables.
10151
10152 * dired.c (Qdefault_directory): New var.
10153 (file_name_completion): Use it instead of Fexpand_file_name.
10154 (syms_of_dired): Initialize it.
10155
101562008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10157
10158 * fileio.c (double_dollars): Remove dead code.
10159
101602008-05-10 Eli Zaretskii <eliz@gnu.org>
10161
10162 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10163 Mention w32-get-true-file-attributes in doc string.
10164
10165 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10166
101672008-05-09 Glenn Morris <rgm@gnu.org>
10168
10169 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10170 2008-04-23.
10171
101722008-05-09 Eli Zaretskii <eliz@gnu.org>
10173
10174 Support for reporting owner and group of each file on MS-Windows:
10175 * dired.c (stat_uname, stat_gname): New functions, with special
10176 implementation for w32.
10177 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10178
10179 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10180 (dflt_group_name): New static variable.
10181 (dflt_group): Rename from the_group.
10182 (init_user_info): Init dflt_group fields. Get user's group name
10183 from LookupAccountSid.
10184 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10185 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10186 New initialization states.
10187 (globals_of_w32): Initialize them to zero. Initialize the default
10188 group name to "None".
10189 (GetFileSecurity_Name): New global var, the name of the function
10190 to call for GetFileSecurity.
10191 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10192 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10193 (get_file_security, get_security_descriptor_owner)
10194 (get_security_descriptor_group, is_valid_sid)
10195 (get_file_security_desc, get_rid, get_name_and_id)
10196 (get_file_owner_and_group): New functions.
10197 (stat): Use get_file_security_desc and get_file_owner_and_group to
10198 report the owner and primary group of each file. Don't ignore the
10199 high 32 bits of file's size, now that st_size is 64-bit wide.
10200 Fix test when to get true file attributes.
10201 (init_user_info): Use get_rid instead of equivalent inline code.
10202 (fstat): Don't ignore the high 32 bits of file's size.
10203
102042008-05-09 Chong Yidong <cyd@stupidchicken.com>
10205
10206 * image.c (png_load): Use correct bit-depth for setting background
10207 color.
10208
102092008-05-08 Eli Zaretskii <eliz@gnu.org>
10210
10211 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10212 epa-hook.elc.
10213
102142008-05-08 Juanma Barranquero <lekktu@gmail.com>
10215
10216 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10217
102182008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10219
10220 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10221 because the original parameters are in pure storage now.
10222 (mac_window): Remove unused params. Update callers.
10223
102242008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10225
10226 * lread.c (substitute_object_recurse): Use lower-level primitives.
10227 Don't signal errors when traversing sub-char-tables.
10228 Don't loop over all the possible characters when traversing char-tables.
10229
10230 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10231 just like we do in print.c.
10232
102332008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10234
10235 * minibuf.c (Ftry_completion): Remove code left over from when we used
10236 scmp instead of Fcompare_strings.
10237
102382008-05-04 Juanma Barranquero <lekktu@gmail.com>
10239
10240 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10241
102422008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10243
10244 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10245 Create bitmap context in native byte order.
10246
10247 * macterm.c (XDrawLine)
10248 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10249 context in native byte order.
10250
102512008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10252
10253 * config.in: Regenerate.
10254
10255 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10256 New definitions for Image I/O support.
10257 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10258 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10259 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10260 (mac_data_provider_release_data, image_load_image_io)
10261 [USE_MAC_IMAGE_IO]: New functions.
10262 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10263 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10264 (init_image_func_pointer) [MAC_OSX]: Remove function.
10265 (image_load_quartz2d) [MAC_OSX]: Check availability of
10266 CGImageCreateWithPNGDataProvider at compile time.
10267 Use lowercase `false' for boolean constant.
10268 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10269 Use image_load_image_io.
10270 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10271 Don't check MyCGImageCreateWithPNGDataProvider.
10272 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10273 Don't call init_image_func_pointer.
10274
10275 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10276
10277 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10278 Make variable non-static.
10279 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10280 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10281
10282 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10283 (RED_FROM_ULONG): Mask off higher bits.
10284 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10285
10286 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10287 Include AvailabilityMacros.h.
10288 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10289 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10290
102912008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10292
10293 * chartab.c (Fset_char_table_range): If range is t, really set all
10294 chars to that value.
10295
102962008-05-03 Eli Zaretskii <eliz@gnu.org>
10297
10298 * dired.c (Ffile_attributes): Don't allow the device number become
10299 negative.
10300
103012008-05-02 Daiki Ueno <ueno@unixuser.org>
10302
10303 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10304
103052008-05-02 Juri Linkov <juri@jurta.org>
10306
10307 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10308 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10309 DEFAULT argument as a list of default values in docstrings.
10310
103112008-05-01 Chong Yidong <cyd@stupidchicken.com>
10312
10313 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10314
103152008-05-01 Martin Rudalics <rudalics@gmx.at>
10316
10317 * dispnew.c (change_frame_size_1): Preserve small windows when
10318 shrinking frames by calling set_window_height|width with third
10319 arg 2.
10320
10321 * window.h (struct window): Replace field too_small_ok by field
10322 resize_proportionally.
10323
10324 * window.c (make_window): Initialize resize_proportionally.
10325 (enlarge_window): Temporarily set resize_proportionally to make
10326 sure that shrink_windows does scale the window proportionally.
10327 (shrink_windows): When window has resize_proportionally set try
10328 to shrink it proportionally by stealing from other windows.
10329 (struct saved_window, Fset_window_configuration)
10330 (compare_window_configurations): Handle resize_proportionally.
10331 (WINDOW_TOTAL_SIZE): New macro.
10332 (window_min_size, shrink_windows, size_window): Use it.
10333 (check_min_window_sizes): Remove. Invalid values of
10334 window-min-height|width are handled by window_min_size_2 now.
10335 (size_window, Fsplit_window, enlarge_window)
10336 (adjust_window_trailing_edge, grow_mini_window): Don't call
10337 check_min_window_sizes.
10338 (window_min_size_2, window_min_size_1, window_min_size):
10339 New argument safe_p for retrieving "safe" minimum sizes.
10340 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10341 (adjust_window_trailing_edge, grow_mini_window):
10342 Adjust arguments of window_min_size... functions.
10343 (shrink_windows): Argument min_size removed. New argument
10344 safe_p allows shrinking windows to their safe minimum sizes.
10345 Calculate minimum size and decide whether a window shall be
10346 deleted for each window individually.
10347 (size_window): When nodelete_p equals 2, tell shrink_windows to
10348 delete windows only if their new minimum size is no more safe.
10349 (shrink_window_lowest_first): Call window_min_size_1 to make
10350 sure to preserve modeline of bottom-most window when resizing
10351 the minibuffer.
10352 (Fset_window_configuration, Fcurrent_window_configuration)
10353 (compare_window_configurations): Do not handle
10354 window-min-height|width any more.
10355 (syms_of_window): Clarify window-min-height|width doc-strings.
10356
103572008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10358
10359 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10360 some more. Copy some of the code from Ftry_completions.
10361 Remove special case code that dates back to initial revision when the
10362 slash was only added when necessary and that can't trigger nowadays.
10363
103642008-04-27 Kenichi Handa <handa@m17n.org>
10365
10366 * font.c (font_prop_validate): Signal `error' instead of `font'.
10367
103682008-04-29 Jason Rumney <jasonr@gnu.org>
10369
10370 * w32fns.c (Fw32_battery_status): New defun.
10371 (syms_of_w32fns): Defsubr it.
10372
103732008-04-28 Andreas Schwab <schwab@suse.de>
10374
10375 * dired.c (file_name_completion): Fix another mixing of encoded
10376 and decoded names.
10377
103782008-04-28 Juanma Barranquero <lekktu@gmail.com>
10379
10380 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10381
103822008-04-27 Juanma Barranquero <lekktu@gmail.com>
10383
10384 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10385
103862008-04-27 Andreas Schwab <schwab@suse.de>
10387
10388 * dired.c (file_name_completion): Fix inappropriate mixing of
10389 encoded and decoded names.
10390
10391 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10392
10393 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10394
103952008-04-26 Eli Zaretskii <eliz@gnu.org>
10396
10397 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10398 2008-03-31, it's not needed anymore with `struct stat' definition
10399 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10400 for the same reasons.
10401
104022008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10403
10404 * m/sparc.h: Additional redefinitions for GNU/Linux.
10405
104062008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10407
10408 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10409 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10410 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10411 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10412 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10413 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10414 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10415 Likewise.
10416
10417 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10418 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10419 (mac_ax_number_of_characters): Add externs.
10420 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10421 [USE_MAC_TSM]: Likewise.
10422 (mac_handle_text_input_event) [MAC_OSX]:
10423 Handle kEventTextInputOffsetToPos for no active input area case.
10424 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10425 (mac_handle_document_access_event)
10426 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10427 (install_application_handler) [MAC_OSX]: Register handlers for
10428 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10429 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10430 Register mac_handle_document_access_event.
10431
10432 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10433 Make functions non-static.
10434
104352008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10436
10437 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10438 (read_file_name_completion_ignore_case, insert_default_directory)
10439 (Qdefault_directory): Move to minibuffer.el.
10440 (Fread_file_name): Call the new `read-file-name' instead.
10441
104422008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10443
10444 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10445 Make function non-static.
10446 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10447 Remove function.
10448 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10449 Move to mactoolbox.c.
10450 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10451
10452 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10453 (mac_rect_make): New macro.
10454
10455 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10456 instead of float.
10457 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10458 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10459 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10460 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10461 CGRectMake.
10462 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10463 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10464 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10465 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10466 instead of WindowRef in argument type.
10467 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10468 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10469 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10470 instead of DISPLAY. All uses changed.
10471 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10472 (x_calc_absolute_position): Simplify so as not to use
10473 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10474
10475 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10476 instead of WindowRef in argument type.
10477 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10478 [TARGET_API_MAC_CARBON]: Remove externs.
10479 (create_apple_event, mac_event_parameters_to_lisp)
10480 [TARGET_API_MAC_CARBON]: Add externs.
10481
10482 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10483 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10484 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10485 is clicked.
10486 (x_activate_menubar): Remove extern for saved_menu_event_location.
10487 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10488 Move from mac.c.
10489
104902008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10491
10492 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10493 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10494
104952008-04-23 Jason Rumney <jasonr@gnu.org>
10496
10497 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10498 attributes only for local files.
10499
10500 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10501 default to Qlocal.
10502
105032008-04-22 Juri Linkov <juri@jurta.org>
10504
10505 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10506 read-buffer-to-switch instead of using the letter "B".
10507
105082008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10509
10510 * fileio.c (Qdefault_directory): New variable.
10511 (Fread_file_name): Use it to pass `dir' to the completion functions.
10512
105132008-04-20 Chong Yidong <cyd@stupidchicken.com>
10514
10515 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10516
105172008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10518
10519 * keyboard.c (Vpre_help_message): Remove.
10520 (show_help_echo): Remove default C code.
10521
10522 * dired.c (directory_files_internal, file_name_completion):
10523 Only call ENCODE_FILE if the string is indeed decoded.
10524
105252008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10526
10527 * Makefile.in (TOOLKIT_DEFINES): Remove.
10528 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10529
105302008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10531
10532 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10533 (mactoolbox.o): New target.
10534
10535 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10536 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10537
10538 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10539 Use mac_set_frame_window_background instead of XSetWindowBackground.
10540 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10541 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10542 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10543 instead of SetWindowTitleWithCFString.
10544 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10545 Move function to mactoolbox.c.
10546 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10547 Use mac_set_window_modified instead of SetWindowModified.
10548 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10549 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10550 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10551 FrontNonFloatingWindow. Use mac_activate_window instead of
10552 ActivateWindow. Use mac_active_non_floating_window instead of
10553 ActiveNonFloatingWindow.
10554 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10555 Use mac_show_hourglass and mac_hide_hourglass.
10556 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10557 instead of GetGlobalMouse.
10558 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10559 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10560 Use mac_bring_window_to_front instead of BringToFront.
10561 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10562 mactoolbox.c.
10563 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10564 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10565 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10566 mactoolbox.c.
10567
10568 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10569 (XtPointer): Move typedef from macmenu.c.
10570 (enum button_type): Move enum from macmenu.c.
10571 (widget_value): Move typedef from macmenu.c.
10572 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10573 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10574 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10575 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10576 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10577 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10578 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10579 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10580 (Selection): Move typedef from macselect.c.
10581 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10582 macterm.c.
10583 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10584 (mac_is_window_collapsed, mac_bring_window_to_front)
10585 (mac_send_window_behind, mac_hide_window, mac_show_window)
10586 (mac_collapse_window, mac_front_non_floating_window)
10587 (mac_active_non_floating_window, mac_activate_window)
10588 (mac_move_window_structure, mac_move_window, mac_size_window)
10589 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10590
10591 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10592 (enum mac_menu_kind): Move enum to mactoolbox.c.
10593 (min_menu_id): Move variable to mactoolbox.c.
10594 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10595 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10596 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10597 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10598 [TARGET_API_MAC_CARBON]: Likewise.
10599 (XtPointer): Move typedef to macgui.h.
10600 (enum button_type): Move enum to macgui.h.
10601 (widget_value): Move typedef to macgui.h.
10602 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10603 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10604 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10605 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10606 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10607 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10608 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10609 (popup_activated_flag): Make variable non-static.
10610 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10611 (add_menu_item, fill_menu, dispose_menus):
10612 Move functions to mactoolbox.c.
10613 (restore_show_help_function, menu_target_item_handler)
10614 (install_menu_target_item_handler, mac_handle_dialog_event)
10615 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10616 [TARGET_API_MAC_CARBON]: Likewise.
10617 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10618 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10619 (find_and_call_menu_selection, name_is_separator): Make function
10620 non-static.
10621 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10622 to mactoolbox.c.
10623 (set_frame_menubar): Don't call install_menu_quit_handler.
10624 (menu_item_selection): New variable.
10625 (mac_menu_show): Use create_and_show_popup_menu.
10626 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10627 selection but set variable menu_item_selection. All uses changed.
10628 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10629 Call install_menu_quit_handler. Move to mactoolbox.c.
10630
10631 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10632 (Selection): Move typedef to macgui.h.
10633 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10634 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10635 Make variables non-static.
10636 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10637 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10638 Make functions non-static.
10639 (Vmac_service_selection) [MAC_OSX]: Likewise.
10640 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10641 (mac_valid_selection_target_p, mac_clear_selection)
10642 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10643 (mac_put_selection_value, mac_selection_has_target_p)
10644 (mac_get_selection_value, mac_get_selection_target_list)
10645 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10646 Move functions to mactoolbox.c.
10647 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10648 Likewise.
10649 (copy_scrap_flavor_data, mac_handle_service_event)
10650 (install_service_handler) [MAC_OSX]: Likewise.
10651 (syms_of_macselect) <Vmac_dnd_known_types>:
10652 Use mac_dnd_default_known_types.
10653
10654 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10655 Move to mactoolbox.c.
10656 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10657 (Fx_selection_owner_p): Add EXFUN.
10658 (install_window_handler, remove_window_handler, XSetWindowBackground):
10659 Remove externs.
10660 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10661 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10662 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10663 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10664 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10665 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10666 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10667 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10668 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10669 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10670 (mac_valid_selection_target_p, mac_clear_selection)
10671 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10672 (mac_put_selection_value, mac_selection_has_target_p)
10673 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10674 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10675 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10676 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10677 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10678 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10679 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10680 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10681 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10682
10683 * mactoolbox.c: New file.
10684
106852008-04-18 Jason Rumney <jasonr@gnu.org>
10686
10687 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10688
106892008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10690
10691 * character.c (Fmultibyte_char_to_unibyte):
10692 Return latin1 chars unchanged.
10693
10694 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10695 relocated if it points to `name'.
10696
106972008-04-17 Kenichi Handa <handa@m17n.org>
10698
10699 * data.c (Faset): Allow setting a multibyte character in an
10700 ASCII-only unibyte string.
10701
10702 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10703
107042008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10705
10706 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10707 done in config.h.
10708
107092008-04-16 Juanma Barranquero <lekktu@gmail.com>
10710
10711 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10712 (Fchar_direction): Add usage in the docstring.
10713
107142008-04-15 Chong Yidong <cyd@stupidchicken.com>
10715
10716 * keyboard.c (read_key_sequence): Remove always-true checks.
10717
107182008-04-14 Jason Rumney <jasonr@gnu.org>
10719
10720 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10721 compatibility struct, for better underline positioning.
10722
107232008-04-13 David Hansen <david.hansen@gmx.net>
10724
10725 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10726 string.
10727
107282008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10729
10730 * m/hp800.h (XUINT, XSET): Remove.
10731
107322008-04-12 Juanma Barranquero <lekktu@gmail.com>
10733
10734 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10735 previous change.
10736
107372008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10738
10739 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10740 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10741
107422008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10743
10744 * keymap.h (map_keymap_canonical): Declare.
10745 * xmenu.c (single_keymap_panes): Use it.
10746
107472008-04-11 Glenn Morris <rgm@gnu.org>
10748
10749 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10750 set the target's value to that of the alias.
10751
107522008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10753
10754 * term.c (set_tty_color_mode): Left over typo.
10755
107562008-04-10 Michael Albinus <michael.albinus@gmx.de>
10757
10758 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10759 only after check for file name handler functions. Signal, when
10760 native functionality is not supported.
10761 (syms_of_fileio): Declare it unconditionally.
10762
107632008-04-10 Jason Rumney <jasonr@gnu.org>
10764
10765 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10766 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10767
10768 * w32.c (logon_network_drive): Also logon to remote drives that
10769 are mapped to drive letters.
10770
107712008-04-10 Glenn Morris <rgm@gnu.org>
10772
10773 * xdisp.c (truncate-partial-width-windows): Doc fix.
10774
107752008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10776
10777 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10778 Move functions to minibuffer.el.
10779 (syms_of_fileio): Don't declare them.
10780
107812008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10782
10783 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10784 (syms_of_minibuf): Remove its initialization.
10785
10786 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10787
107882008-04-09 Juanma Barranquero <lekktu@gmail.com>
10789
10790 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10791
107922008-04-09 Jason Rumney <jasonr@gnu.org>
10793
10794 * makefile.w32-in (distclean): Delete makefile too.
10795 (maintainer-clean): New target.
10796
10797 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10798
10799 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10800 for new font backend and composite cases.
10801
108022008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10803
10804 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10805 Most of the code moved to run_timers.
10806 (do_pending_atimers): Call run_timers.
10807 (run_timers): New function.
10808
10809 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10810 run atimers.
10811
10812 * process.c (wait_reading_process_output): The same as above.
10813
108142008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10815
10816 * minibuf.c (last_exact_completion): Remove variable.
10817 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10818 (complete_and_exit_1, complete_and_exit_2)
10819 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10820 (Fdisplay_completion_list, display_completion_list_1)
10821 (Fminibuffer_completion_help, Fself_insert_and_exit)
10822 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10823 minibuffer.el.
10824 (syms_of_minibuf): Remove corresponding initializations.
10825
10826 * keyboard.c (Qdeactivate_mark): New var.
10827 (command_loop_1): Use it to call `deactivate-mark'.
10828 (syms_of_keyboard): Initialize it.
10829
10830 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10831 to another frame.
10832 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10833 Don't call set_tty_color_mode.
10834 (store_frame_param): Reset previous_frame rather than call
10835 set_tty_color_mode.
10836 * term.c (set_tty_color_mode): Rewrite.
10837 * dispextern.h (set_tty_color_mode): New type.
10838 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10839
108402008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10841
10842 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10843 for generic chars, which do not exist any more in emacs-unicode.
10844
108452008-04-08 Michael Albinus <michael.albinus@gmx.de>
10846
10847 * coding.c (detect_coding_emacs_mule)
10848 (Ffind_operation_coding_system): Fix typo.
10849
108502008-04-08 Jason Rumney <jasonr@gnu.org>
10851
10852 * w32uniscribe.c (SNAME): Extract only symbol name.
10853
10854 * w32font.h (struct w32_metric_cache): New struct.
10855 (w32font_info): Use it.
10856 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10857 (CACHE_BLOCKSIZE): New constants.
10858
10859 * w32font.c (Qja, Qko, Qzh): New symbols.
10860 (syms_of_w32font): Initialise them.
10861 (font_matches_spec): Use them to filter by language.
10862 (recompute_cached_metrics): Remove function.
10863 (compute_metrics, clear_cached_metrics): New functions.
10864 (w32font_encode_char): Use them to manage metric cache.
10865 (w32font_text_extents): Cache metrics for all glyphs on demand.
10866 Delay converting glyph indices to WORD until needed.
10867 (w32font_open_internal): Initialize metric cache to empty.
10868 (registry_to_w32_charset): Charset should always be a symbol.
10869 (fill_in_logfont, list_all_matching_fonts): Family should
10870 always be a symbol.
10871
108722008-04-06 Jason Rumney <jasonr@gnu.org>
10873
10874 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10875 Give up if glyph indices not supported. Use uniscribe obtained
10876 ABC widths for individual metrics. Map glyph clusters back to
10877 characters using fClusterStart flag. Return number of glyphs
10878 produced, not chars processed.
10879 (uniscribe_shape): Map char at FROM to current glyph.
10880
108812008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10882
10883 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10884 Use SetMenuItemHierarchicalMenu.
10885
108862008-04-05 Jason Rumney <jasonr@gnu.org>
10887
10888 * image.c (pbm_load): Allow color values up to 65535.
10889 Throw an error if max_color_idx is outside the supported range.
10890 Report an error when image size is invalid.
10891 Read two bytes at a time when raw images have max_color_idx above 255.
10892
108932008-04-05 Eli Zaretskii <eliz@gnu.org>
10894
10895 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10896 cFileName a file name that includes `?' characters, use the 8+3
10897 alias in cAlternateFileName instead.
10898
108992008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10900
10901 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10902 append "CCL: Quitted" when the CCL program is quitted.
10903 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10904
10905 * ccl.h (struct ccl_program): New member quit_silently.
10906
109072008-04-05 Chong Yidong <cyd@stupidchicken.com>
10908
10909 * search.c (compile_pattern_1): Treat non-nil and non-string of
10910 search-spaces-regexp as nil.
10911
10912 * minibuf.c (Fassoc_string): Tweak docstring.
10913
109142008-04-05 Eli Zaretskii <eliz@gnu.org>
10915
10916 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10917 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10918 2008-03-14 to force inode be positive.
10919
10920 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10921 _S_* ones, since we now use our own sys/stat.h.
10922 (stat, fstat): Don't mangle the inode number.
10923 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10924
109252008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10926
10927 * frame.h (struct frame): Give one more bit to `visible' since we use
10928 values larger than 1 to indicate obscured frames on ttys.
10929
10930 * keymap.c (Qkeymap_canonicalize): New var.
10931 (Fmap_keymap_internal): New fun.
10932 (describe_map): Use keymap-canonicalize.
10933
10934 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10935 (Fundo_boundary): Set them.
10936 (syms_of_undo): Initialize them.
10937 (record_point): Use them instead of last_point_position*.
10938 (last_undo_buffer): Change type.
10939
109402008-04-04 Jason Rumney <jasonr@gnu.org>
10941
10942 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10943 (recompute_cached_metrics): Don't set ascent and descent per char.
10944
10945 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10946 (uniscribe_check_otf): Add GC protection before consing.
10947 Rearrange loop for counting features.
10948
109492008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10950
10951 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10952 buffer with byte-size of source buffer.
10953
109542008-04-03 Chong Yidong <cyd@stupidchicken.com>
10955
10956 * callint.c (Fcall_interactively): Handle temporary region even
10957 when shift-select-mode is off.
10958
109592008-04-03 Jason Rumney <jasonr@gnu.org>
10960
10961 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10962
109632008-04-03 Kenichi Handa <handa@m17n.org>
10964
10965 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10966 (CATEGORY_MASK_UTF_16): Likewise.
10967 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10968 binary file.
10969 (detect_coding): Add null-byte detection for a binary file.
10970 (detect_coding_system): Likewise.
10971
109722008-04-03 Jason Rumney <jasonr@gnu.org>
10973
10974 * w32uniscribe.c: New file.
10975
10976 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10977
10978 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10979
10980 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10981 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10982 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10983 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10984 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10985 (Qphonetic): New symbols.
10986 (syms_of_w32font): Initialize them.
10987 (font_supported_scripts): Use them.
10988 (w32font_list_family): List all charsets.
10989 (w32font_text_extents, recompute_cached_metrics): Fix metric
10990 calculations.
10991 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10992 Give opentype fonts their own format.
10993 (font_matches_spec): New arguments backend and logfont.
10994 Handle :otf spec for uniscribe backend.
10995 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10996 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10997
10998 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10999 font backend.
11000 (globals_of_w32fns): Initialize uniscribe font backend.
11001
11002 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11003 dependencies.
11004 (w32uniscribe.$(O)): New file to build.
11005 (FONT_OBJ): Include w32uniscribe.$(O).
11006 (LIBS): Add uniscribe libraries.
11007
11008 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11009
110102008-04-02 Chong Yidong <cyd@stupidchicken.com>
11011
11012 * callint.c (Vshift_select_mode): New var.
11013 (Finteractive): Document new ^ spec.
11014 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11015 is present.
11016
11017 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11018 (command_loop_1): Avoid running the direct display versions of
11019 forward-char and backward-char if shift-selection may occur.
11020 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11021 shift-translation takes place.
11022
11023 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11024 avoid clobbering by define-minor-mode.
11025
11026 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11027 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11028
11029 * syntax.c (Fforward_word): Add ^ interactive spec.
11030
11031 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11032 (Fscroll_right): Add ^ interactive spec.
11033
110342008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11035
11036 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11037
11038 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11039
11040 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11041
110422008-03-31 Juri Linkov <juri@jurta.org>
11043
11044 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11045
110462008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11047
11048 * gtkutil.c (xg_set_geometry): Fix indentation.
11049 (xg_resize_outer_widget): Remove.
11050 (x_wm_size_hint_off): Fix indentation.
11051 (xg_frame_set_char_size): Call flush_and_sync after
11052 gtk_window_resize.
11053 (x_wm_set_size_hint): Pass NULL as geometry window to
11054 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11055 Add menu bar and tool bar height to base height.
11056 (xg_update_frame_menubar, free_frame_menubar)
11057 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11058 (update_frame_tool_bar, free_frame_tool_bar):
11059 Change xg_resize_outer_widget to xg_frame_set_char_size.
11060
110612008-03-30 Michael Albinus <michael.albinus@gmx.de>
11062
11063 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11064 (Fdbus_call_method): New parameter TIMEOUT.
11065 (dbus-send-signal): Optimize UNGCPRO call.
11066
110672008-03-29 Juri Linkov <juri@jurta.org>
11068
11069 * window.c (Fdisplay_buffer): Move call to
11070 Vsplit_window_preferred_function out of conditions that check
11071 if window is eligible for vertical splitting.
11072 When Vsplit_window_preferred_function is non-nil, call it and use
11073 its non-nil return value as window. Otherwise, continue doing
11074 vertical splitting using Fsplit_window with arg horflag=nil.
11075 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11076 default value from `split-window' to nil.
11077
110782008-03-29 Juri Linkov <juri@jurta.org>
11079
11080 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11081 for interactive code letters 'b' and 'B'.
11082
110832008-03-29 Eli Zaretskii <eliz@gnu.org>
11084
11085 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11086 multibyte string.
11087
110882008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11089
11090 * keyboard.c (pending_funcalls): New var.
11091 (timer_check): Run it.
11092 (syms_of_keyboard): Initialize it.
11093 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11094 (Vdelete_terminal_functions): New vars.
11095 (syms_of_terminal): Initialize them.
11096 (Fdelete_terminal): Run delete-terminal-functions.
11097 * xdisp.c (safe_eval): Rewrite.
11098 (safe_call2): New fun.
11099 * frame.c (Qdelete_frame_functions): New var.
11100 (syms_of_frame): Initialize it.
11101 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11102 * lisp.h (safe_call2, pending_funcalls): Declare.
11103
111042008-03-28 Andreas Schwab <schwab@suse.de>
11105
11106 * indent.c (Fmove_to_column): Move declaration before statements.
11107
111082008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11109
11110 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11111 (struct frame): Use bit fields for boolean vars.
11112
11113 * process.c (server_accept_connection): Simplify naming.
11114 (emacs_get_tty_pgrp): Use SDATA.
11115
11116 * coding.c (decode_coding_object): Fix last change.
11117
111182008-03-27 Jason Rumney <jasonr@gnu.org>
11119
11120 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11121
111222008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11123
11124 * charset.c (Fdefine_charset_internal): Change the way of
11125 registering charsets in Vcharset_order_list.
11126 (syms_of_charset): Make the charset `eight-bit' supplementary.
11127
111282008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11129
11130 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11131 operations, to avoid having the difference between pointers
11132 overflow.
11133
111342008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11135
11136 * indent.c (check_display_width): New fun.
11137 (scan_for_column): Use it.
11138
11139 * data.c (syms_of_data): Mark most-positive-fixnum and
11140 most-negative-fixnum as constants.
11141
11142 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11143
11144 * indent.c (scan_for_column): Extract from current_column_1.
11145 Merge with the same code from Fmove_to_column.
11146 (current_column_1, Fmove_to_column): Use it.
11147
111482008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11149
11150 * keymap.c (map_keymap_internal): New fun.
11151 (map_keymap): Use it.
11152 (Fmap_keymap_internal): New fun.
11153 (Fmap_keymap): Remove left-out test from before make_save_value.
11154
11155 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11156
11157 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11158 Use XCAR/XCDR.
11159
11160 * process.h (struct Lisp_Process): Remove filter_multibyte.
11161 * process.c (QCfilter_multibyte): Remove.
11162 (setup_process_coding_systems): Don't use filter_multibyte.
11163 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11164 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11165 (Fset_process_filter_multibyte): Change the coding-system to
11166 approximate the previous behavior.
11167 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11168 coding-system.
11169
11170 * coding.c (decode_coding_object): When not decoding into a buffer,
11171 obey the coding system's preference of (uni|multi)byte.
11172
111732008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11174
11175 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11176 every char is changed and has a different byte-length.
11177 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11178 Fix int -> EMACS_INT.
11179
111802008-03-23 David Hansen <david.hansen@gmx.net>
11181
11182 * dbusbind.c (xd_read_message): Remove extra copying of message
11183 strings. Check for NULL `interface' or `member'.
11184
111852008-03-22 Eli Zaretskii <eliz@gnu.org>
11186
11187 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11188 cFileName a file name that includes `?' characters, use the 8+3
11189 alias in cAlternateFileName instead.
11190
111912008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11192
11193 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11194
111952008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11196
11197 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11198 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11199 work on current_buffer only instead (that was already the case
11200 for some of the code anyway).
11201 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11202 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11203 (SET_PT, SET_PT_BOTH): Adjust.
11204 * intervals.h (set_point, temp_set_point, set_point_both)
11205 (temp_set_point_both): Remove redundant declarations.
11206
112072008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11208
11209 * fileio.c (Finsert_file_contents):
11210 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11211 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11212 when buffer != current_buffer anyway.
11213
112142008-03-20 Andreas Schwab <schwab@suse.de>
11215
11216 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11217 as default.
11218
112192008-03-19 Jason Rumney <jasonr@gnu.org>
11220
11221 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11222 (syms_of_w32fns): Initialize them.
11223 (HOURGLASS_ID): New constant.
11224 (x_window_to_frame): Don't check hourglass_window.
11225 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11226 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11227 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11228 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11229 Only change the cursor if hourglass is not active.
11230 (Fx_create_frame): Initialize frame's current_cursor.
11231 (hourglass_atimer): Remove.
11232 (hourglass_started): New function.
11233 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11234 (show_hourglass): Adapt to w32, changing argument to frame.
11235
11236 * w32term.h (struct w32_output): Remove hourglass_window.
11237 Add current_cursor.
11238
11239 * eval.c (call_debugger, Fsignal):
11240 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11241 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11242 (Fexecute_extended_command, cancel_hourglass_unwind):
11243 * minibuf.c (read_minibuf):
11244 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11245
112462008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11247
11248 * window.c (run_funs): New fun.
11249 (run_window_configuration_change_hook): Use it to run the buffer-local
11250 and the global part of the hook.
11251
11252 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11253 (unwind_format_mode_line): Restore selected window.
11254 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11255
112562008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11257
11258 * editfns.c (Fchar_equal): Check they are valid characters.
11259
11260 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11261
112622008-03-17 Andreas Schwab <schwab@suse.de>
11263
11264 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11265 against a charset.
11266
11267 * lisp.h (Fbuffer_list): Declare.
11268
112692008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11270
aac0c6e3
MR
11271 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11272 handlebox_widget is != 0.
11273
112742008-03-16 Juri Linkov <juri@jurta.org>
11275
11276 * callint.c (Fcall_interactively): For interactive code letters
11277 'b' and 'B' put the buffer list into the list of default "future"
11278 values of the minibuffer.
11279
112802008-03-16 Andreas Schwab <schwab@suse.de>
11281
11282 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11283 modifiers.
11284
11285 * regex.c (re_match_2_internal): Correct matching of a charset
11286 against latin-1 characters.
11287
112882008-03-16 Kenichi Handa <handa@m17n.org>
11289
11290 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11291 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11292 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11293 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11294 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11295 CHAR_STRING_ADVANCE.
11296 (produce_chars): Fix for the case that the source and the
11297 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11298 instead of CHAR_STRING_ADVANCE.
11299 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11300 STRING_CHAR_ADVANCE.
11301
113022008-03-15 Andreas Schwab <schwab@suse.de>
11303
11304 * regex.c (re_match_2_internal): Correct matching of eight bit
11305 characters in unibyte strings.
11306
113072008-03-15 Martin Rudalics <rudalics@gmx.at>
11308
11309 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11310 at end of range when it coincides with the end of the buffer.
11311
113122008-03-14 Eli Zaretskii <eliz@gnu.org>
11313
11314 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11315
11316 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11317
113182008-03-14 Jason Rumney <jasonr@gnu.org>
11319
11320 * editfns.c (initial_tz): New variable.
11321 (syms_of_editfns): Initialize it.
11322 (Fset_time_zone_rule): Set it when first called.
11323 Use it when TZSTRING is nil.
11324
11325 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11326 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11327 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11328 (globals_of_w32fns): Initialize them.
11329 (compute_tip_xy): Use them to position tooltips.
11330
113312008-03-14 Glenn Morris <rgm@gnu.org>
11332
11333 * emacs.c (main): Revert previous change.
11334 (standard_args): Revert -internal-script back to -scriptload,
11335 and remove the long-option form.
11336
113372008-03-13 Glenn Morris <rgm@gnu.org>
11338
11339 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11340 Remove option -enable-font-backend.
11341
113422008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11343
11344 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11345
113462008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11347
11348 * xterm.c (x_connection_closed): For GTK: If this is the last
11349 terminal just exit without closing the display.
11350
113512008-03-11 Jason Rumney <jasonr@gnu.org>
11352
11353 * w32font.c (w32font_full_name): Use floor to round.
11354
f0131492 113552008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11356
11357 * sound.c (alsa_configure): Declare vol at beginning of block.
11358
11359 * fontset.c (Ffontset_info): Remove extra semicolon.
11360
113612008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11362
11363 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11364 size of resulting string.
11365
113662008-03-10 Jason Rumney <jasonr@gnu.org>
11367
11368 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11369
113702008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11371
11372 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11373 Don't pretend as if characters with display property haven't been
11374 consumed for string-replacing-string case.
11375
113762008-03-08 Kim F. Storm <storm@cua.dk>
11377
11378 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11379 (get_next_display_element, next_element_from_string)
11380 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11381
113822008-03-08 Andreas Schwab <schwab@suse.de>
11383
11384 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11385
113862008-03-06 Jason Rumney <jasonr@gnu.org>
11387
11388 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11389 when charset not specified. Only translate ANSI to unicode when
11390 font_type is truetype.
11391 (w32font_coverage_ok): New function.
11392 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11393
113942008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11395
11396 * lread.c (Fread_char): Resolve modifiers.
11397 (Fread_char_exclusive): Likewise.
11398
11399 * character.c (char_resolve_modifier_mask): New function.
11400 (char_string): Use char_resolve_modifier_mask.
11401 (Fchar_resolve_modifiers): New function.
11402 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11403 function.
11404
114052008-03-04 Jason Rumney <jasonr@gnu.org>
11406
11407 * makefile.w32-in: Always include w32font.c in the build.
11408 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11409
114102008-03-04 Andreas Schwab <schwab@suse.de>
11411
11412 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11413 (versionclean): Likewise.
11414
114152008-03-04 Juanma Barranquero <lekktu@gmail.com>
11416
11417 * .cvsignore: Add oo.
11418
114192008-03-03 Andreas Schwab <schwab@suse.de>
11420
11421 * coding.c (decode_coding_object): Inhibit gap shrinking while
11422 decoding in place.
11423
114242008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11425
11426 * w32term.c: Remove unused include "gnu.h".
11427 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11428
11429 * gnu.h: Rename to ...
11430 * emacs-icon.h: ... this.
11431 * xterm.c: Use emacs-icon.h instead of gnu.h.
11432 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11433
114342008-03-03 Juanma Barranquero <lekktu@gmail.com>
11435
11436 * w32font.c: Include math.h.
11437
114382008-03-03 Jason Rumney <jasonr@gnu.org>
11439
11440 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11441 Compute options separately.
11442 (w32font_open_internal): Set glyph_idx before caching metrics.
11443
11444 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11445 Define if system headers don't.
11446 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11447 (w32font_encode_char): Don't declare here.
11448
11449 * w32font.c (Quniscribe, QCformat): New symbols.
11450 (syms_of_w32font): Define them.
11451 (w32font_has_char): Indicate uncertainty.
11452 (w32font_encode_char): Encode as glyph point. Make static.
11453 (recompute_cached_metrics): New function.
11454 (w32font_open_internal): Use it. Set font to use glyph points
11455 initially. Set format based on type of font.
11456 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11457 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11458 on it. Set format based on information available here.
11459 (add_font_entity_to_list): Identify backend based on opentype_only.
11460
114612008-03-02 Andreas Schwab <schwab@suse.de>
11462
11463 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11464
11465 * coding.c (decode_coding_big5, produce_chars):
11466 Fix typos in last change.
11467
114682008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11469
11470 * gnu.h: New icon.
11471
114722008-03-02 Kenichi Handa <handa@m17n.org>
11473
11474 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11475 `dos', don't decode '\r' if that is the last in the source.
11476 (decode_coding_utf_16, decode_coding_emacs_mule)
11477 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11478 (decode_coding_raw_text, decode_coding_charset): Likewise.
11479 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11480
114812008-03-01 Jason Rumney <jasonr@gnu.org>
11482
11483 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11484
114852008-03-01 Kim F. Storm <storm@cua.dk>
11486
11487 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11488
114892008-03-01 Jason Rumney <jasonr@gnu.org>
11490
11491 * w32font.c (w32font_full_name): New function.
11492 (w32font_open_internal): Use it.
11493
114942008-03-01 Kim F. Storm <storm@cua.dk>
11495
11496 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11497
114982008-03-01 Jason Rumney <jasonr@gnu.org>
11499
11500 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11501
115022008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11503
11504 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11505 xg_frame_resized when the event is for the edit widget.
11506
11507 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11508
11509 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11510 set_char_size.
11511 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11512 operations on widgets here. Just set frame size if needed.
11513 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11514 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11515 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11516 the whole frame.
11517 (xg_create_tool_bar): Move attachment of the tool bar to
11518 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11519 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11520
115212008-03-01 Jason Rumney <jasonr@gnu.org>
11522
11523 * w32fns.c (w32_msg_pump): Disable debug code.
11524
115252008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11526
11527 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11528
115292008-02-29 Chong Yidong <cyd@stupidchicken.com>
11530
11531 * xdisp.c (next_overlay_string): Don't set
11532 overlay_strings_at_end_processed_p if we're currently reading from
11533 a display string.
11534
115352008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11536
11537 * xdisp.c (get_overlay_strings_1): Fix typo.
11538
115392008-02-29 Chong Yidong <cyd@stupidchicken.com>
11540
11541 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11542
115432008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11544
11545 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11546
11547 * xdisp.c (display_mode_element): Cancel the previous change.
11548 (decode_mode_spec): Likewise.
11549 (handle_auto_composed_prop): Don't make composition if it->string
11550 is a string.
11551
115522008-02-27 Kim F. Storm <storm@cua.dk>
11553
11554 * lisp.h (GLYPH): Change type from int to struct with separate char
11555 and face_id members.
11556 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11557 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11558 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11559 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11560 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11561 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11562 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11563 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11564 handle new Lisp glyph code encoding, either an integer or a cons.
11565
11566 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11567 (GLYPH_ALIAS): Delete.
11568 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11569 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11570 (GLYPH_FROM_CHAR): Replace macro by ...
11571 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11572
11573 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11574 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11575 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11576 (GLYPH_INVALID_P): New macro.
11577 (spec_glyph_lookup_face): Update prototype.
11578
11579 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11580 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11581 new glyph code encoding.
11582 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11583 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11584
11585 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11586 Adapt to new glyph type and new glyph code encoding.
11587
11588 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11589
11590 * indent.c (current_column, current_column_1, Fmove_to_column)
11591 (compute_motion): Adapt to new glyph code encoding.
11592
11593 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11594
115952008-02-27 Chong Yidong <cyd@stupidchicken.com>
11596
11597 * process.c (wait_reading_process_output): Check for window
11598 changes caused by timers.
11599 Suggested by Johan Bockgård.
11600
116012008-02-27 Glenn Morris <rgm@gnu.org>
11602
11603 * emacs.c (USAGE1): Add `--disable-font-backend'.
11604
116052008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11606
11607 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11608 is made to the buffer.
11609
116102008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11611
11612 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11613 (face_at_string_position):
11614 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11615 (face_at_string_position):
11616 * xdisp.c (display_string, next_overlay_change):
11617 * buffer.h (overlays_at):
11618 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11619 Update callers.
11620
116212008-02-26 Chong Yidong <cyd@stupidchicken.com>
11622
11623 * editfns.c (Fformat): Doc fix.
11624
116252008-02-26 Juanma Barranquero <lekktu@gmail.com>
11626
11627 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11628 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11629 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11630
116312008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11632
11633 * buffer.c (Fbuffer_swap_text): New function.
11634 (syms_of_buffer): Defsubr it.
11635
116362008-02-25 Chong Yidong <cyd@stupidchicken.com>
11637
11638 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11639
116402008-02-25 Jason Rumney <jasonr@gnu.org>
11641
11642 * w32font.c (w32font_draw): Draw one character at a time when padding.
11643
116442008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11645
11646 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11647 Handle a nil arg. Use run_window_configuration_change_hook.
11648 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11649 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11650 Use run_window_configuration_change_hook.
11651
116522008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11653
11654 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11655 1-pixel width.
11656
116572008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11658
11659 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11660 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11661 if the glyph in the font is zero pixel with.
11662
11663 * dispextern.h (struct glyph_string): New member padding_p.
11664
11665 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11666
11667 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11668
11669 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11670
11671 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11672
11673 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11674
116752008-02-25 Jason Rumney <jasonr@gnu.org>
11676
11677 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11678
116792008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11680
11681 Allow fine-grained image-cache flushing.
11682 * dispextern.h (struct image): Add `dependencies' field.
11683 (clear_image_caches): Change arg to Lisp_Object.
11684 * image.c (make_image): Initialize `dependencies' field.
11685 (clear_image_cache): Change arg to allow fine-grained flushing.
11686 Perform the flush even if image-cache-eviction-delay is nil.
11687 (clear_image_caches): Change arg to Lisp_Object.
11688 (Fclear_image_cache): Expand meaning of the argument.
11689 (mark_image): Mark `dependencies' field.
11690 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11691 (lface_hash): Use XHASH rather than XFASTINT.
11692 (face_at_buffer_position): Fix int -> EMACS_INT position.
11693 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11694 (select_frame_for_redisplay): Remove code duplication.
11695 (redisplay_internal): Adapt arg to call to clear_image_caches.
11696
116972008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11698
11699 * s/vms4-0.h:
11700 * s/vms4-2.h:
11701 * s/vms4-4.h:
11702 * s/vms5-5.h: Remove, unused.
11703
11704 * s/irix5-2.h:
11705 * s/irix6-0.h:
11706 * s/riscos5.h:
11707 * s/mach-bsd4-3.h:
11708 * m/mips4.h: Remove files for obsolete systems.
11709
11710 * Makefile.in:
11711 * filelock.c:
11712 * unexmips.c:
11713 * m/hp9000s300.h:
11714 * m/iris4d.h:
11715 * s/aix3-1.h:
11716 * s/hpux.h:
11717 * s/msdos.h:
11718 * s/usg5-0.h:
11719 * s/usg5-2-2.h:
11720 * s/usg5-2.h:
11721 * s/usg5-3.h: Remove references to obsolete variables.
11722
11723 * s/irix5-0.h: Remove, move all the contents ...
11724 * s/irix6-5.h: ... here. Simplify.
11725 * config.in: Regenerate.
11726
117272008-02-24 Jason Rumney <jasonr@gnu.org>
11728
11729 * w32term.c (x_draw_glyph_string_background): Clear the background
11730 manually when cleartype is in use.
11731 (x_draw_glyph_string_foreground): Draw text transparently when
11732 cleartype is in use.
11733
11734 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11735 a font into it unless we have to.
11736
117372008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11738
11739 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11740 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11741
aac0c6e3
MR
117422008-02-18 Jason Rumney <jasonr@gnu.org>
11743
11744 * w32fns.c (Fw32_shell_execute): Encode parameters.
11745
117462008-02-09 Eli Zaretskii <eliz@gnu.org>
11747
11748 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11749
117502008-02-05 Juanma Barranquero <lekktu@gmail.com>
11751
11752 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11753
117542008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11755
11756 * xterm.c (x_set_offset): Don't change the gravity if
11757 CHANGE_GRAVITY is -1.
11758
117592008-02-23 Chong Yidong <cyd@stupidchicken.com>
11760
11761 * fileio.c (auto_save_error_occurred): New var.
11762 (auto_save_error): Set it.
11763 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11764 error occurred.
11765
117662008-02-23 Eli Zaretskii <eliz@gnu.org>
11767
11768 * w32.c (globals_of_w32): Add initializations for
11769 g_b_init_get_sid_sub_authority and
11770 g_b_init_get_sid_sub_authority_count.
11771
117722008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11773
11774 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11775 (font_parse_xlfd): Use them for sanity check.
11776 (Finternal_set_font_style_table): Make sure the table is bijective.
11777
11778 Consolidate the image_cache to the terminal struct.
11779 * termhooks.h (P_): Remove redundant def.
11780 (struct terminal): New field `image_cache'.
11781 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11782 of FRAME_X_IMAGE_CACHE.
11783 * xterm.h (struct x_display_info): Remove image_cache field.
11784 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11785 * w32term.h (struct w32_display_info): Remove image_cache field.
11786 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11787 * macterm.h (struct mac_display_info): Remove image_cache field.
11788 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11789 * xterm.c (x_term_init):
11790 * w32term.c (w32_term_init):
11791 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11792 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11793 Remove declarations.
11794 (clear_image_caches, mark_image_cache): New declarations.
11795 * xfaces.c (clear_face_cache):
11796 * xdisp.c (redisplay_internal): Use clear_image_caches.
11797 * image.c (clear_image_cache): Don't check that a frame is on
11798 a window-system before checking if it shares the same cache.
11799 (clear_image_caches): New function.
11800 (Fclear_image_cache): Use it.
11801 (mark_image): Move from allo.c.
11802 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11803 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11804 (mark_object): Don't call mark_image_cache for frames.
11805 (mark_terminals): Call mark_image_cache.
11806
11807 * lisp.h (Fdelete_terminal): Declare.
11808
11809 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11810 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11811 wrong_type_argument.
11812
118132008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11814
11815 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11816 malayalam.el, and tamil.el. Add sinhala.el.
11817
118182008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11819
11820 * xterm.c (x_connection_closed): Consolidate identical tests.
11821 (x_delete_terminal): Don't crash if called via x_connection_closed.
11822
118232008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11824
11825 * xdisp.c (decode_mode_spec): New arg string.
11826 (display_mode_element): Adjust for the above change.
11827
118282008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11829
11830 * callint.c (Fcall_interactively): Use AREF.
11831
118322008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11833
11834 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11835
118362008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11837
11838 * xfns.c (Fx_show_tip): Set string to " " if empty.
11839
118402008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11841
11842 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11843 with Qt.
11844
118452008-02-17 Kenichi Handa <handa@m17n.org>
11846
11847 * ftfont.c (ftfont_shape): Return Lispy number.
11848
11849 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11850 for GCs.
11851 (Finternal_set_font_selection_order): Call font_update_sort_order
11852 only when enable_font_backend is set.
11853 (realize_x_face): Set face->font_info to that of default face only
11854 when enable_font_backend is set.
11855
11856 * xdisp.c (handle_composition_prop): Set it->c to the fist
11857 character of the composed region.
11858 (fill_composite_glyph_string): Set base_face->font_info to
11859 s->font_info. Get a face for ascii from base_face->ascii_face.
11860 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11861 with a face already decided.
11862 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11863 non-negative.
11864 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11865 call font_prepare_composition unconditionally.
11866
11867 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11868
11869 * xterm.h (struct x_display_info): New member font.
11870
11871 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11872 (x_set_mouse_face_gc, x_new_font): Likewise.
11873 (x_term_init): Setup display_info->font.
11874 (x_delete_terminal): Free display_info->font.
11875
11876 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11877
11878 * ftxfont.c (ftxfont_default_fid): Delete it.
11879 (ftxfont_open): Set xfont->fid to 0.
11880 (ftxfont_end_for_frame): Clear data specific to the frame and the
11881 font-driver.
11882
11883 * xftfont.c (xftfont_default_fid): Delete it.
11884 (xftfont_open): Set xfont->fid to 0.
11885
11886 * fontset.c (FONTSET_OBJLIST): New macro.
11887 (fontset_find_font): Update font-object list of the fontset.
11888 (free_realized_fontset): New function.
11889 (free_face_fontset): Call free_realized_fontset.
11890 (Ffont_info): Call font_close_object only when enable_font_backend
11891 is set.
11892
11893 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11894 [HAVE_NTGUI]: Include w32term.h.
11895 [MAC_OS]: Include macterm.ch.
11896 (font_otf_ValueRecord): Use make_number.
11897 (font_finish_cache): Fix handling of reference count.
11898 (font_clear_cache): Update num_fonts.
11899 (font_open_entity): Update smallest_char_width and
11900 smallest_font_height of the frame.
11901 (font_close_object): Update num_fonts.
11902 (Fclear_font_cache): Fix finding the target cache data.
11903
119042008-02-16 Glenn Morris <rgm@gnu.org>
11905
11906 * fontset.c (Finternal_char_font): Fix compilation warning.
11907
119082008-02-16 Eli Zaretskii <eliz@gnu.org>
11909
11910 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11911 instead of char arrays. Enlarge the size of array passed to
11912 get_token_information.
11913
11914 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11915 warnings.
11916
119172008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11918
11919 * .gdbinit: Don't set `args', it breaks gdb --args.
11920
119212008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11922
11923 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11924 within a narrowed buffer.
11925
119262008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11927
11928 * coding.c (decode_coding_object, encode_coding_object):
11929 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11930
119312008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11932
11933 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11934 hardcoding 1.
11935 (detect_coding_system):
11936 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11937 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11938 * insdel.c (insert_from_gap):
11939 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11940 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11941 (string_to_multibyte):
11942 * character.c (chars_in_text, multibyte_chars_in_text):
11943 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11944
11945 * character.h (FETCH_STRING_CHAR_ADVANCE)
11946 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11947 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11948 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11949
11950 * casefiddle.c (casify_region): Only call after-change and composition
11951 functions on the part of the region that was changed.
11952
11953 * keyboard.c (read_avail_input):
11954 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11955
119562008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11957
11958 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11959 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11960
119612008-02-11 Juanma Barranquero <lekktu@gmail.com>
11962
11963 * w32menu.c (push_submenu_start, push_submenu_end)
11964 (push_left_right_boundary, push_menu_pane, push_menu_item):
11965 * keyboard.c (read_key_sequence): Don't pass args with side effects
11966 to AREF, it fails when compiling with -DENABLE_CHECKING.
11967
119682008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11969
11970 * Makefile.in (${lispsource}international/charprop.el):
11971 Delete this target.
11972
11973 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11974 emacs-unicode-2.
11975
119762008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11977
11978 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11979
119802008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11981
11982 * frame.c (Qnoelisp): New symbol.
11983 (syms_of_frame): Initialize it.
11984 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11985 harmless Elisp code, from a strong `force' from x_connection_closed.
11986 * frame.h (Qnoelisp): Declare.
11987 * xterm.c (x_connection_closed): Pass `noelisp'.
11988
11989 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11990 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11991 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11992 rather than `int' for the type of `type'.
11993
119942008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11995
11996 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11997
11998 * Makefile.in (GNUC): Remove support for gcc-1.x.
11999
120002008-02-10 Richard Stallman <rms@gnu.org>
12001
12002 * lisp.h (ASET): Use AREF, not ASLOT.
12003
120042008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12005
12006 * lisp.h (ASET): Check bounds.
12007
120082008-02-10 Glenn Morris <rgm@gnu.org>
12009
12010 * buffer.c (mode-name): Doc fix.
12011
120122008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12013
12014 * Makefile.in:
12015 * emacs.c:
12016 * gmalloc.c:
12017 * keyboard.c:
12018 * lisp.h:
12019 * m/ibm370aix.h:
12020 * process.c:
12021 * regex.c:
12022 * s/hpux.h:
12023 * sysdep.c:
12024 * sysselect.h:
12025 * systty.h:
12026 * unexec.c:
12027 * w32term.c:
12028 * xsmfns.c:
12029 * xterm.c: Remove code that deals with obsolete variables.
12030
12031 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12032
12033 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12034 nothing else needs it anymore.
12035
120362008-02-09 Eli Zaretskii <eliz@gnu.org>
12037
12038 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12039 instead of unibyte_char_to_multibyte.
12040
120412008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12042
12043 * s/gnu-linux.h: Remove commented out code.
12044
12045 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12046
12047 * Makefile.in: Update what RMS says about using autoconf.
12048 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12049 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12050 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12051 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12052
120532008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12054
12055 * keymap.c (Fkey_description): Move side effect outside of macro call.
12056
12057 * xfaces.c (Finternal_make_lisp_face):
12058 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12059
12060 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12061 (syms_of_fontset): Use ASET.
12062
12063 * fns.c (concat): Move side effect outside of macro call.
12064 (hash_clear): Use ASET.
12065
120662008-02-08 Richard Stallman <rms@gnu.org>
12067
12068 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12069 If FORCE, and frame has a surrogate minibuffer for another frame,
12070 delete the other frame first.
12071
120722008-02-07 Timo Savola <timo.savola@iki.fi>
12073
12074 * xterm.c (x_detect_focus_change): Handle embed client message.
12075 (handle_one_xevent): Ditto.
12076 (handle_one_xevent): If embedded and we get a button press/release,
12077 request focus.
12078 (xembed_set_info, xembed_send_message): New functions.
12079 (x_make_frame_visible): Call xembed_set_info if embedded.
12080 (x_make_frame_invisible): Call xembed_set_info if embedded.
12081 (x_term_init): Initialize Xatom_XEMBED.
12082 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12083 (x_iconify_frame): Ditto.
12084
12085 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12086 (enum xembed_info, enum xembed_message, enum xembed_focus)
12087 (enum xembed_modifier, enum xembed_accelerator): New.
12088 (xembed_set_info, xembed_send_message): Declare.
12089 (FRAME_X_EMBEDDED_P): New.
12090
12091 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12092 gtk_plug_new.
12093
12094 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12095 window ID of a frame.
12096 (x_window): Reparent frame if embedded.
12097 (Fx_create_frame): Don't set border width if embedded.
12098
12099 * emacs.c (USAGE3): Add --parent-id.
12100 (standard_args): Ditto.
12101
121022008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12103
12104 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12105
121062008-02-07 Jim Meyering <meyering@redhat.com>
12107
12108 Use "do...while (0)", not "if (1)...else" in macro definitions.
12109 The latter provokes a warning from gcc about the empty else, when
12110 followed by ";". Also, without that trailing semicolon, it would
12111 silently swallow up any following statement.
12112 * syntax.h (SETUP_SYNTAX_TABLE)
12113 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12114 * buffer.h (DECODE_POSITION): Likewise.
12115 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12116 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12117 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12118 (FETCH_CHAR_ADVANCE): Likewise.
12119 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12120
121212008-02-07 Jim Meyering <meyering@redhat.com>
12122
12123 * lread.c [lint]: Don't include <sys/inode.h>.
12124
121252008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12126
12127 * xselect.c (x_handle_dnd_message):
12128 * xmenu.c (digest_single_submenu, xmenu_show):
12129 * xdisp.c (with_echo_area_buffer_unwind_data)
12130 (format_mode_line_unwind_data, unwind_format_mode_line)
12131 (display_menu_bar):
12132 * eval.c (Ffetch_bytecode):
12133 * doc.c (store_function_docstring):
12134 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12135 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12136 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12137
121382008-02-07 Kenichi Handa <handa@m17n.org>
12139
12140 * ftxfont.c (ftxfont_open): Don't set
12141 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12142
12143 * ftfont.c (ftfont_open): Fix previous change.
12144
121452008-02-06 Jason Rumney <jasonr@gnu.org>
12146
12147 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12148 Use cached metrics for ASCII characters.
12149 (w32font_open_internal): Don't set font's owning_frame.
12150 Cache metrics for ASCII characters.
12151
12152 * w32font.h (struct w32font_info): Add ascii_metrics.
12153 Remove owning_frame.
12154
121552008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12156
12157 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12158 to negative value.
12159
12160 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12161
12162 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12163
12164 * charset.c (syms_of_charset): Set QCtest and Qeq.
12165
121662008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12167
12168 * process.c (Fstart_process):
12169 * callproc.c (Fcall_process): Handle the case where
12170 Funhandled_file_name_directory returns nil.
12171
12172 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12173 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12174 * font.c (check_gstring): Use them and AREF to access the vector before
12175 we know it's really a gstring.
12176 (Ffont_shape_text): Fix typo.
46e722a9 12177 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12178
12179 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12180 Declare.
12181
12182 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12183
121842008-02-05 Jason Rumney <jasonr@gnu.org>
12185
12186 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12187 Set smallest_font_height and smallest_char_width in display info.
12188
121892008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12190
12191 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12192
121932008-02-05 Miles Bader <miles@gnu.org>
12194
12195 * xfaces.c (get_lface_attributes, merge_named_face)
12196 (lookup_named_face, lookup_derived_face, realize_named_face):
12197 Revert 2008-02-01 change by cyd@stupidchicken.com.
12198
121992008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12200
12201 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12202 fallback fonts.
12203 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12204
122052008-02-04 Jason Rumney <jasonr@gnu.org>
12206
12207 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12208 set full_name.
12209 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12210
122112008-02-03 Jason Rumney <jasonr@gnu.org>
12212
12213 * makefile.w32-in (OBJ1): Include font.o here.
12214 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12215
122162008-02-02 Jason Rumney <jasonr@gnu.org>
12217
12218 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12219
122202008-02-01 Jason Rumney <jasonr@gnu.org>
12221
12222 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12223
12224 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12225
122262008-02-01 Andreas Schwab <schwab@suse.de>
12227
12228 * Makefile.in (shortlisp, lisp): Update for rename of
12229 ../lisp/language/myanmar.el.
12230
122312008-02-01 Chong Yidong <cyd@stupidchicken.com>
12232
12233 * xfaces.c (get_lface_attributes): Delete function.
12234 (merge_named_face, lookup_named_face, lookup_derived_face)
12235 (realize_named_face): Call lface_from_face_name directly, and use
12236 the fact that merge_face_vectors does not alter its FROM argument.
12237
122382008-02-01 Jason Rumney <jasonr@gnu.org>
12239
12240 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12241 input in the default locale. Handle non-Unicode multibyte input.
12242
122432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12244
12245 * fontset.c (reorder_font_vector): Exclude nil elements from the
12246 font group. Don't try multiple fonts.
12247 (fontset_font): Adjust for the above change.
12248 (Finternal_char_font): Return nil if the found font doesn't
12249 contain the character ch.
12250
12251 * Makefile.in (lisp, shortlisp): Add cham.el.
12252
122532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12254
12255 * font.h (FONTP): Make it return 1 also for a font-object.
12256
12257 * .gdbinit (xfontset): New function.
12258
12259 * font.c (font_find_for_lface): Check if the character C is
12260 supported or not only for the first font.
12261
12262 * fontset.c (reorder_font_vector): Fix typo.
12263 (fontset_find_font): Don't add a font-spec specifying a script.
12264 Use 0 (not Qt) for the indication of empty font-group. Change the
12265 format of RFONT-DEF. Return Qt if no font in the font-group
12266 support the character.
12267 (fontset_font): Adjust for the above change. If no font was
12268 found the character, remember that.
12269 (face_for_char): Adjust for the change of RFONT-DEF.
12270 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12271 no font for the target.
12272 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12273
122742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12275
12276 * font.c (font_load_for_face): Handle the case that the font in
12277 face->lface is a string.
12278
122792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12280
12281 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12282
122832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12284
12285 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12286 Fix previous change. If the frame is not on a window system,
12287 signal an error.
12288
122892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12290
12291 * coding.c (decode_coding_object, encode_coding_object): Adjust
12292 marker positions after conversion.
12293
12294 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12295
122962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12297
12298 * font.c (font_find_for_lface): Fix the handling of the return
12299 value of font_has_char.
12300 (Ffont_shape_text): Fix previous change.
12301
12302 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12303 (fontset_ref_and_range): Delete it.
12304 (fontset_find_font): Call char_table_ref_and_range instead of
12305 FONTSET_REF_AND_RANGE.
12306 (make_fontset): Don't setup font groups of Latin here.
12307 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12308 (new_fontset_from_font): Make the specified font the default for
12309 all Latin characters.
12310
123112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12312
12313 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12314 is on a window system before accessing the fontset of the frame.
12315
123162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12317
12318 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12319
12320 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12321 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12322
12323 * font.c (Ffont_shape_text): If the font driver doesn't have a
12324 shaper function, make zero-width glyphs to have at least one-pixel
12325 width. Fix setting of `to' field of glyphs.
12326
123272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12328
12329 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12330 glyphs.
12331
12332 * font.h (struct font_driver): Improve docstring of member `shape'.
12333
123342008-02-01 Kenichi Handa <handa@m17n.org>
12335
12336 * composite.c (syms_of_composite): Fix docstring of
12337 auto-composition-function.
12338
12339 * font.h (LGLYPH_SIZE): New macro.
12340
12341 * font.c (Ffont_fill_gstring): Stop filling when a character not
12342 supported by the font is found.
12343 (Ffont_shape_text): When a shape callback function returns nil,
12344 try at most two more times with larger gstring.
12345 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12346
12347 * xdisp.c (handle_auto_composed_prop): Change the argument to
12348 auto-composition-function.
12349
12350 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12351 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12352 Lispy glyph and store it in the lgstring.
12353
12354 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12355
12356 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12357
123582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12359
12360 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12361
12362 * fontset.c (Vfont_encoding_charset_alist): New variable.
12363 (syms_of_fontset): DEFVAR it.
12364 (reorder_font_vector, fontset_find_font): Optimize for the case of
12365 no need of reordering.
12366 (face_for_char): Map the charset property by
12367 Vfont_encoding_charset_alist.
12368
123692008-02-01 Jason Rumney <jasonr@gnu.org>
12370
12371 * w32font.c (logfonts_match): Don't check adstyle here.
12372 (font_matches_spec): Check here against physical font instead.
12373 (add_font_entity_to_list): Avoid some substitutions.
12374
12375 * font.c (font_parse_fcname): Default weight and slant to normal.
12376 (font_score): Prefer normal fonts if weight or slant unspecified.
12377 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12378 match freetype scores.
12379
123802008-02-01 Jason Rumney <jasonr@gnu.org>
12381
12382 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12383 font, as it may have been deleted.
12384 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12385 most common hyphenless variation.
12386 (logfonts_match): Check generic family.
12387 (font_matches_spec): Don't check generic family here.
12388 (fill_in_logfont): Set generic family based on adstyle.
12389
12390 * w32font.h (w32font_get_cache): Update declaration.
12391
123922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12393
12394 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12395
12396 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12397 If none of the new drivers are available, call font_update_drivers
12398 with the old drivers.
12399
12400 * w32font.c (w32font_get_cache): Adjust the argument type.
12401
12402 * xfont.c (xfont_get_cache): Adjust the argument type.
12403
12404 * font.h (struct font_driver): Change argument type of get_cache.
12405
12406 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12407
12408 * font.c (Ffont_get): Fix arguments to Fassoc.
12409 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12410 (font_clear_cache): New function.
12411 (font_list_entities, font_matching_entity): Use font_get_cache.
12412 (font_update_drivers): Call font_clear_cache when finishing a driver.
12413
12414 * fontset.c (fontset_find_font): Fix previous change.
12415
124162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12417
12418 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12419 dpyinfo->font_table.
12420 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12421 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12422
12423 * font.c (font_at): Handle the case that the arg C is negative.
12424 Handle the unibyte case.
12425 (Ffont_at): Call font_at with the arg C -1.
12426
12427 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12428 the position here, and call font_at with the arg C -1.
12429 Don't check the range of the existing composition at the point.
12430
124312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12432
12433 * fontset.c (fontset_add): New args charset_id and family.
12434 Change caller.
12435 (load_font_get_repertory, fontset_find_font): Assume that
12436 font_spec is always a font-spec object.
12437 (Fset_fontset_font): Always store a font-spec object in a fontset.
12438
12439 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12440 instead of get_property_and_range.
12441
124422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12443
12444 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12445 (xftfont_open): Don't keep locking face.
12446 (xftfont_close): Don't unlock face.
12447 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12448
12449 * fontset.c (fontset_find_font): Don't prefer a font of
12450 supplementary charset.
12451
124522008-02-01 Kenichi Handa <handa@m17n.org>
12453
12454 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12455 script, langsys_tag to langsys, new member script.
12456 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12457 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12458 listing to the script specified in that property. Fix arg to
12459 OTF_check_features.
12460
124612008-02-01 Jason Rumney <jasonr@gnu.org>
12462
12463 * w32font.h: New file.
12464
12465 * w32font.c: Include it.
12466 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12467 (w32font_open): Set owning_frame.
12468 (w32font_text_extents): Use owning_frame.
12469 (struct font_callback_data): Add opentype_only field.
12470 (add_font_entity_to_list): Use it to filter fonts.
12471 Don't check against full name.
12472 (w32font_list_internal): New function.
12473 (w32font_list): Use it.
12474 (w32font_match_internal): New function.
12475 (w32font_match): Use it.
12476 (w32font_open_internal): New function.
12477 (w32font_open): Use it.
12478 (w32font_get_cache, w32font_close, w32font_has_char)
12479 (w32font_encode_char, w32font_text_extents, w32font_draw):
12480 Make non-static.
12481
12482 * makefile.w32-in (w32font.o): Depend on w32font.h.
12483
124842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12485
12486 * charset.c (Fdefine_charset_internal): Record a supplementary
12487 charset at the tail of Vcharset_order_list.
12488
12489 * font.c (Ffont_shape_text): Fix the return value.
12490
12491 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12492
12493 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12494
124952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12496
12497 * ftfont.c (struct OpenTypeSpec): New struct.
12498 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12499 (ftfont_get_open_type_spec): New function.
12500 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12501
12502 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12503
125042008-02-01 Jason Rumney <jasonr@gnu.org>
12505
12506 * w32font.c (add_font_entity_to_list): Compare only the beginning
12507 of full name.
12508
125092008-02-01 Kenichi Handa <handa@m17n.org>
12510
12511 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12512 Never return HANDLED_RECOMPUTE_PROPS.
12513
125142008-02-01 Kenichi Handa <handa@m17n.org>
12515
12516 * font.c (font_gstring_produce): Delete it.
12517
12518 * composite.h (COMPOSITION_METHOD):
12519 Handle COMPOSITION_WITH_GLYPH_STRING.
12520
125212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12522
12523 * xfont.c (Qx): Delete.
12524 (syms_of_xfont): Don't initialize Qx.
12525
12526 * composite.h (enum composition_method):
12527 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12528
125292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12530
12531 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12532 (choose_face_font): Accept new form of font-spec.
12533
12534 * frame.h (font_driver_list): Declare it unconditionally.
12535 (struct frame): Define members font_driver_list and font_data_list
12536 unconditionally.
12537
12538 * fontset.c: Include "font.h" unconditionally.
12539 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12540 (Fset_fontset_font): Accept a font-spec object.
12541
12542 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12543 PIXEL_SIZE part a wild card.
12544
12545 * dispextern.h (struct glyph_string): Define members clip and
12546 num_clips unconditionally.
12547 (struct face): Define members font_info and extra unconditionally.
12548
12549 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12550 ftfont_info only when HAVE_LIBOTF is defined.
12551
125522008-02-01 Andreas Schwab <schwab@suse.de>
12553
12554 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12555 and end.
12556
125572008-02-01 Jason Rumney <jasonr@gnu.org>
12558
12559 * w32font.c (w32font_driver): Add new fields.
12560
125612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12562
12563 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12564 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12565 (LIBES): Add @M17N_FLT_CFLAGS@.
12566
12567 * composite.c (compose_text): Don't treat the new style
12568 composition specially.
12569
12570 * emacs.c (main): Call syms_of_font unconditionally.
12571
12572 * font.h (FONT_ENTITY_NOT_LOADABLE)
12573 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12574 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12575 (struct font_driver): New member shape.
12576 (font_registry_charsets): Extern it.
12577 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12578 (font_otf_capability, font_drive_otf): Delete their externs.
12579
12580 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12581 (font_charset_alist, font_registry_charsets): Move from xfont.c
12582 and rename.
12583 (font_prop_validate_otf): New function.
12584 (font_property_table): Register it for QCotf.
12585 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12586 (font_drive_otf): Delete.
12587 (font_prepare_composition): New arg F. Adjust for the change of
12588 lispy gstring.
12589 (font_find_for_lface): New arg C.
12590 (font_load_for_face): Adjust for the change of font_find_for_lface.
12591 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12592 lispy gstring.
12593 (Ffont_shape_text): New function.
12594 (Fopen_font): If the font size is not given, use 12-pixel.
12595 (Ffont_at): New arg STRING.
12596 (syms_of_font): Initalize font_charset_alist.
12597 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12598 conditionally.
12599
12600 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12601 fonts of the same font-spec. Change the format of RFONT-DEF.
12602 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12603 Adjust for the change of RFONT-DEF.
12604 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12605
12606 * ftfont.h: New file.
12607
12608 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12609 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12610 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12611 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12612 font_otf_capability and font_drive_otf, set ftfont_shape.
12613 (ftfont_list): Adjust for the change of :otf property value.
12614 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12615 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12616 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12617 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12618 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12619 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12620
12621 * w32term.c (x_draw_composite_glyph_string_foreground):
12622 Adjust for the change of lispy gstring.
12623
12624 * xdisp.c (handle_composition_prop): Adjust for the change of
12625 lispy gstring. Call a function for auto-composition with the
12626 third arg it->window.
12627 (fill_composite_glyph_string): Adjust for the change of lispy string.
12628 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12629
12630 * xfaces.c (set_font_frame_param): Adjust for the change of
12631 font_find_for_lface.
12632
12633 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12634 (xfont_registry_charsets): Likewise. Change caller.
12635 (syms_of_xfont): Don't handle x_font_charset_alist.
12636
12637 * xftfont.c: Include "ftfont.h".
12638 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12639 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12640 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12641 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12642 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12643 Set xftfont_driver.shape to xftfont_shape.
12644
12645 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12646 the change of lispy gstring.
12647
126482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12649
12650 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12651
126522008-02-01 Jason Rumney <jasonr@gnu.org>
12653
12654 * w32font.c (w32font_draw): Fill background manually.
12655
126562008-02-01 Jason Rumney <jasonr@gnu.org>
12657
12658 * font.c (Qfontp): Remove unused symbol.
12659 (QCantialias): New symbol.
12660 (syms_of_font): Define it.
12661 (font_property_table): Set a validator for QCantialias.
12662
12663 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12664 Define if not already.
12665 (QCfamily): Share with xfaces.c.
12666 (Qstandard, Qsubpixel, Qnatural): New symbols.
12667 (syms_of_w32font): Define them. Don't define QCfamily here.
12668 (w32_antialias_type, lispy_antialias_type): New functions.
12669 (w32_enumfont_pattern_entity): New arg requested_font.
12670 Set antialias parameter if non-default was requested.
12671 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12672
126732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12674
12675 * lread.c (read1): Undo the previous change.
12676
126772008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12678
12679 * frame.c (Fdelete_frame): Call font_update_drivers only when
12680 USE_FONT_BACKEND is defined.
12681
126822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12683
12684 * font.h (struct font_bitmap): New member bits_per_pixel.
12685 (struct font_driver): New members start_for_frame and end_for_frame.
12686 (struct font_data_list): New struct.
12687 (font_put_frame_data, font_get_frame_data): Extern them.
12688
12689 * frame.h (struct frame): New member font_data_list.
12690
12691 * font.c (font_update_drivers): Call driver->start_for_frame and
12692 driver->end_for_frame at proper timings.
12693 (font_put_frame_data, font_get_frame_data): New functions.
12694 (Ffont_spec): Add usage in the docstring.
12695
12696 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12697 (Fdelete_frame): Call font_update_drivers.
12698
12699 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12700 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12701 (xftfont_get_xft_draw): New function.
12702 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12703 (xftfont_end_for_frame): New function.
12704 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12705
12706 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12707 Change argument. Cache GCs in the per-frame data.
12708 (struct ftxfont_frame_data): New struct.
12709 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12710 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12711 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12712 (ftxfont_end_for_frame): New function.
12713 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12714
12715 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12716
127172008-02-01 Kenichi Handa <handa@m17n.org>
12718
12719 * xselect.c (Vselection_coding_system)
12720 (Vnext_selection_coding_system): Delete them.
12721 (syms_of_xselect): Don't declare selection-coding-system and
12722 next-selection-coding-system. They are declared in select.el.
12723
127242008-02-01 Jason Rumney <jasonr@gnu.org>
12725
12726 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12727
12728 * w32fns.c: Include imm.h.
12729 (get_composition_string_fn, get_ime_context_fn): New optional
12730 system functions.
12731 (globals_of_w32fns): Load them from imm32.dll.
12732 (ignore_ime_char): New flag.
12733 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12734 WM_IME_ENDCOMPOSITION messages.
12735
12736 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12737 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12738
127392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12740
12741 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12742 (READCHAR_REPORT_MULTIBYTE): New macro.
12743 (readchar): New 2nd arg MULTIBYTE.
12744 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12745 Make symbol's name multibyte according to the multibyteness of the
12746 source.
12747
127482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12749
12750 * xfaces.c (face_for_overlay_string): Call lookup_face with
12751 correct arguments (fix of synching with the trunk).
12752
127532008-02-01 Kenichi Handa <handa@m17n.org>
12754
12755 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12756 (font_prop_validate_non_neg, font_prop_validate_spacing):
12757 Delete argument prop_index.
12758 (font_property_table): Change arguments to validater. Change Callers.
12759 (font_lispy_object): Delete.
12760 (font_at): Use font_find_object instead fo font_lispy_object.
12761
127622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12763
12764 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12765 and file names.
12766
127672008-02-01 Jason Rumney <jasonr@gnu.org>
12768
12769 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12770 (font_matches_spec): Remove debug output.
12771 (add_font_entity_to_list): Avoid using substituted fonts.
12772
127732008-02-01 Jason Rumney <jasonr@gnu.org>
12774
12775 * doc.c (Fsnarf_documentation):
12776 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12777
127782008-02-01 Miles Bader <miles@gnu.org>
12779
12780 * dispextern.h (struct glyph_row): Only define "clip" field if
12781 HAVE_WINDOW_SYSTEM is defined.
12782
127832008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12784
12785 Fix up multi-tty merge.
12786
12787 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12788 and indentation.
12789
12790 * xfaces.c (free_realized_face, clear_face_gcs):
12791 Include font_done_for_face in the input_blocked section, just in case.
12792
12793 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12794 (get_char_face_and_encoding): Undo last change and remove the *other*
12795 duplicate definition (i.e. keep the one that's better scoped and that
12796 includes code for the font-backend).
12797
12798 * terminal.c (create_terminal): Default keyboard_coding to
12799 `no-conversion' and terminal_coding to `undecided'.
12800
12801 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12802
12803 * fontset.c (free_realized_fontsets): Check that the table entry does
12804 contain a fontset before trying to compare it to `base'.
12805
12806 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12807 syms_of_charset, and syms_of_coding earlier because init_window_once
12808 now needs Vcoding_system_hash_table to be setup.
12809
12810 * coding.h (default_buffer_file_coding): Remove.
12811
12812 * coding.c (default_buffer_file_coding): Remove.
12813 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12814 than ->symbol, and use the terminal-local coding system.
12815 (syms_of_coding): Don't setup the coding-systems that are not
12816 terminal-local.
12817 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12818
12819 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12820 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12821
12822 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12823 in chartab.c and were re-added here by mistake.
12824 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12825
12826 * doc.c (Fsnarf_documentation):
12827 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12828 src to etc.
12829
12830 * ChangeLog.10: Add mistakenly removed entry.
12831
128322008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12833
12834 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12835
128362008-02-01 Miles Bader <miles@gnu.org>
12837
12838 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12839 Add extra args to FACE_FOR_CHAR.
12840
128412008-02-01 Kenichi Handa <handa@m17n.org>
12842
12843 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12844 in sequence.
12845
12846 * chartab.c (map_sub_char_table, map_char_table): If the range
12847 contains just one character, call the function with that character
12848 even if the depth is not 3.
12849
128502008-02-01 Jason Rumney <jasonr@gnu.org>
12851
12852 * w32font.c (w32font_text_extents): Calculate metrics for the
12853 whole string.
12854
128552008-02-01 Jason Rumney <jasonr@gnu.org>
12856
12857 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12858
128592008-02-01 Jason Rumney <jasonr@gnu.org>
12860
12861 * w32term.c (x_set_glyph_string_clipping): Use
12862 get_glyph_string_clip_rects.
12863 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12864 Adjust for the change of struct glyph_string.
12865
12866 * w32font.c (w32font_draw): Do clipping here.
12867
128682008-02-01 Kenichi Handa <handa@m17n.org>
12869
12870 * xftfont.c (xftfont_draw): Adjust for the change of struct
12871 glyph_string.
12872
12873 * xterm.c (x_set_glyph_string_clipping): Use
12874 get_glyph_string_clip_rects.
12875 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12876 Adjust for the change of struct glyph_string.
12877
12878 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12879 the resulting clip(s}.
12880 (expose_overlaps): Add arg r. Change callers. Set it to
12881 row->clip temporarily.
12882 (expose_window): Redraw rows overlapping the exposed area.
12883
12884 * dispextern.h (struct glyph_row): New member clip.
12885 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12886 clip_height, new member clip, and num_clips.
12887
128882008-02-01 Kenichi Handa <handa@m17n.org>
12889
12890 * data.c (Fchar_or_string_p): Fix docstring.
12891
128922008-02-01 Kenichi Handa <handa@m17n.org>
12893
12894 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12895 create a temporary XftDraw object.
12896
128972008-02-01 Kenichi Handa <handa@m17n.org>
12898
12899 * font.c (Ffontp): Fix docstring.
12900
12901 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12902 strong evidence of ISO-2022.
12903
129042008-02-01 Kenichi Handa <handa@m17n.org>
12905
12906 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12907 SYNTAX_ENTRY_FOLLOW_PARENT.
12908
129092008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12910
12911 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12912 its type.
12913 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12914 Update to the new type of weak_hash_tables and next_weak.
12915
12916 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12917 a plain C pointer to Lisp_Hash_Table.
12918
12919 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12920 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12921 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12922 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12923 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12924 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12925 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12926 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12927 (GC_EQ): Remove since they've been identical to their non-GC_
12928 alter-egos ever since the markbit was eradicated.
12929
12930 * alloc.c:
12931 * buffer.c:
12932 * buffer.h:
12933 * data.c:
12934 * fileio.c:
12935 * filelock.c:
12936 * fns.c:
12937 * frame.h:
12938 * lisp.h:
12939 * macterm.c:
12940 * print.c:
12941 * process.c:
12942 * w32fns.c:
12943 * w32menu.c:
12944 * w32term.c:
12945 * xfns.c:
12946 * xmenu.c:
12947 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12948
129492008-02-01 Kenichi Handa <handa@m17n.org>
12950
12951 * chartab.c (map_sub_char_table): Make it work for the top-level
12952 char-table. Fix handling of parent char-table.
12953 (map_char_table): Adjust for the above change.
12954
129552008-02-01 Jason Rumney <jasonr@gnu.org>
12956
12957 * w32font.c (Qgdi): Rename from Qw32.
12958
129592008-02-01 Jason Rumney <jasonr@gnu.org>
12960
12961 * w32bdf.c (get_quoted_string): Make function static.
12962
129632008-02-01 Kenichi Handa <handa@m17n.org>
12964
12965 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12966 bigger ascent and descent than those of the font, use them as
12967 font's ascent and descent.
12968
129692008-02-01 Kenichi Handa <handa@m17n.org>
12970
12971 * Makefile.in (${lispsource}international/charprop.el): Move this
12972 target within "#ifdef HAVE_UNIDATA" and "#endif".
12973
129742008-02-01 Kenichi Handa <handa@m17n.org>
12975
12976 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12977 (shortlisp): Add ../lisp/language/tai-viet.el.
12978
129792008-02-01 Ulrich Mueller <ulm@gentoo.org>
12980
12981 * Makefile.in (${lispsource}international/charprop.el): Depend on
12982 temacs${EXEEXT}.
12983
129842008-02-01 Jason Rumney <jasonr@gnu.org>
12985
12986 * w32font.c (w32font_close): Delete the GDI font object.
12987
12988 * w32menu.c: Include character.h.
12989
12990 * w32proc.c: Likewise.
12991
12992 * w32select.c: Likewise.
12993
12994 * makefile.w32-in (w32proc.o): Depend on character.h.
12995
129962008-02-01 Jason Rumney <jasonr@gnu.org>
12997
12998 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12999
13000 * w32menu.c (syms_of_w32menu): Likewise.
13001
13002 * w32proc.c (syms_of_ntproc): Likewise.
13003
13004 * w32select.c (syms_of_w32select): Likewise.
13005
13006 * w32term.c (syms_of_w32term): Likewise.
13007
130082008-02-01 Jason Rumney <jasonr@gnu.org>
13009
13010 * w32font.c (w32font_draw): Delete brush after using it.
13011
130122008-02-01 Jason Rumney <jasonr@gnu.org>
13013
13014 * w32font.c (w32font_open): Don't set font_idx.
13015 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13016 to font settings.
13017 (w32font_draw): Fill background explicitly.
13018
130192008-02-01 Jason Rumney <jasonr@gnu.org>
13020
13021 * w32term.c (w32_initialize): Don't call w32font_initialize.
13022
13023 * w32font.c (w32font_info): Remove subranges.
13024 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13025 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13026 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13027 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13028 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13029 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13030 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13031 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13032 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13033 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13034 New symbols.
13035 (font_callback_data): New struct.
13036 (w32font_list, w32font_match): Use it.
13037 (w32font_open): Don't populate subranges.
13038 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13039 (w32font_encode_char): Always return unicode code-point as-is.
13040 (w32font_text_extents): Supply a transformation matrix to
13041 GetGlyphOutline. Never look up by glyph index. Avoid looping
13042 twice. Use unicode version of GetTexExtentPoint32 instead of
13043 glyph index version.
13044 (set_fonts_frame): Remove.
13045 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13046 set frame parameter. Use backward compatible fake foundries.
13047 Save generic family in extra slot under QCfamily. Make width slot
13048 constant. Save QCspacing value. Save list of scripts instead of
13049 binary subranges.
13050 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13051 (add_font_entity_to_list): Use font_callback_data struct. Filter
13052 unwanted fonts.
13053 (add_one_font_entity_to_list): Use font_callback_data struct.
13054 (w32_registry): Default to iso10646_1.
13055 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13056 string font registries. Don't fill in font name if it is a generic
13057 family name, fill family instead. Use spacing, family and script
13058 extra info to fill pitch, family and charset fields.
13059 (list_all_matching_fonts): Use font_callback_data struct.
13060 (unicode_range_for_char): Remove.
13061 (font_supported_scripts): New function.
13062 (w32font_initialize): Remove.
13063 (syms_of_w32font): Update which symbols are defined.
13064
130652008-02-01 Jason Rumney <jasonr@gnu.org>
13066
13067 * font.c (font_pixel_size): Reverse assq_no_quit args.
13068
13069 * w32term.h (FONT_WIDTH): Report max width, not average.
13070 (FONT_MAX_WIDTH): Remove.
13071 (FONT_AVG_WIDTH): New macro.
13072
13073 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13074 redefinition of FONT_WIDTH.
13075
13076 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13077 (w32_cache_char_metrics): Use FONT_WIDTH.
13078
13079 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13080
130812008-02-01 Jason Rumney <jasonr@gnu.org>
13082
13083 * w32font.c (w32font_open): Make lfHeight negative.
13084
13085 * w32fns.c (x_default_font_parameter): Use new style font name.
13086 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13087
130882008-02-01 Jason Rumney <jasonr@gnu.org>
13089
13090 * w32font.c (QCsubranges): New symbol.
13091 (w32font_open, w32font_has_char): Get subranges from subproperty
13092 of extra.
13093 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13094 (syms_of_w32font): Define :subranges symbol.
13095
13096 * font.c (font_put_extra): Expose externally.
13097
13098 * font.h (font_put_extra): Move declaration from font.c.
13099
13100 * font.c (Ffont_get): Use font driver to determine otf capability.
13101 (adjust_anchor): Check if driver defines anchor_point before using.
13102
13103 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13104 (w32font_draw): Use options.
13105 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13106 Fix detection of truetype fonts.
13107 (registry_to_w32_charset): Handle charsets other than iso8859-1
13108 expressed as lisp symbols.
13109 (w32_registry): Express charset as lisp symbol.
13110 (fill_in_logfont): Reverse pixel and point height logic.
13111 Don't set width here. Set quality to default.
13112
13113 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13114 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13115
13116 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13117 Remove redundant loop and allocation.
13118
13119 * makefile.w32-in (font.o, w32font.o): New objects.
13120 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13121 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13122
13123 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13124 STORE_XCHARB a valid l-value.
13125
13126 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13127 calculations for non-Truetype fonts.
13128 (x_draw_glyph_string): Sync with xterm.c.
13129 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13130 Remove redundant code.
13131 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13132
13133 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13134 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13135
13136 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13137 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13138
13139 * w32font.c: New file for w32 font backend.
13140
131412008-02-01 Kenichi Handa <handa@m17n.org>
13142
13143 * term.c: Don't include "buffer.h" twice.
13144
131452008-02-01 Kenichi Handa <handa@m17n.org>
13146
13147 * character.c (Funibyte_string): New function.
13148 (syms_of_character): Defsubr it.
13149
131502008-02-01 Jason Rumney <jasonr@gnu.org>
13151
13152 * w32term.c [USE_FONT_BACKEND]:
13153 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13154 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13155 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13156 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13157 (x_free_frame_resources): Sync with xterm.c.
13158
131592008-02-01 Andreas Schwab <schwab@suse.de>
13160
13161 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13162 char-table size.
13163
131642008-02-01 Kenichi Handa <handa@m17n.org>
13165
13166 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13167
131682008-02-01 Kenichi Handa <handa@m17n.org>
13169
13170 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13171 font_otf_gpos, add font_drive_otf.
13172
13173 * fontset.c (fontset_find_font): Pay attention to font size
13174 specified for a font.
13175 (reorder_font_vector): Check contents of font_def.
13176
13177 * font.c (struct otf_list): Delete it.
13178 (otf_list): Make it a lisp variable.
13179 (otf_open): Use lispy otf_list.
13180 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13181 (check_otf_features): New function.
13182 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13183 New functions.
13184 (font_drive_otf): New function merging font_otf_gsub and
13185 font_otf_gpos.
13186 (font_open_for_lface): New arg spec. Change argument order.
13187 (font_load_for_face): Adjust for the change of font_open_for_lface.
13188 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13189 Ffont_otf_gpos.
13190 (syms_of_font): Staticpro otf_list. Delete defsubr of
13191 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13192
13193 * xfaces.c (set_font_frame_param): Adjust for the change of
13194 font_open_for_lface.
13195
13196 * font.h (font_open_for_lface): Adjust prototype.
13197 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13198 member otf_drive.
13199 (font_otf_gsub, font_otf_gpos): Delete externs.
13200 (font_drive_otf): Extern it.
13201
132022008-02-01 Kenichi Handa <handa@m17n.org>
13203
13204 * font.c (font_at): If the window W is not on a window system,
13205 return Qnil.
13206
13207 * coding.c (produce_chars, encode_coding): Don't call
13208 insert_from_gap if no characters to produce.
13209
132102008-02-01 Kenichi Handa <handa@m17n.org>
13211
13212 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13213 Fclear_face_cache.
13214
13215 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13216
132172008-02-01 Miles Bader <miles@gnu.org>
13218
13219 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13220 Parse "--disable-font-backend" option.
13221 (standard_args): Add "--disable-font-backend" option.
13222
132232008-02-01 Kenichi Handa <handa@m17n.org>
13224
13225 * fontset.c (fontset_find_font): New function.
13226 (fontset_font): Use fontset_find_font.
13227 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13228 Register the specified font for all Latin characters.
13229 (new_fontset_from_font): Register the specified font for all Latin
13230 characters.
13231 (dump_fontset): For a realized fontset, include the base fontset
13232 name in the returned vector.
13233
132342008-02-01 Kenichi Handa <handa@m17n.org>
13235
13236 * character.h (CHAR_STRING): Cast C to unsigned on calling
13237 char_string.
13238
13239 * character.c (char_string): Type of arg C changed to unsigned.
13240 Signal an error if C is an invalid character code.
13241
13242 * editfns.c (general_insert_function, Fchar_to_string):
13243 Use CHARACTERP, not INTEGERP.
13244
132452008-02-01 Kenichi Handa <handa@m17n.org>
13246
13247 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13248 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13249
13250 * regex.c (analyse_first): Fix for multibyte characters in "case
13251 charset:" and "case categoryspec:".
13252
132532008-02-01 Andreas Schwab <schwab@suse.de>
13254
13255 * Makefile.in (LIBES): Move standard libraries to the end.
13256
132572008-02-01 Kenichi Handa <handa@m17n.org>
13258
13259 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13260 nonzero, don't shrink the buffer nextb.
13261
13262 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13263
13264 * coding.c (coding_alloc_by_making_gap): New arg offset.
13265 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13266 offset.
13267 (decode_coding_iso_2022): Update coding->safe_charsets.
13268 (decode_coding_gap): Temporarily set
13269 current_buffer->text->inhibit_shrinking to 1.
13270
132712008-02-01 Kenichi Handa <handa@m17n.org>
13272
13273 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13274 indexing into elements of s->cmp and s->char2b.
13275
132762008-02-01 Juanma Barranquero <lekktu@gmail.com>
13277
13278 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13279
132802008-02-01 Kenichi Handa <handa@m17n.org>
13281
13282 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13283 target_multibyte instead of multibyte.
13284 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13285 (bcmp_translate): Change the argument name from multibyte to
13286 target_multibyte.
13287
132882008-02-01 Kenichi Handa <handa@m17n.org>
13289
13290 These changes are to compile a regexp into a pattern that can be
13291 used both for multibyte and unibyte targets.
13292
13293 * Makefile.in (search.o): Depend on charset.h.
13294
13295 * character.c (multibyte_char_to_unibyte_safe): New function.
13296
13297 * search.c: Include "charset.h".
13298 (compile_pattern_1): Delete argument multibyte. Don't set
13299 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13300 (compile_pattern): Don't compare cp->buf.target_multibyte.
13301 Compare cp->buf.charset_unibyte.
13302 (compile_pattern): Set cp->buf.target_multibyte.
13303
13304 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13305
13306 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13307
13308 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13309 multibyte. Change callers.
13310 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13311 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13312 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13313 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13314 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13315 (regex_compile): Make the compiled pattern usable both for
13316 multibyte and unibyte targets.
13317 (analyse_first): Make the fastmap usable both for multibyte and
13318 unibyte targets.
13319 (TRANSLATE_VIA_MULTIBYTE): Delete.
13320 (re_match_2_internal): Pay attention to the case that the
13321 multibyteness of bufp and target may be different.
13322
133232008-02-01 Kenichi Handa <handa@m17n.org>
13324
13325 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13326 empty box occupy at least one column width.
13327
133282008-02-01 Miles Bader <miles@gnu.org>
13329
13330 * Makefile.in: Remove redundant HAVE_XFT clause.
13331
133322008-02-01 Kenichi Handa <handa@m17n.org>
13333
13334 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13335
133362008-02-01 Kenichi Handa <handa@m17n.org>
13337
13338 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13339 being nil.
13340
133412008-02-01 Kenichi Handa <handa@m17n.org>
13342
13343 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13344
133452008-02-01 Kenichi Handa <handa@m17n.org>
13346
13347 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13348
133492008-02-01 Kenichi Handa <handa@m17n.org>
13350
13351 * search.c (simple_search): Fix previous change.
13352
133532008-02-01 Kenichi Handa <handa@m17n.org>
13354
13355 * xftfont.c (ftfont_font_format): Extern declaration.
13356
13357 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13358
13359 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13360 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13361
13362 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13363 (ftfont_font_format): Fix previous change.
13364
13365 * font.h (Ffont_xlfd_name): EXFUN it.
13366
13367 * font.c (font_parse_xlfd): Fix the array size of `f'.
13368 (register_font_driver): Use EQ to compare driver->type.
13369
13370 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13371 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13372 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13373
133742008-02-01 Kenichi Handa <handa@m17n.org>
13375
13376 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13377 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13378
133792008-02-01 Kenichi Handa <handa@m17n.org>
13380
13381 * xfont.c (xfont_open): Set font->format.
13382
13383 * xftfont.c (xftfont_open): Set font->format.
13384
13385 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13386 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13387 (ftfont_open): Set font->format.
13388 (ftfont_font_format): New function.
13389
13390 * font.h (struct font): New member format.
13391
13392 * font.c (Qopentype): New variable.
13393 (syms_of_font): Defsym it.
13394 (Fquery_font): Change the format of the last element of the return
13395 value.
13396
133972008-02-01 Kenichi Handa <handa@m17n.org>
13398
13399 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13400 last resort.
13401
134022008-02-01 Kenichi Handa <handa@m17n.org>
13403
13404 * coding.c (detect_coding_charset): Fix detection of multi-byte
13405 charset.
13406
134072008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13408
13409 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13410
134112008-02-01 Kenichi Handa <handa@m17n.org>
13412
13413 * xdisp.c (get_next_display_element): Set it->face_id for the
13414 first component of a composition.
13415 (x_produce_glyphs): Check if the font is changed or not for composition.
13416
134172008-02-01 Kenichi Handa <handa@m17n.org>
13418
13419 * fontset.c (Qlatin): New variable.
13420 (syms_of_fontset): Define it as a lisp symbol.
13421 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13422
134232008-02-01 Kenichi Handa <handa@m17n.org>
13424
13425 * font.c (font_unparse_fcname): Pay attention to the case that
13426 some of font property is a null string.
13427
134282008-02-01 Kenichi Handa <handa@m17n.org>
13429
13430 * term.c: Include "composite.h".
13431 (encode_terminal_code): Output all components of composition.
13432 Check the size of encode_terminal_src.
13433 (produce_glyphs): For composition, call produce_composite_glyph.
13434 (append_composite_glyph, produce_composite_glyph): New functions.
13435
13436 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13437 is not found, get font_info from the current ascii face.
13438
134392008-02-01 Kenichi Handa <handa@m17n.org>
13440
13441 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13442 buffer-file-name to Qnil before calling insert_from_buffer.
13443
13444 * font.c (font_unparse_fcname): Pay attention to the case that
13445 foundry is a null string.
13446
134472008-02-01 Kenichi Handa <handa@m17n.org>
13448
13449 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13450
13451 * font.c (Qunicode_sip): New variable.
13452 (syms_of_font): Declare it as a Lisp symbol.
13453
13454 * font.h (Qunicode_sip): Extern it.
13455
134562008-02-01 Kenichi Handa <handa@m17n.org>
13457
13458 * composite.c (get_composition_id): Pay attention to TAB component.
13459
13460 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13461 TAB. Adjust for the change of s->char2b which always points to
13462 the first element of allocated memory.
13463
13464 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13465
13466 * xdisp.c (handle_composition_prop): Set it->c to the first
13467 non-TAB component.
13468 (fill_composite_glyph_string): Change argument.
13469 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13470 (x_produce_glyphs): Fix handling of left/right padding.
13471
134722008-02-01 Kenichi Handa <handa@m17n.org>
13473
13474 * coding.c (detect_coding_system): Fix for handling off
13475 inhibit_iso_escape_detection. Fix for the case that no coding
13476 system is defined for a specific coding category.
13477
134782008-02-01 Kenichi Handa <handa@m17n.org>
13479
13480 * font.c (font_matching_entity): Delete unused local var.
13481
13482 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13483 opening a font.
13484
13485 * fileio.c (Finsert_file_contents): On recovering a file, assume
13486 Unix-like eol.
13487 (choose_write_coding_system): On auto-saving a file, force
13488 Unix-like eol.
13489
13490 * coding.c (setup_coding_system): Fix setting of
13491 coding->common_flags based on eol_type.
13492 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13493 inherit from it.
13494
134952008-02-01 Kenichi Handa <handa@m17n.org>
13496
13497 * alloc.c (NSTATICS): Increas to 0x600.
13498
134992008-02-01 Kenichi Handa <handa@m17n.org>
13500
13501 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13502 (ftfont_list): Don't check :name property.
13503 (ftfont_match): New function.
13504 (ftfont_pattern_entity): If the pattern doesn't contain
13505 FC_SPACING, don't assume FC_MONO.
13506
13507 * font.h (struct font_driver): New member `match'.
13508 (font_update_drivers): Adjust prototype.
13509
13510 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13511 property of FONT.
13512 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13513 them unconditionally.
13514 (font_matching_entity): New function.
13515 (font_open_by_name): Try font_matching_entity if exact match is
13516 not found.
13517 (font_update_drivers): Delete the arg FONT. Return a list of
13518 actually used backends. Don't free faces, font caches here.
13519 Don't store data in frame parameters. Don't call x_set_font.
13520 (Ffont_spec): Store :name property as is.
13521 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13522 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13523 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13524 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13525 Call font->driver->otf_gsub instead of font_otf_gsub.
13526
13527 * frame.c (x_set_font_backend): Do more works that were done in
13528 font_update_drivers before.
13529
13530 * xfont.c (xfont_match): New function.
13531 (xfont_driver): Set xfont_driver.match to xfont_match.
13532 (xfont_draw): Set font in GC if necessary.
13533
13534 * ftxfont.c (ftxfont_match): New function.
13535 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13536
13537 * xftfont.c (xftfont_match): New function.
13538 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13539
135402008-02-01 Kenichi Handa <handa@m17n.org>
13541
13542 * font.h (struct font): New member scalable.
13543 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13544 (font_otf_gsub): Adjust prototype.
13545
13546 * font.c (font_otf_capability): Fix handling of the default langsys.
13547 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13548 Check the contents of SPEC.
13549 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13550 (check_gstring): New function.
13551 (REPLACEMENT_CHARACTER): New macro.
13552 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13553 glyph codes of GSTRING.
13554 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13555 (font_prepare_composition): Set cmp->glyph_len.
13556 (font_open_entity): Set font->scalable.
13557 (Ffont_get): Handle :otf property.
13558 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13559 functions.
13560 (Fquery_font): Use font->font.full_name.
13561 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13562 Sfont_otf_alternates.
13563
13564 * ftfont.c (ftfont_open): Set font->font.full_name and
13565 font->font.name properly. Fix calculation of font->font.height
13566 and font->min_width.
13567
13568 * ftxfont.c (ftxfont_create_gcs): New function.
13569 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13570 (ftxfont_draw_backgrond): Fix filling region.
13571 (ftxfont_default_fid): New function.
13572 (ftxfont_open): Set xfont->fid to the return value of
13573 ftxfont_default_fid.
13574 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13575 (ftxfont_done_face): Free only GCs that are created by
13576 ftxfont_create_gcs.
13577 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13578
13579 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13580 Clip to src->width, etc (not src->clip_XXX).
13581
13582 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13583 FontBackend frame parameter.
13584
135852008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * font.h (struct font_driver_list): New member `on'.
13588 (Fclear_font_cache): EXFUN it.
13589 (font_update_drivers): Extern it.
13590
13591 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13592 (font_list_entities): Check driver_list->on.
13593 (register_font_driver): Initalize `on' member to 0.
13594 (font_update_drivers): New function.
13595 (Fclear_font_cache): Check driver_list->on.
13596
13597 * frame.h (Qfont_backend): Extern it.
13598 (x_set_font_backend): Extern it.
13599
13600 * frame.c (Qfont_backend): New variable.
13601 (frame_parms): New element for font-backend.
13602 (x_set_font_backend): New function.
13603
13604 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13605 FontBackend frame parameter.
13606 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13607 x_set_font_backend.
13608
13609 * xfont.c (xfont_list): Don't try listing by :name property if the
13610 name is not for XLFD.
13611
136122008-02-01 Kenichi Handa <handa@m17n.org>
13613
13614 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13615 (LGLYPH_SET_TO): New macros.
13616 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13617 element of G is vector or not.
13618 (font_at): Extern it.
13619
13620 * font.c: Include window.h.
13621 (font_lispy_object): New function.
13622 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13623 end of valid glyph.
13624 (font_close_object): Fix getting (struct font *).
13625 (font_at): New function.
13626 (Ffont_get): If FONT is a font-object, get entity from it.
13627 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13628 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13629 range check.
13630 (Ffont_at): New function.
13631 (syms_of_font): Defsubr Sfont_at.
13632
13633 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13634 before the entry for Qcomposition.
13635 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13636 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13637 the font in gstring.
13638 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13639 LGLYPH_FORM (g) to detect the end of valid glyph.
13640 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13641 we are composing with gstring.
13642
13643 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13644 Check if adjustment is vector or not.
13645
13646 * Makefile.in (font.o): Make it depends on window.h.
13647
136482008-02-01 Kenichi Handa <handa@m17n.org>
13649
13650 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13651 adjustment is vector or not.
13652
136532008-02-01 Miles Bader <miles@gnu.org>
13654
13655 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13656
136572008-02-01 Kenichi Handa <handa@m17n.org>
13658
13659 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13660 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13661 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13662
13663 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13664 (DEVICE_DELTA): Fix typo.
13665 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13666 LGLYPH format.
13667
13668 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13669 the change of LGLYPH format.
13670
136712008-02-01 Kenichi Handa <handa@m17n.org>
13672
13673 * ftfont.c (ftfont_list): Fix typo.
13674 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13675
136762008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13677
13678 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13679
13680 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13681 xftface_info is non-NULL.
13682
136832008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13684
13685 * ftfont.c (ftfont_list): Move misplaced #endif.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * ftfont.c (ftfont_list): Pay attention to the case that
13690 FC_CAPABILITY is not defined.
13691
136922008-02-01 Kenichi Handa <handa@m17n.org>
13693
13694 * xftfont.c (xftfont_open): Set charset related members to -1.
13695
13696 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13697 QCname.
13698 (ftfont_open): Set charset related members to -1.
13699
13700 * fontset.c (Votf_script_alist): New variable.
13701 (syms_of_fontset): Initialize it.
13702 (fontset_font): Delete unused variable.
13703
13704 * fontset.h (Votf_script_alist): Extern it.
13705
13706 * font.c (font_find_for_lface): Optimize code.
13707
13708 * font.h (font_close_object, font_merge_old_spec): Extern them.
13709
137102008-02-01 Kenichi Handa <handa@m17n.org>
13711
13712 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13713 (syms_of_font): Initialize them.
13714 (font_pixel_size): Allow float value in dpi.
13715 (font_prop_validate_type): Delete.
13716 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13717 Change caller.
13718 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13719 (font_prop_validate_extra): Delete.
13720 (font_prop_validate_spacing): New function.
13721 (font_property_table): Add elements for all known properties.
13722 (get_font_prop_index): Rename from check_font_prop_name. New
13723 argument FROM. Change caller.
13724 (font_prop_validate): Validate all known properties.
13725 (font_put_extra): Delete argument force. Change caller.
13726 (font_expand_wildcards): Make it static. Fix the way of shrinking
13727 the possible range.
13728 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13729 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13730 Change caller.
13731 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13732 (font_parse_fcname): Delete argument merge. Fix parsing of point
13733 size. Don't validate properties values here. Change caller.
13734 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13735 (font_open_by_name): Delete unused variable.
13736 (Ffont_spec): Likewise. Validate property values.
13737 (Ffont_match_p): New function.
13738
13739 * font.h (QCscalable): Extern it.
13740 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13741
13742 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13743
13744 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13745 (xfont_list_pattern): New function.
13746 (xfont_list): Use xfont_list_pattern.
13747
137482008-02-01 Kenichi Handa <handa@m17n.org>
13749
13750 * font.h (Flist_fonts): EXFUN it.
13751
137522008-02-01 Jason Rumney <jasonr@gnu.org>
13753
13754 * w32term.c (w32_initialize): Add back smoothing_type and
13755 smoothing_enabled definitions.
13756
137572008-02-01 Kenichi Handa <handa@m17n.org>
13758
13759 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13760 s->face->font on determining underline position.
13761
137622008-02-01 Kenichi Handa <handa@m17n.org>
13763
13764 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13765 (font_has_char): Accept font-object too.
13766 (font_find_for_lface): Try at first with a size specified in face.
13767
137682008-02-01 Kenichi Handa <handa@m17n.org>
13769
13770 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13771 font_open_by_name.
13772
137732008-02-01 Kenichi Handa <handa@m17n.org>
13774
13775 * font.h (QCspacing, QCdpi): Extern them.
13776 (enum font_spacing): New enum.
13777 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13778
13779 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13780 (QCspacing, QCdpi): New variables.
13781 (syms_of_font): Initialize them.
13782 (font_pixel_size): New function.
13783 (font_put_extra): New function.
13784 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13785 in FONT_EXTRA.
13786 (font_parse_fcname): Handle enumerated values (e.g. bold).
13787 Fix handling font size. Add QCname property that contains only
13788 unknown properties.
13789 (font_score): Change argument. Change caller. Pay attention to
13790 FONT_PIXEL_SIZE_QUANTUM.
13791 (font_sort_entites, font_list_entities, font_find_for_lface)
13792 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13793 (Ffont_spec): Add QCname property that contains only unknown properties.
13794
13795 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13796 include weight in listing pattern, instead check weight of each
13797 listed font. Don't include scalable in pattern. Pay attention to
13798 FONT_PIXEL_SIZE_QUANTUM.
13799
138002008-02-01 Kenichi Handa <handa@m17n.org>
13801
13802 * font.c (font_parse_fcname): Fix parsing of point-size.
13803 (font_unparse_fcname): Produce symbolic names for style properties.
13804 (font_list_entities): Handle float size correctly.
13805 (font_open_by_name): Prefer `normal' property values if the name
13806 doesn't specify them.
13807
13808 * fontset.c (Finternal_char_font): Use font_get_name, not
13809 Ffont_xlfd_name.
13810
13811 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13812 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13813 pattern. Don't force scalable.
13814
13815 * xftfont.c (xftfont_open): For generating a name, start from
13816 96-byte buffer.
13817
138182008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13819
13820 * frame.h (x_new_fontset2): Fix prototype.
13821
138222008-02-01 Kenichi Handa <handa@m17n.org>
13823
13824 * font.h (struct font_driver): Delete member parse_name.
13825 (font_match_p, font_get_spec, font_parse_fcname)
13826 (font_unparse_fcname): Extern them.
13827 (font_get_name): Adjust prototype.
13828
13829 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13830 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13831 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13832 unnecessary checks for weight, slant, and swidth.
13833 (font_parse_fcname): New function.
13834 (font_unparse_fcname): New function.
13835 (font_parse_name): New function.
13836 (font_match_p): New function.
13837 (font_get_name): Change return value to Lisp string.
13838 (font_get_spec): New function.
13839 (Qunspecified, Qignore_defface): Don't extern them.
13840 (font_find_for_lface): Assume that LFACE is fully specified.
13841 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13842 object, use it for FACE.
13843 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13844 driver->parse_name.
13845 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13846
13847 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13848 prototype.
13849
13850 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13851 argument F. Don't call Fnew_fontset. Instead, directly call
13852 make_fontset.
13853
13854 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13855
13856 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13857 of x_new_fontset2.
13858
13859 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13860 (Qsans__serif): New variables.
13861 (ftfont_generic_family_list): New variable.
13862 (syms_of_ftfont): Initialize the above variables.
13863 (ftfont_pattern_entity): Delete argument NAME.
13864 (ftfont_list_generic_family): New function.
13865 (ftfont_parse_name): Delete this function.
13866 (ftfont_list): Try generic family only when FcFontList found no font.
13867 (ftfont_list_family): Fix args to FcObjectSetBuild.
13868
13869 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13870 object in attrs[LFACE_FONT_INDEX].
13871 (set_lface_from_font_name): Cancel all changes for font-backend.
13872 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13873 function.
13874 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13875 font object in QCfont attribute.
13876 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13877 (realize_default_face) [USE_FONT_BACKEND]: Call
13878 set_lface_from_font_and_fontset.
13879
13880 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13881 "fixed", and signal error here if no suitable font was found.
13882
13883 * xfont.c (xfont_parse_name): Delete this function.
13884
13885 * xftfont.c (xftfont_open): Change coding style of error
13886 handling. Generate fontconfig's fontname pattern.
13887
13888 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13889 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13890
13891 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13892 Both args FONTSET and FONT_OBJECT must be existing ones.
13893
138942008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13895
13896 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13897
138982008-02-01 Kenichi Handa <handa@m17n.org>
13899
13900 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13901
13902 * font.h (struct font): Fix typo.
13903
13904 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13905 XLFD_XXX_INDEX.
13906 (enum xlfd_field_mask): New enum.
13907 (intern_font_field): Changed argument. Change caller. If digits
13908 are followed by non-digits, return a symbol.
13909 (font_expand_wildcards): New function.
13910 (font_parse_xlfd): Fix wildcard handling.
13911 (Ffont_spec): If :name is specified, reflect the info in the other
13912 properties.
13913
13914 * ftfont.c (ftfont_pattern_entity): Fix typo.
13915 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13916 locale.
13917
139182008-02-01 Kenichi Handa <handa@m17n.org>
13919
13920 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13921
13922 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13923 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13924 registry doesn't specify encoding part.
13925 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13926 (font_open_by_name): At first try parsing the name.
13927 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13928 as Lisp symbols.
13929
13930 * fontset.c (reorder_font_vector): Pay attention to the case that
13931 the 3rd element of font_def is nil.
13932 (fontset_font): For the default fontset, append one more fontset
13933 elements for a script-based font specification. Don't add script
13934 attribute on finding a font.
13935 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13936 font name.
13937 (fontset_ascii_font): If a font can't be opened, return nil.
13938
13939 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13940 (ftfont_pattern_entity): New function.
13941 (ftfont_get_cache): Assume that freetype_font_cache is already
13942 initialized.
13943 (ftfont_list): Handle the case that a file is specified in font
13944 name. Use ftfont_pattern_entity to generate entities.
13945 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13946 (syms_of_ftfont): Initialize freetype_font_cache.
13947
13948 * xftfont.c (xftfont_open): Make the font name fontconfig's
13949 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13950 (xftfont_close): Free font->font.name if not NULL.
13951
13952 * xfont.c (xfont_list): If script is specified for a font, return
13953 null_vector.
13954 (xfont_list_family): Declare argument type.
13955
13956 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13957 name, set LFACE_FONT (lface) to nil.
13958
13959 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13960 return Qnil.
13961
139622008-02-01 Kenichi Handa <handa@m17n.org>
13963
13964 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13965 (standard_args): Add "-enable-font-backend".
13966
139672008-02-01 Kenichi Handa <handa@m17n.org>
13968
13969 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13970 (struct xftdraw_list, xftdraw_list): Delete them.
13971 (register_xftdraw, check_xftdraw): Delete them.
13972 (xftfont_prepare_face): Don't call register_xftdraw.
13973 (xftfont_done_face): Don't call check_xftdraw.
13974 (xftfont_draw): Get background color only when with_background is
13975 nonzero.
13976
13977 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13978
139792008-02-01 Kenichi Handa <handa@m17n.org>
13980
13981 These changes are for the new font handling codes.
13982
13983 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13984 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13985 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13986 (FONTSRC, FONTOBJ): New variables.
13987 (obj): Add $(FONTOBJ).
13988 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13989 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13990 @LIBOTF_LIBS@.
13991 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13992 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13993
13994 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13995
13996 * character.h (Vscript_representative_chars): Extern it.
13997
13998 * character.c (Vscript_representative_chars): New variable.
13999 (syms_of_character): Declare it as a Lisp variable.
14000
14001 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14002 enable_font_backend is nonzero, accept the composition method
14003 COMPOSITION_WITH_GLYPH_STRING.
14004
14005 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14006 enumeration COMPOSITION_WITH_GLYPH_STRING.
14007
14008 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14009 members clip_x, clip_y, clip_width, and clip_height.
14010 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14011
14012 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14013 --enable-font-backend. Call syms_of_font.
14014
14015 * fns.c (assoc_no_quit): New function.
14016
14017 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14018 (face_for_font, new_fontset_from_font)
14019 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14020
14021 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14022 (fontset_font, fontset_ascii, face_for_char)
14023 (make_fontset_for_ascii_face, Ffont_info)
14024 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14025 is nonzero, use font-backend mechanism.
14026 (find_font_encoding): Make it non-static.
14027 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14028 New functions.
14029
14030 * frame.h (struct frame): New members resx and resy.
14031 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14032 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14033
14034 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14035 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14036
14037 * lisp.h (assoc_no_quit): Extern it.
14038
14039 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14040 Through out the file, use FONT_INFO_FROM_FACE instead of
14041 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14042 rif->per_char_metric.
14043 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14044 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14045 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14046 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14047 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14048 nonzero, use font-backend mechanism.
14049 (get_per_char_metric): New function.
14050
14051 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14052 (set_lface_from_font_name)
14053 (set_font_frame_param, free_realized_face)
14054 (prepare_face_for_display, clear_face_gcs)
14055 (Finternal_set_font_selection_order, realize_x_face)
14056 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14057 font-backend mechanism.
14058 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14059 (load_face_font) [USE_FONT_BACKEND]: Abort.
14060 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14061 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14062
14063 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14064 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14065 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14066 nonzero, register all available font drivers. Call
14067 x_default_font_parameter for deciding a font.
14068 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14069
14070 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14071 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14072 (x_set_glyph_string_clipping_exactly)
14073 (x_compute_glyph_string_overhangs)
14074 (x_draw_glyph_string_foreground)
14075 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14076 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14077 enable_font_backend is nonzero, use font-backend mechanism.
14078 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14079
140802008-02-01 Kenichi Handa <handa@m17n.org>
14081
14082 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14083 system_eol_type.
14084 (syms_of_coding): Initialize system_eol_type.
14085
14086 * process.c (Fset_process_coding_system): Inherit system's eol
14087 format if necessary.
14088
140892008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14090
14091 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14092
140932008-02-01 Kenichi Handa <handa@m17n.org>
14094
14095 * coding.c (decode_eol): Pay attention to buffer relocation in
14096 del_range_2.
14097 (decode_coding): Call decode_eol before restoring undo_list.
14098
140992008-02-01 Kenichi Handa <handa@m17n.org>
14100
14101 * charset.c (Fdefine_charset_internal): Fix setting of
14102 emacs_mule_bytes.
14103
141042008-02-01 Kenichi Handa <handa@m17n.org>
14105
14106 * keyboard.c (read_char): Check if C is a character or not before
14107 looking up Vkeyboard_translate_table.
14108
141092008-02-01 Kenichi Handa <handa@m17n.org>
14110
14111 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14112 condition to terminate the loop.
14113
141142008-02-01 Kenichi Handa <handa@m17n.org>
14115
14116 * coding.c (produce_composition): Compare charbuf[i] instead of
14117 args[i] against 0.
14118 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14119
141202008-02-01 Kenichi Handa <handa@m17n.org>
14121
14122 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14123 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14124 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14125 detect_coding.
14126 (emacs_mule_char): Handle old style (Emacs 20) component character
14127 of a composition.
14128 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14129 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14130 composition rule.
14131 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14132
141332008-02-01 Kenichi Handa <handa@m17n.org>
14134
14135 * coding.c (encode_coding_ccl): Allocate destination dynamically
14136 when necessary.
14137
141382008-02-01 Kenichi Handa <handa@m17n.org>
14139
14140 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14141 the loop. When quitted, show a proper error message.
14142
141432008-02-01 Kenichi Handa <handa@m17n.org>
14144
14145 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14146 src->clip_head and src->clip_tail temporarily instead of src->hl.
14147
14148 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14149 character sequence.
14150 (Fccl_execute_on_string): Use ASET, not XSET.
14151
141522008-02-01 Kenichi Handa <handa@m17n.org>
14153
14154 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * coding.c (decode_coding): Fix the condition of terminating the
14159 decoding loop.
14160
141612008-02-01 Kenichi Handa <handa@m17n.org>
14162
14163 * data.c (Faset): On setting a character bigger than 255 in a
14164 unibyte string, signal an error instead of make the string multibyte.
14165
141662008-02-01 Kenichi Handa <handa@m17n.org>
14167
14168 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14169 made by a mapping table.
14170
141712008-02-01 Kenichi Handa <handa@m17n.org>
14172
14173 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14174 not.
14175 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14176 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14177
14178 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14179 s->face is NULL or not.
14180
141812008-02-01 Kenichi Handa <handa@m17n.org>
14182
14183 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14184 (x_draw_glyph_string): Fix drawing of right_overhang and
14185 left_overhang around/on cursor.
14186
14187 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14188
141892008-02-01 Kenichi Handa <handa@m17n.org>
14190
14191 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14192
141932008-02-01 Kenichi Handa <handa@m17n.org>
14194
14195 * coding.c (Fdefine_coding_system_internal)
14196 (Fdefine_coding_system_alias): Avoid a duplicated element in
14197 Vcoding_system_alist.
14198
141992008-02-01 Kenichi Handa <handa@m17n.org>
14200
14201 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14202
14203 * coding.c (Qcoding_system_define_form): New variable.
14204 (syms_of_coding): Intern and staticpro it.
14205 (Fcoding_system_p): Check Qcoding_system_define_form.
14206 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14207
14208 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14209 Fcoding_system_p.
14210 (CHECK_CODING_SYSTEM): If ID is not available, call
14211 Fcheck_coding_system.
14212 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14213 Try also Fcheck_coding_system.
14214
142152008-02-01 Kenichi Handa <handa@m17n.org>
14216
14217 * coding.c (code_conversion_restore): GCPRO arg.
14218
142192008-02-01 Kenichi Handa <handa@m17n.org>
14220
14221 * character.c (lisp_string_width): Check multibyteness of STRING.
14222
142232008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14224
14225 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14226 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14227 (decode_mac_font_name): Use decode_coding_c_string instead of
14228 decode_coding.
14229 (x_load_font): Initialize fontp->fontset to -1. Set
14230 fontp->encoding_type.
14231
142322008-02-01 Kenichi Handa <handa@m17n.org>
14233
14234 * search.c (search_buffer): Give up BM search on case-fold-search
14235 if one of a target character has a case-equivalence of different
14236 byte length even if that target charcter is an ASCII.
14237 (simple_search): Fix calculation of byte length of matched text.
14238 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14239
142402008-02-01 Kenichi Handa <handa@m17n.org>
14241
14242 * coding.c (decode_coding): Fix handling of invalid bytes.
14243
142442008-02-01 Kenichi Handa <handa@m17n.org>
14245
14246 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14247 Unicode characters.
14248
142492008-02-01 Kenichi Handa <handa@m17n.org>
14250
14251 * coding.c (encode_coding_object): If a pre-write-conversion
14252 function makes a new buffer, kill it.
14253
142542008-02-01 Kenichi Handa <handa@m17n.org>
14255
14256 * coding.c (QCascii_compatible_p): New variable.
14257 (syms_of_coding): Initialize it.
14258 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14259 calling string_char.
14260 (record_conversion_result): Add `default:' case.
14261 (coding_charset_list): Delete unused variable `coding_type'.
14262 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14263 property in the plist of the coding system.
14264 (Fcoding_system_put): Check QCascii_compatible_p.
14265
142662008-02-01 Miles Bader <miles@gnu.org>
14267
14268 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14269 removed calculation of frame `f', as it's now used.
14270
142712008-02-01 Kenichi Handa <handa@m17n.org>
14272
14273 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14274 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14275 (UNIDATA): New variable.
14276 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14277 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14278 $(RUN_TEMACS) unconditionally.
14279
142802008-02-01 Kenichi Handa <handa@m17n.org>
14281
14282 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14283 (admindir): New variable.
14284 ($(lispsource)international/charprop.el): New target.
14285
142862008-02-01 Miles Bader <miles@gnu.org>
14287
14288 * character.c (chars-in-region): Remove obsolete function.
14289 (syms_of_character): Remove its initialization.
14290
142912008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14292
14293 * w32select.c (validate_coding_system)
14294 (setup_windows_coding_system): New functions.
14295 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14296 setup_windows_coding_system.
14297 (setup_config, Fw32_get_clipboard_data): Use
14298 validate_coding_system.
14299 (Fx_selection_exists): Move call to setup_config to a place
14300 where signals are allowed.
14301
14302 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14303 (Fcheck_coding_system): Add declarations.
14304
143052008-02-01 Kenichi Handa <handa@m17n.org>
14306
14307 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14308
143092008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14310
14311 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14312 string as the second argument for x_new_fontset.
14313
143142008-02-01 Kenichi Handa <handa@m17n.org>
14315
14316 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14317 (encode_coding_object): Use safe_call instead of call2.
14318
143192008-02-01 Kenichi Handa <handa@m17n.org>
14320
14321 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14322
14323 * Makefile.in (lisp): Include charprop.el.
14324
143252008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14326
14327 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14328 Not sure if it's unnecessary.
14329
143302008-02-01 Steven Tamm <steventamm@mac.com>
14331
14332 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14333 some possibly unnecessary fontset checking code that crashed
14334 when creating a new frame.
14335
143362008-02-01 Kenichi Handa <handa@m17n.org>
14337
14338 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14339 lookup_face.
14340
14341 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14342
14343 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14344
143452008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14348 (coding_charset_list): New function.
14349
14350 * coding.h (coding_charset_list): Extern it.
14351
143522008-02-01 Kenichi Handa <handa@m17n.org>
14353
14354 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14355 concatenation of family and registry.
14356
143572008-02-01 Kenichi Handa <handa@m17n.org>
14358
14359 * character.h (BYTE8_STRING): Fix typo.
14360
14361 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14362 string to multibyte (sync to HEAD).
14363
14364 * casefiddle.c (casify_region): Handle changes in byte-length
14365 using replace_range_2 (sync to HEAD).
14366
143672008-02-01 Andreas Schwab <schwab@suse.de>
14368
14369 * chartab.c (map_char_table): GCPRO table and arg.
14370
143712008-02-01 Kenichi Handa <handa@m17n.org>
14372
14373 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14374 already at limit.
14375
143762008-02-01 Kenichi Handa <handa@m17n.org>
14377
14378 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14379 instead of fast_c_string_match_ignore_case.
14380 (find_font_encoding): Change argument to Lisp_Object. Use
14381 fast_string_match_ignore_case instead of
14382 fast_c_string_match_ignore_case. Change caller.
14383
143842008-02-01 Kenichi Handa <handa@m17n.org>
14385
14386 * xdisp.c (get_next_display_element): In unibyte case, decide to
14387 display in octal form by checking a character by
14388 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14389
14390 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14391
14392 * character.c (unibyte_has_multibyte_table): New variable.
14393
14394 * character.h (unibyte_has_multibyte_table): Extern it.
14395 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14396
143972008-02-01 Kenichi Handa <handa@m17n.org>
14398
14399 * coding.c (encode_coding_iso_2022): Fix handling of charset
14400 annotation.
14401
144022008-02-01 Kenichi Handa <handa@m17n.org>
14403
14404 * coding.c (setup_coding_system): If coding_system is nil, use
14405 Qundecided.
14406 (Fterminal_coding_system): Return nil if terminal coding system is
14407 `undecided'.
14408 (syms_of_coding): Define coding-system `undecided' here. Setup
14409 terminal_coding as `undecided'.
14410
144112008-02-01 Kenichi Handa <handa@m17n.org>
14412
14413 * xdisp.c (message_dolog, set_message_1): Call
14414 unibyte_char_to_multibyte with arg type int.
14415
14416 * lread.c (read1): Fix reading of a char-table.
14417
14418 * print.c (print_object): Include sub char-table in circularities
14419 detection.
14420
144212008-02-01 Kenichi Handa <handa@m17n.org>
14422
14423 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14424 Append the found sequences in car of ARGS instead of prepending.
14425
144262008-02-01 Kenichi Handa <handa@m17n.org>
14427
14428 * fileio.c (report_file_error): Make a unibyte string from
14429 strerror (errorno).
14430 (Fsubstitute_in_file_name): Fix the arg to
14431 unibyte_char_to_multibyte. It is evaluated twice.
14432
144332008-02-01 Kenichi Handa <handa@m17n.org>
14434
14435 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14436
144372008-02-01 Kenichi Handa <handa@m17n.org>
14438
14439 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14440 BOM is not found.
14441 (detect_coding, detect_coding_system): Optimization for ISO-2022
14442 when no 8-bit data is found.
14443
144442008-02-01 Jason Rumney <jasonr@gnu.org>
14445
14446 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14447
144482008-02-01 Kenichi Handa <handa@m17n.org>
14449
14450 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14451 CHARS.
14452
144532008-02-01 Steven Tamm <steventamm@mac.com>
14454
14455 * macterm.c (mac_encode_char): Add charset argument and update
14456 to use encoding_type.
14457 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14458 switch to pure fontset.
14459 (decode_mac_font_name): Temporarily remove decoding.
14460 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14461 (x_load_font): Temporarily remove encoding.
14462
144632008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * xfaces.c (Fface_font): If frame is not on a window system,
14466 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14467 refer to face->font.
14468 (split_font_name_into_vector, build_font_name_from_vector)
14469 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14470 when HAVE_WINDOW_SYSTEM is defined.
14471
144722008-02-01 Kenichi Handa <handa@m17n.org>
14473
14474 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14475 (x_produce_glyphs): Fix setting of members of cmp in case
14476 cmp->glyph_len is zero.
14477
14478 * fontset.c (Fset_fontset_font): Fix docstring.
14479 (Ffontset_info): Make it backward compatible. New arg ALL.
14480
144812008-02-01 Kim F. Storm <storm@cua.dk>
14482
14483 * process.c (read_process_output): Grow decoding_buf when needed;
14484 this could cause a crash in allocate_string and compact_small_strings.
14485
144862008-02-01 Kenichi Handa <handa@m17n.org>
14487
14488 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14489
144902008-02-01 Kenichi Handa <handa@m17n.org>
14491
14492 * coding.c (setup_coding_system): Set coding->common_flags
14493 correctly for raw-text.
14494 (consume_chars): On encoding unibyte text by raw-text, don't check
14495 multibyte form.
14496 (encode_coding): On encoding by raw-text, never use translation tables.
14497
14498 * fileio.c (e_write): Short cut for the case of no encoding.
14499
145002008-02-01 Kenichi Handa <handa@m17n.org>
14501
14502 * coding.c (detect_coding, detect_coding_system): Delete unused
14503 variables.
14504
145052008-02-01 Kenichi Handa <handa@m17n.org>
14506
14507 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14508 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14509
145102008-02-01 Kenichi Handa <handa@m17n.org>
14511
14512 * coding.c (Ffind_coding_systems_region_internal): Include
14513 raw-text and no-conversion in the result.
14514
145152008-02-01 Kenichi Handa <handa@m17n.org>
14516
14517 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14518 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14519 FONT_DEF.
14520 (font_def_arg, add_arg, from_arg, to_arg): New args.
14521 (set_fontset_font): Change argument.
14522 (Fset_fontset_font): Fix for the case that TARGET is a script
14523 name and charset name.
14524 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14525
145262008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * fontset.c (fontset_font): Rename from fontset_face. Change return
14529 value.
14530 (face_suitable_for_char_p, face_for_char): Adjust for the change
14531 of fontset_font.
14532 (make_fontset_for_ascii_face): Fix setting of the fontset element
14533 for ASCII.
14534 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14535 to get a font name.
14536 (Ffontset_info): Adjust for the change of fontset_font.
14537
14538 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14539
14540 * character.h (LEADING_CODE_LATIN_1_MIN)
14541 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14542
145432008-02-01 Kenichi Handa <handa@m17n.org>
14544
14545 * editfns.c (check_translation): New function.
14546 (Ftranslate_region_internal): Handle M:N mapping.
14547
145482008-02-01 Kenichi Handa <handa@m17n.org>
14549
14550 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14551
145522008-02-01 Kenichi Handa <handa@m17n.org>
14553
14554 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14555 goto invalid_code.
14556 (decode_coding_iso_2022): Fix handling of invalid designation.
14557
14558 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14559 after calling code_conversion_save.
14560
145612008-02-01 Kenichi Handa <handa@m17n.org>
14562
14563 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14564
14565 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14566
14567 * fontset.c: Include "intervals.h".
14568 (fontset_face): Fix comparing of Lisp_Objects.
14569 (free_face_fontset, new_fontset_from_font_name): Fix
14570 Lisp_Object/int mixup.
14571
14572 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14573
14574 * coding.c: Add many prototypes for static functions.
14575 (get_translation_table): Allow max_lookup to be NULL.
14576 (decode_coding, Ffind_coding_systems_region_internal)
14577 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14578 get_translation_table with max_lookup NULL.
14579
145802008-02-01 Kenichi Handa <handa@m17n.org>
14581
14582 * coding.c (get_translation_table): Declare it as Lisp_Object.
14583 (LOOKUP_TRANSLATION_TABLE): New macro.
14584 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14585 instead of CHAR_TABLE_REF.
14586
145872008-02-01 Kenichi Handa <handa@m17n.org>
14588
14589 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14590 annotation data format.
14591 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14592 Change arguments FROM and TO to single argument NCHARS. Change caller.
14593 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14594 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14595 (decode_coding_ccl, decode_coding_charset): Pay attention to
14596 coding->charbuf_used.
14597 (get_translation): New function.
14598 (produce_chars): New arguments translation_table and last_block.
14599 Translate characters here. Return number of carryover chars.
14600 Change caller.
14601 (produce_composition): New argument pos. Change caller.
14602 Adjust for the change of annotation data format.
14603 (produce_charset, produce_annotation): Likewise.
14604 (decode_coding, encode_coding): Don't call translate_chars.
14605 (consume_chars): New arg translation_table. Change caller.
14606 (translate_chars): Delete.
14607 (syms_of_coding): Make translation-table's number of extra slots 2.
14608
146092008-02-01 Kenichi Handa <handa@m17n.org>
14610
14611 * search.c (simple_search): Fix setting this_pos_byte in backward
14612 search.
14613
14614 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14615 byte sequence.
14616 (detect_coding_ccl): Fix setting of the variable valids.
14617
146182008-02-01 Kenichi Handa <handa@m17n.org>
14619
14620 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14621
14622 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14623
14624 * editfns.c (Ftranslate_region_internal): Rename from
14625 Ftranslate_region. Accept a char-table in TABLE.
14626 (syms_of_editfns): Defsubr Stranslate_region_internal.
14627
14628 * xfaces.c (set_lface_from_font_name): If a font is specified for
14629 a frame, generate a fontset from the font.
14630 (build_scalable_font_name): If the scalable font is requested for
14631 a specific size, don't change that size.
14632 (try_font_list): Try a scalable font also in the case that a
14633 pattern string is specified.
14634
146352008-02-01 Kenichi Handa <handa@m17n.org>
14636
14637 * xfaces.c (Fface_font): New optional arg CHARACTER.
14638
146392008-02-01 Kenichi Handa <handa@m17n.org>
14640
14641 * charset.h (CHARSET_OFFSET): New macro.
14642
146432008-02-01 Kenichi Handa <handa@m17n.org>
14644
14645 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14646
14647 * fontset.c (fontset_face): Handle the case that repertory is a
14648 char-table.
14649 (find_font_encoding): Return nil for unknown encoding.
14650 (Fset_fontset_font): Ignore a font of unknown encoding.
14651
146522008-02-01 Kenichi Handa <handa@m17n.org>
14653
14654 * keymap.c (describe_vector): Handle default value of a char table.
14655
14656 * fontset.c (fontset_face): Handle fallback fonts correctly.
14657 (Ffontset_info): Return infomation about fallback fonts.
14658
146592008-02-01 Kenichi Handa <handa@m17n.org>
14660
14661 * fontset.c (FONTSET_DEFAULT): New macro.
14662 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14663 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14664 the case that it is nil.
14665 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14666 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14667
14668 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14669 subset or superset.
14670
146712008-02-01 Kenichi Handa <handa@m17n.org>
14672
14673 * emacs.c (main): Call init_charset after syms_of_XXX.
14674
14675 * charset.c (Vcharset_map_directory): Delete.
14676 (Vcharset_map_path): New variable.
14677 (load_charset_map_from_file): Use Vcharset_map_path instead.
14678 (init_charset): Initialize Vcharset_map_path.
14679 (syms_of_charset): Delete declaration of "charset-map-directory",
14680 add declaration of "charset-map-path".
14681
146822008-02-01 Kenichi Handa <handa@m17n.org>
14683
14684 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14685 ASCII only string.
14686
14687 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14688
14689 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14690 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14691
146922008-02-01 Kenichi Handa <handa@m17n.org>
14693
14694 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14695
14696 * coding.c (QCmnemonic, QCdefalut_char)
14697 (QCdecode_translation_table, QCencode_translation_table)
14698 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14699 (get_translation_table): Return a list of translation tables if
14700 necessary.
14701 (decode_coding): Call get_translation_table with ENCODEP 0.
14702 (char_encodable_p): If translation_table is non-nil, always call
14703 translate_char.
14704 (Fdefine_coding_system_internal): Accept list of translation
14705 tables as :encode-translation-table and :decode-translation-table.
14706 (Fcoding_system_put): New function.
14707 (syms_of_coding): Declare new symbols. Defsubr
14708 Scoding_system_put.
14709 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14710 typically JISX0212.
14711
14712 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14713 when the charset is superset type.
14714
14715 * character.c (translate_char): Accept list of translation tables.
14716
147172008-02-01 Kenichi Handa <handa@m17n.org>
14718
14719 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14720 (CODING_ATTR_TRANS_TBL): New macro.
14721
14722 * coding.c (get_translation_table): New function.
14723 (translate_chars): Fix the bug of skipping annotation data.
14724 (decode_coding, encode_coding): Utilize get_translation_table.
14725 (char_encodable_p, Funencodable_char_position): Translate char if
14726 necessary.
14727 (Ffind_coding_systems_region_internal)
14728 (Fcheck_coding_systems_region): Setup translation table for encode
14729 in a coding system attribute vector in advance.
14730 (Fdefine_coding_system_internal): Allow a symbol as translation
14731 table. For shift-jis type coding system, allow 4th charset.
14732
147332008-02-01 Kenichi Handa <handa@m17n.org>
14734
14735 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14736
14737 * xdisp.c (get_next_display_element): Pass -1 as POS to
14738 FACE_FOR_CHAR if displaying a C-string.
14739
147402008-02-01 Kenichi Handa <handa@m17n.org>
14741
14742 * composite.c (get_composition_id): Handle xoff and yoff in a
14743 composition rule.
14744
14745 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14746 (struct composition): New member lbearing and rbearing.
14747
14748 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14749 (x_get_glyph_overhangs): Handle a composition glyph.
14750 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14751
14752 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14753 composition glyph.
14754
147552008-02-01 Kenichi Handa <handa@m17n.org>
14756
14757 * print.c: Include charset.h.
14758 (Vprint_charset_text_property): New variable.
14759 (Qdefault): Extern it.
14760 (PRINT_STRING_NON_CHARSET_FOUND)
14761 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14762 (print_check_string_result): New variable.
14763 (print_check_string_charset_prop): New function.
14764 (print_prune_charset_plist): New variable.
14765 (print_prune_string_charset): New function.
14766 (print_object): Call print_prune_string_charset if
14767 Vprint_charset_text_property is not t.
14768 (print_interval): Print nothing if interval->plist is nil.
14769 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14770 variable. Init and staticpro print_prune_charset_plist.
14771
147722008-02-01 Kenichi Handa <handa@m17n.org>
14773
14774 * fontset.c (new_fontset_from_font_name): Use the specified font
14775 for all characters in the new fontset.
14776
14777 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14778 OBJECT args.
14779
14780 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14781 OBJECT args for composition too.
14782
14783 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14784 OBJECT args.
14785
147862008-02-01 Kenichi Handa <handa@m17n.org>
14787
14788 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14789
14790 * fontset.c (reorder_font_vector): Adjust for the change of
14791 FONT_DEF format.
14792 (fontset_face): New arg id. Change caller.
14793 (face_for_char): New args pos and object.
14794 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14795 (fs_query_fontset): Check NAME by Fassoc too.
14796 (Fset_fontset_font): Allow non-XLFD font name.
14797 (Ffontset_info): Adjust for the change of FONT_DEF format.
14798
14799 * fontset.h (face_for_char): Adjust prototype.
14800
14801 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14802 (append_space, extend_face_to_end_of_line)
14803 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14804 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14805
14806 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14807 POS and OBJECT args.
14808
14809 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14810 POS and OBJECT args.
14811
148122008-02-01 Jason Rumney <jasonr@gnu.org>
14813
14814 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14815 of GlobalAlloc'ed memory.
14816
148172008-02-01 Kenichi Handa <handa@m17n.org>
14818
14819 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14820
14821 * charset.h (charset_table_used): Delete extern.
14822
14823 * charset.c (charset_table_used): Make it static.
14824 (map_charset_chars): Fix args to c_function with.
14825
14826 * chartab.c (map_sub_char_table_for_charset): Fix args to
14827 c_function with.
14828
14829 * coding.h (enum coding_result_code): Delete
14830 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14831
14832 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14833 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14834 (Vlast_code_conversion_error): New variables.
14835 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14836 (ONE_MORE_BYTE): Record error if any instead of signaling an
14837 error. If non-ASCII multibyte char is found, return the negative
14838 value of the code. All callers changed to check it.
14839 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14840 (record_conversion_result): New function. Change all codes setting
14841 coding->result to call this function.
14842 (detect_coding_utf_8, decode_coding_utf_8)
14843 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14844 Don't use the local variable incomplete.
14845 (emacs_mule_char): Change the second arg to `const'.
14846 (decode_coding): Fix of flushing out unprocessed data.
14847 (make_conversion_work_buffer): Fix making of a work buffer.
14848 (decode_coding_object): Return coding->dst_object.
14849
14850 * fontset.c (set_fontset_font): Fix args.
14851
14852 * lisp.h (CHARACTERBITS): Define as 22.
14853
14854 * process.c (send_process): Be sure to set coding->src_multibyte.
14855
14856 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14857
148582008-02-01 Kenichi Handa <handa@m17n.org>
14859
14860 * xdisp.c (handle_auto_composed_prop): Give limit to
14861 Fnext_single_char_property_change.
14862
148632008-02-01 Kenichi Handa <handa@m17n.org>
14864
14865 * composite.c (syms_of_composite): Don't make the composition hash
14866 table weak.
14867
14868 * fontset.c (Fset_fontset_font): Fix docstring.
14869
14870 * lisp.h (detect_coding_system): Adjust prototype.
14871
14872 * fileio.c (kill_workbuf_unwind): Delete this function.
14873 (Finsert_file_contents): Adjust the call of detect_coding_system.
14874 Get conversion_buffer by code_conversion_save. Use the macro
14875 CODING_MAY_REQUIRE_DECODING. After decoding, update
14876 coding_system.
14877
14878 * coding.h (make_conversion_work_buffer): Delete extern.
14879 (code_conversion_save): Extern it.
14880
14881 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14882 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14883 (decode_coding_utf_8): Don't do eol converion.
14884 (detect_coding_utf_16): Check coding->src_chars, not
14885 coding->src_bytes. Add heuristics for those that have no signature.
14886 (decode_coding_emacs_mule, decode_coding_iso_2022)
14887 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14888 Don't do eol converion.
14889 (adjust_coding_eol_type): Return a new coding system.
14890 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14891 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14892 each change.
14893 (decode_coding): Pay attention to undo_list. Do eol conversion for
14894 all types of coding-systems (if necessary).
14895 (Vcode_conversion_work_buf_list): Delete it.
14896 (Vcode_conversion_reused_workbuf): Rename from
14897 Vcode_conversion_reused_work_buf.
14898 (Vcode_conversion_workbuf_name): New variable.
14899 (reused_workbuf_in_use): New variable.
14900 (make_conversion_work_buffer): Delete the arg DEPTH.
14901 (code_conversion_restore): Change argument to cons.
14902 (code_conversion_save): Delete the argument BUFFER. Change callers.
14903 (detect_coding_system): New argument src_chars. Change callers.
14904 Fix for utf-16 detection.
14905 (init_coding_once): Don't use ISO_carriage_return.
14906 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14907 reused_workbuf_in_use.
14908
149092008-02-01 Kenichi Handa <handa@m17n.org>
14910
14911 * keymap.c (store_in_keymap): Pay attention to the case that idx
14912 is a cons specifying a character range.
14913
149142008-02-01 Kenichi Handa <handa@m17n.org>
14915
14916 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14917 HANDLED_RECOMPUTE_PROPS.
14918
14919 * coding.c (Fdefine_coding_system_internal): Fix checking of
14920 ascii compatibility.
14921
149222008-02-01 Kenichi Handa <handa@m17n.org>
14923
14924 * charset.c (find_charsets_in_text): Delete unused locale variable.
14925 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14926
14927 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14928 Resync charset_list to Vemacs_mule_charset_list.
14929
14930 * keymap.c (store_in_keymap): Pay attention to the case that idx
14931 is a cons specifying a character range.
14932
149332008-02-01 Kenichi Handa <handa@m17n.org>
14934
14935 * composite.c (update_compositions): Bind inhibit-read-only, etc
14936 to t before calling remove-list-of-text-properties.
14937
14938 * print.c (print_object): Always print ASCII chars as is.
14939
149402008-02-01 Kenichi Handa <handa@m17n.org>
14941
14942 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14943
14944 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14945 is a char table.
14946
149472008-02-01 Kenichi Handa <handa@m17n.org>
14948
14949 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14950
149512008-02-01 Kenichi Handa <handa@m17n.org>
14952
14953 * xfaces.c (set_lface_from_font_name): Fix for the case that
14954 FONTNAME is not fontset name.
14955
149562008-02-01 Kenichi Handa <handa@m17n.org>
14957
14958 * fns.c (base64_encode_1): Fix previous change.
14959
149602008-02-01 Kenichi Handa <handa@m17n.org>
14961
14962 * fontset.c (set_fontset_font): New function.
14963 (Fset_fontset_font): If a font is specified for a charset, use
14964 map_charset_chars to store the font spec in a fontset.
14965
149662008-02-01 Kenichi Handa <handa@m17n.org>
14967
14968 * fontset.c (fontset_face): Create a fallback fontset on demand.
14969 (make_fontset): Don't create a fallback fontset here.
14970 (free_face_fontset): Free a fallback fontset (if any) too.
14971 (n_auto_fontsets): Delete this variable.
14972 (auto_fontset_alist): New variable.
14973 (new_fontset_from_font_name): Check auto_fontset_alist.
14974 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14975 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14976 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14977 Defsubr Sfontset_list_all.
14978
149792008-02-01 Kenichi Handa <handa@m17n.org>
14980
14981 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14982
149832008-02-01 Kenichi Handa <handa@m17n.org>
14984
14985 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14986
149872008-02-01 Kenichi Handa <handa@m17n.org>
14988
14989 * editfns.c (Fgoto_char): Fix docstring.
14990
149912008-02-01 Kenichi Handa <handa@m17n.org>
14992
14993 * insdel.c (insert_from_gap): Adjust intervals correctly.
14994
149952008-02-01 Jason Rumney <jasonr@gnu.org>
14996
14997 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14998 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14999 (w32_initialize): Try to load it.
15000 (x_get_font_repertory): Use it if available.
15001 (w32_encode_char): Add shortcut for unicode output.
15002
15003 * w32fns.c (w32_load_system_font): Default charset to -1.
15004 (x_to_w32_charset): Match all fonts for unicode.
15005 (w32_to_x_charset): New parameter matching. Don't return partial
15006 or wildcard charsets.
15007 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15008 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15009 (w32_to_x_font): Match charset to real charset.
15010 (enum_font_cb2): Always list unicode versions.
15011
15012 * makefile.w32-in (temacs): Increase EMHEAP.
15013
150142008-02-01 Jason Rumney <jasonr@gnu.org>
15015
15016 * w32term.c (w32_encode_char): New charset parameter.
15017 font_info.encoding becomes encoding_type.
15018 (x_get_font_repertory): New function. Warning: stub only!
15019 (x_new_font): Return quickly if font already set.
15020 (x_new_fontset): fontsetname parameter is Lisp_Object.
15021 Use new fs_query_fontset. Try new_fontset_from_font_name.
15022 Use fontset_name for return value.
15023
15024 * w32term.h: Declare x_get_font_repertory.
15025
15026 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15027 place of find_charset_in_text. Use encode_coding_object in place
15028 of encode_coding.
15029 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15030 decode_coding.
15031
15032 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15033 of x_new_fontset.
15034 (w32_load_system_font): Initialize charset as unicode.
15035 font_info.encoding becomes encoding_type.
15036 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15037 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15038 (syms_of_w32fns): Set get_font_repertory_func.
15039
15040 * w32console.c: Include character.h. Use terminal_encode_buffer
15041 from term.c.
15042 (write_glyphs): Use new version of encode_terminal_code. Use
15043 encode_coding_object in place of encode_coding.
15044
15045 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15046 encoding becomes encoding_type.
15047
15048 * term.c (terminal_encode_buffer): Make externally visible.
15049
15050 * makefile.w32-in: Add character.h dependancies.
15051 (character.o, chartab.o): New targets.
15052
150532008-02-01 Kenichi Handa <handa@m17n.org>
15054
15055 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15056 CODING_ID_EOL_TYPE.
15057
150582008-02-01 Andreas Schwab <schwab@suse.de>
15059
15060 * coding.c (produce_chars): Revert last change.
15061
150622008-02-01 Kenichi Handa <handa@m17n.org>
15063
15064 * charset.h (charset_unicode): Extern it.
15065
15066 * charset.c (string_xstring_p): Check by (C >= 0x100).
15067 (find_charsets_in_text): Change format of the arc CHARSETS. New
15068 arg MULTIBYTE.
15069 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15070 change of find_charsets_in_text.
15071 (Fsplit_char): Fix doc. Never return unknown.
15072
15073 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15074
15075 * coding.c (Fdefine_coding_system_alias): Update
15076 Vcoding_system_list.
15077
15078 * fontset.c (load_font_get_repertory): Pay attention to the case
15079 that ENCODING of a font is specified by a char-table.
15080
15081 * xterm.c (x_get_font_repertory): Handle the case that the
15082 encoding of font is other than Unicode.
15083
150842008-02-01 Kenichi Handa <handa@m17n.org>
15085
15086 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15087 if a character is encodable by the terminal coding system. If
15088 not, produces proper number of `?'s. Update
15089 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15090 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15091
150922008-02-01 Kenichi Handa <handa@m17n.org>
15093
15094 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15095 variables.
15096 (encode_terminal_code): Change argument. Encode multiple
15097 characters at once. Store the result of encoding in
15098 terminal_encode_buffer.
15099 (write_glyphs, insert_glyphs): Adjust for the change of
15100 encode_terminal_code.
15101 (term_init): Initialize terminal_encode_buffer and
15102 terminal_encode_buf_size.
15103
15104 * coding.c (consume_chars): If coding->src_object is nil, don't
15105 check annotation.
15106
151072008-02-01 Kenichi Handa <handa@m17n.org>
15108
15109 * character.c (char_string): Use ASCII_CHAR_P instead of
15110 SINGLE_BYTE_CHAR_P.
15111
151122008-02-01 Kenichi Handa <handa@m17n.org>
15113
15114 * xdisp.c (handle_auto_composed_prop): Check if the last
15115 characters of auto-composed region is newly composed with the
15116 following characters.
15117 (handle_composition_prop): Fix checking of point being inside
15118 composition.
15119
151202008-02-01 Kenichi Handa <handa@m17n.org>
15121
15122 * fns.c (concat): Don't change multibyteness of the result by
15123 concatenating an 8-bit character.
15124
15125 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15126 multibyteness of the result when newelt is an 8-bit character.
15127
151282008-02-01 Dave Love <fx@gnu.org>
15129
15130 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15131 EMACS_INT.
15132
15133 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15134
15135 * xfaces.c (face_numeric_value): Declare dim size_t.
15136 (Finternal_lisp_face_equal_p): Remove unused f.
15137
15138 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15139 (MATRIX_ROW): Remove unused vars.
15140 (draw_glyphs, x_insert_glyphs, fast_find_position)
15141 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15142 byte/char counts.
15143
15144 * regex.c (regex_compile): Remove unused var.
15145
15146 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15147
15148 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15149 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15150
15151 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15152
15153 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15154
15155 * fileio.c (Fwrite_region): Remove unused var.
15156
15157 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15158 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15159
15160 * composite.c (Fremove_list_of_text_properties): Declare.
15161
15162 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15163 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15164 (coding_inherit_eol_type): Remove unused attrs.
15165 (detect_coding): Cast arg of detect_eol.
15166
15167 * charset.c (syms_of_charset): Remove unused var p.
15168 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15169 byte/char counts.
15170
15171 * casetab.c (set_case_table): Remove unused var.
15172
15173 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15174 unused vars.
15175
151762008-02-01 Dave Love <fx@gnu.org>
15177
15178 * xterm.c (x_bitmap_mask): Declare.
15179
151802008-02-01 Dave Love <fx@gnu.org>
15181
15182 * xterm.c (x_term_init): Fix type error.
15183
15184 * lisp.h: Add Funibyte_char_to_multibyte.
15185
15186 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15187 (Fset_coding_system_priority): Doc fix.
15188
15189 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15190
15191 * indent.c (check_composition): Make start and end EMACS_INT.
15192
15193 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15194
15195 * xdisp.c (handle_composition_prop, check_point_in_composition):
15196 Make buffer positions EMACS_INT.
15197
15198 * composite.c (find_composition, run_composition_function)
15199 (update_compositions, Ffind_composition_internal): Make buffer
15200 positions EMACS_INT.
15201
15202 * composite.h (find_composition, update_compositions): Make
15203 position args EMACS_INT.
15204
15205 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15206
15207 * intervals.c (get_property_and_range):
15208 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15209
15210 * unexalpha.c: Don't include varargs.h.
15211
152122008-02-01 Dave Love <fx@gnu.org>
15213
15214 * coding.h (ENCODE_UTF_8): New.
15215
15216 * Makefile.in (gtkutil.o): Depend on coding.h.
15217
15218 * coding.c (Fset_coding_system_priority): Doc fix.
15219
152202008-02-01 Kenichi Handa <handa@m17n.org>
15221
15222 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15223 the case of auto saving.
15224
152252008-02-01 Andreas Schwab <schwab@suse.de>
15226
15227 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15228 `range' from GC.
15229
152302008-02-01 Kenichi Handa <handa@m17n.org>
15231
15232 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15233
152342008-02-01 Kenichi Handa <handa@m17n.org>
15235
15236 * fileio.c (choose_write_coding_system): Return a decided coding system.
15237 (Fwrite_region): Set Vlast_coding_system_used to the return value
15238 of choose_write_coding_system.
15239
152402008-02-01 Kenichi Handa <handa@m17n.org>
15241
15242 * charset.c (Fset_charset_priority): Pay attention to duplicated
15243 arguments.
15244
15245 * coding.c (QCcategory): New variable.
15246 (syms_of_coding): Defsym it. Set all elements of
15247 Vcoding_category_table and their symbol values.
15248 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15249 coding-category-XXX, and coding-category-list.
15250 (Fdefine_coding_system_internal): Add category in the plist.
15251
152522008-02-01 Kenichi Handa <handa@m17n.org>
15253
15254 * callproc.c (Fcall_process): Handle carryover correctly.
15255
15256 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15257 (raw_text_coding_system): Check NILP (coding_system).
15258 (coding_inherit_eol_type): Check NILP (coding_system) and
15259 NILP (parent).
15260 (consume_chars): Fix for the case of raw-text.
15261
15262 * process.c (read_process_output): Handle carryover correctly.
15263
152642008-02-01 Dave Love <fx@gnu.org>
15265
15266 * regex.c (re_search_2): Fix last change.
15267
152682008-02-01 Kenichi Handa <handa@m17n.org>
15269
15270 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15271 target_multibyte. Even in a unibyte case, return a converted
15272 multibyte char.
15273 (GET_CHAR_AFTER): New macro.
15274 (PATFETCH): Translate via multibyte char.
15275 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15276 (SETUP_MULTIBYTE_RANGE): New macro.
15277 (regex_compile): Setup compiled code so that its multibyteness
15278 matches that of a target. Fix the handling of "[X-YZ]" using
15279 SETUP_MULTIBYTE_RANGE.
15280 (analyse_first) <charset>: For filling fastmap for all multibyte
15281 characters, don't check by BASE_LEADING_CODE_P.
15282 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15283 the same as RE_MULTIBYTE_P (bufp) now.
15284 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15285 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15286 (TRANSLATE_VIA_MULTIBYTE): New macro.
15287 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15288 It is the same as RE_MULTIBYTE_P (bufp) now.
15289 <exactn>: Translate via multibyte.
15290 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15291 translate it.
15292 <charset, charset_not>: Fetch a character by
15293 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15294 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15295 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15296 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15297 by GET_CHAR_AFTER.
15298 (bcmp_translate): Likewise.
15299
15300 * search.c (compile_pattern): Check the member target_multibyte,
15301 not the member multibyte of buf.
15302
15303 * lread.c (read1): While reading a string, set force_singlebyte
15304 and force_multibyte correctly.
15305
15306 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15307 up of unibyte_to_multibyte_table.
15308
153092008-02-01 Kenichi Handa <handa@m17n.org>
15310
15311 * coding.c (setup_coding_system): If coding has
15312 post-read-conversion or pre-write-conversion, set
15313 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15314 respectively.
15315 (decode_coding_gap): Run post-read-conversion if any.
15316
15317 * fileio.c (Finsert_file_contents): Even if we read into a
15318 unibyte buffer, check if we must decode the result or not.
15319
153202008-02-01 Kenichi Handa <handa@m17n.org>
15321
15322 * coding.c (make_conversion_work_buffer): Change the work buffer
15323 name to the same one as that of Emacs 21.
15324
153252008-02-01 Kenichi Handa <handa@m17n.org>
15326
15327 * coding.h (make_conversion_work_buffer): Adjust prototype.
15328 (code_conversion_restore): Don't extern it.
15329
15330 * coding.c (detected_mask): Delete unused variable.
15331 (decode_coding_iso_2022): Pay attention to the byte sequence of
15332 CTEXT extended segment, and retain those bytes as is.
15333 (decode_coding_ccl): Delete unused variable `valids'.
15334 (setup_coding_system): Delete unused variable `category'.
15335 (consume_chars): Delete unused variable `category'. Make it work
15336 for non-multibyte case.
15337 (make_conversion_work_buffer): Change argument.
15338 (saved_coding): Delete unused variable.
15339 (code_conversion_restore): Don't check saved_coding->destination.
15340 (code_conversion_save): New function.
15341 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15342 instead of record_unwind_protect.
15343 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15344 (detect_coding_system): Delete unused variable `mask'.
15345 (Fdefine_coding_system_internal): Delete unused variable id.
15346
15347 * fileio.c (kill_workbuf_unwind): New function.
15348 (Finsert_file_contents): On replacing, call
15349 make_conversion_work_buffer with correct args, and call
15350 record_unwind_protect with the first arg kill_workbuf_unwind.
15351
15352 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15353
153542008-02-01 Kenichi Handa <handa@m17n.org>
15355
15356 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15357 (fontset_add): Fix for the case that TO is less than TO1.
15358 (Ffontset_info): Don't use fallback fontset on checking the
15359 default fontset.
15360 (dump_fontset): New function for debugging.
15361
15362 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15363 coding_type is Qcharset.
15364
153652008-02-01 Kenichi Handa <handa@m17n.org>
15366
15367 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15368 (map_char_table): Don't inherit the value from the parent on
15369 initializing VAL. Adjust for the above change.
15370
153712008-02-01 Kenichi Handa <handa@m17n.org>
15372
15373 * coding.c (Qsignature, Qendian): Delete these variables.
15374 (syms_of_coding): Don't initialize them.
15375 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15376 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15377 detect_info->found.
15378 (decode_coding_utf_16): Don't detect BOM here.
15379 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15380 is NOT utf_16_without_bom.
15381 (setup_coding_system): For a coding system of type utf-16, check
15382 if the attribute :endian is Qbig or not (not nil or not), and set
15383 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15384 (detect_coding): If coding type is utf-16 and BOM detection is
15385 required, detect it.
15386 (Fdefine_coding_system_internal): For a coding system of type
15387 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15388
153892008-02-01 Kenichi Handa <handa@m17n.org>
15390
15391 * coding.c (coding_set_source): Fix for the case that the current
15392 buffer is different from coding->src_object.
15393 (decode_coding_object): Don't use the conversion work buffer if
15394 DST_OBJECT is a buffer.
15395
153962008-02-01 Dave Love <fx@gnu.org>
15397
15398 * lread.c (read_emacs_mule_char) [len==2]: Index
15399 emacs_mule_charset correctly.
15400
154012008-02-01 Dave Love <fx@gnu.org>
15402
15403 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15404 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15405 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15406 treated specially.)
15407 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15408 (detected_mask): Remove Big5 bits.
15409
154102008-02-01 Kenichi Handa <handa@m17n.org>
15411
15412 The following changes are to make the font rescaling facility
15413 compatible with Emacs 21.
15414
15415 * xfaces.c (Vface_font_rescale_alist): Rename from
15416 Vface_resizing_fonts.
15417 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15418 (font_rescale_ratio): Rename from font_resizing_ratio.
15419 (split_font_name): Set font->rescale_ratio.
15420 (better_font_p): Pay attention to font->rescale_ratio.
15421 (build_scalable_font_name): Likewise. Change RESX, and RESY
15422 fields.
15423 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15424
154252008-02-01 Kenichi Handa <handa@m17n.org>
15426
15427 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15428 (Qutf_16_le): Remove these variables.
15429 (syms_of_coding): Don't DEFSYM them.
15430 (decode_coding_utf_16): Fix handling of BOM.
15431 (encode_coding_utf_16): Fix handling of BOM.
15432
154332008-02-01 Kenichi Handa <handa@m17n.org>
15434
15435 * fileio.c (Finsert_file_contents): On replacing, before decoding
15436 the file into the work buffer, set point of the work buffer to the end.
15437
154382008-02-01 Dave Love <fx@gnu.org>
15439
15440 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15441
154422008-02-01 Dave Love <fx@gnu.org>
15443
15444 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15445 and fix C types.
15446
154472008-02-01 Kenichi Handa <handa@m17n.org>
15448
15449 * xdisp.c (SKIP_GLYPHS): New macro.
15450 (set_cursor_from_row): Pay attention to string display properties.
15451
15452 * category.c (copy_category_entry): Fix for the case that RANGE
15453 is an integer.
15454
15455 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15456
15457 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15458
154592008-02-01 Kenichi Handa <handa@m17n.org>
15460
15461 * charset.c (Fcharset_id_internal): New function.
15462 (syms_of_charset): Defsubr it.
15463
15464 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15465 with the last arg charset_list acquired from coding.
15466 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15467 the attribute coding_attr_ccl_valids.
15468
15469 * coding.h (enum define_coding_ccl_arg_index): Set the first
15470 member coding_arg_ccl_decoder to coding_arg_max.
15471
15472 * ccl.h (ccl_driver): Adjust prototype.
15473
15474 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15475 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15476 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15477 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15478 last arg Qnil.
15479
154802008-02-01 Kenichi Handa <handa@m17n.org>
15481
15482 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15483 call encode_char.
15484
15485 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15486
154872008-02-01 Dave Love <fx@gnu.org>
15488
15489 * composite.c (syms_of_composite): Make composition_hash_table weak.
15490
154912008-02-01 Kenichi Handa <handa@m17n.org>
15492
15493 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15494 (font_name_registry): Don't extern them.
15495 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15496
15497 * fontset.h (Qfontset): Don't extern it.
15498 (new_fontset_from_font_name): Extern it.
15499
15500 * fontset.c: Give 8 extra slots to fontset objects.
15501 (Qfontset_info): New variable.
15502 (syms_of_fontset): Defsym it.
15503 (FONTSET_FALLBACK): New macro.
15504 (fontset_face): Try also the default fontset.
15505 (make_fontset): Realize a fallback fontset from the default fontset.
15506 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15507 using split_font_name_into_vector and build_font_name_from_vector.
15508 (Fset_fontset_font): Access the elements of font_spec by enum
15509 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15510 name by using split_font_name_into_vector.
15511 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15512 generate a proper font name from the fontset name. Update
15513 Vfontset_alias_alist.
15514 (n_auto_fontsets): New variable.
15515 (new_fontset_from_font_name): New function.
15516 (Ffont_info): Store the information about fonts generated from the
15517 default fontset in the first extra slot of the returned char-table.
15518
15519 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15520 (font_name_registry): Delete function.
15521 (split_font_name_into_vector): New function.
15522 (build_font_name_from_vector): New function.
15523 (font_list): The argument REGISTRY is now a list of registry names.
15524 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15525 specifies an explicit font name, return the name as is. Make a
15526 list of registy names.
15527
15528 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15529 of x_new_fontset.
15530 (Fx_create_frame): Don't call x_new_fontset here. Just use
15531 x_list_fonts to check the existence of fonts.
15532
15533 * xterm.h (x_new_fontset): Adjust prototype.
15534
15535 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15536 string. Use new_fontset_from_font_name to create a fontset from a
15537 font name.
15538
155392008-02-01 Kenichi Handa <handa@m17n.org>
15540
15541 * syntax.c (Vfind_word_boundary_function_table): New name for
15542 Vnext_word_boundary_function_table.
15543 (find-word-boundary-function-table): New name for
15544 next-word-boundary-function-table.
15545
155462008-02-01 Dave Love <fx@gnu.org>
15547
15548 * Makefile.in: Fix some dependencies.
15549
15550 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15551 set it to nil before returning.
15552
15553 * composite.c (update_compositions): Fix type error.
15554
15555 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15556
155572008-02-01 Kenichi Handa <handa@m17n.org>
15558
15559 * xterm.c (x_new_font): Optimize for the case that the font is
15560 already set for the frame.
15561
155622008-02-01 Kenichi Handa <handa@m17n.org>
15563
15564 * chartab.c (char_table_ascii): Check if the char table contents
15565 is sub-char-table or not.
15566 (char_table_set, char_table_set_range): Fix argument to
15567 char_table_ascii.
15568
15569 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15570 (detect_coding_utf_8, detect_coding_utf_16)
15571 (detect_coding_emacs_mule, detect_coding_iso_2022)
15572 (detect_coding_sjis, detect_coding_big5)
15573 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15574 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15575 sequence is valid in this coding system. Change callers.
15576 (MAX_ANNOTATION_LENGTH): New macro.
15577 (ADD_ANNOTATION_DATA): New macro.
15578 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15579 ADD_ANNOTATION_DATA. Change the format of annotation data.
15580 (ADD_CHARSET_DATA): New macro.
15581 (emacs_mule_char): New argument ID. Change callers.
15582 (decode_coding_emacs_mule, decode_coding_iso_2022)
15583 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15584 Produce charset annotation data in coding->charbuf.
15585 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15586 to charset annotation data in coding->charbuf.
15587 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15588 coding->common_flags if the coding system is iso-2022 based and
15589 uses designation.
15590 (produce_composition): Adjust for the new annotation data format.
15591 (produce_charset): New function.
15592 (produce_annotation): Handle charset annotation.
15593 (handle_composition_annotation, handle_charset_annotation): New
15594 functions.
15595 (consume_chars): Handle charset annotation. Utilize the above two
15596 functions.
15597 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15598 buffer, get the deleted text as a string and set
15599 coding->src_object to that string.
15600 (detect_coding, detect_coding_system): Use the new struct
15601 coding_detection_info.
15602
15603 * coding.h (struct coding_detection_info): New structure.
15604 (struct coding_system): Adjust prototype of the member `detector'.
15605 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15606
156072008-02-01 Kenichi Handa <handa@m17n.org>
15608
15609 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15610
156112008-02-01 Dave Love <fx@gnu.org>
15612
15613 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15614 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15615 to new local and nullify apropos_accumulate before returning.
15616 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15617
156182008-02-01 Kenichi Handa <handa@m17n.org>
15619
15620 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15621 correctly.
e3eea1fc 15622
aac0c6e3
MR
156232008-02-01 Dave Love <fx@gnu.org>
15624
15625 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15626
156272008-02-01 Kenichi Handa <handa@m17n.org>
15628
15629 The following changes are to make character composition happen
15630 automatically on displaying.
15631
15632 * Makefile.in (lisp, shortlisp): Add composite.elc.
15633
15634 * composite.h (Qauto_composed, Vauto_composition_function)
15635 (Qauto_composition_function): Extern them.
15636
15637 * composite.c (Vcomposition_function_table)
15638 (Qcomposition_function_table): Delete variables.
15639 (Qauto_composed, Vauto_composition_function)
15640 (Qauto_composition_function): New variables.
15641 (run_composition_function): Don't call
15642 compose-chars-after-function.
15643 (update_compositions): Clear `auto-composed' text property.
15644 (compose_chars_in_text): Delete this function.
15645 (syms_of_composite): Staticpro Qauto_composed and
15646 Qauto_composition_function. Declare Vauto_composition_function as
15647 a Lisp variable.
15648
15649 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15650
15651 * xdisp.c (it_props): Add an entry for Qauto_composed.
15652 (handle_auto_composed_prop): New function.
15653
15654 * xselect.c (selection_data_to_lisp_data): Don't call
15655 compose_chars_in_text.
15656
156572008-02-01 Dave Love <fx@gnu.org>
15658
15659 * keyboard.c (read_char): Modify checking around use of
15660 Vkeyboard_translate_table.
15661
15662 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15663 and fix C types.
15664
156652008-02-01 Kenichi Handa <handa@m17n.org>
15666
15667 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15668 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15669 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15670 the case that the last byte is '\r' correctly.
15671 (decode_coding): Flush out the unprocessed data correctly.
15672 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15673
156742008-02-01 Dave Love <fx@gnu.org>
15675
15676 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15677 Add XK_ISO... case.
15678 (xaw_scroll_callback): Revert last change.
15679
156802008-02-01 Kenichi Handa <handa@m17n.org>
15681
15682 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15683
156842008-02-01 Kenichi Handa <handa@m17n.org>
15685
15686 * xfaces.c (Vface_resizing_fonts): New variable.
15687 (struct font_name): New member `resizing_ratio'.
15688 (font_resizing_ratio): New function.
15689 (split_font_name): Set font->resizing_ratio.
15690 (better_font_p): Pay attention to font->resizing_ratio.
15691 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15692 RESX, and RESY fields.
15693 (try_alternative_families): Try scalable fonts if
15694 Vscalable_fonts_allowed is not Qt.
15695 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15696
156972008-02-01 Dave Love <fx@gnu.org>
15698
15699 * xterm.c (xaw_scroll_callback): Cast correctly.
15700
157012008-02-01 Dave Love <fx@gnu.org>
15702
15703 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15704 (lispy_kana_keys): Comment out.
15705 (make_lispy_event) [XK_kana_A]: Comment out.
15706
15707 * xterm.c (xaw_scroll_callback): Cast call_data.
15708 (XTread_socket): Deal with ASCII keysyms.
15709 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15710
157112008-02-01 Dave Love <fx@gnu.org>
15712
15713 * xterm.c (Vx_keysym_table): New.
15714 (syms_of_xterm): Initialize it.
15715 (XTread_socket): Use it.
15716 From head: Eliminate incorrect optimization that tried to avoid
15717 decoding the output of X*LookupString.
15718 (x_get_font_repertory): Delete charset declaration.
15719
157202008-02-01 Kenichi Handa <handa@m17n.org>
15721
15722 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15723 return 0.
15724 (Fdefine_coding_system_internal): Setup
15725 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15726
157272008-02-01 Dave Love <fx@gnu.org>
15728
15729 * coding.c (Fcheck_coding_system): Doc fix.
15730
15731 * editfns.c (Finsert_byte): Return a proper value.
15732
157332008-02-01 Kenichi Handa <handa@m17n.org>
15734
15735 * coding.c (decode_coding): Fix args to translate_chars. Pay
15736 attention to Vstandard_translation_table_for_decode.
15737 (encode_coding): Fix args to translate_chars. Pay attention to
15738 Vstandard_translation_table_for_encode.
15739
15740 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15741 SINGLE_BYTE_CHAR_P.
15742
15743 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15744 not by SINGLE_BYTE_CHAR_P.
15745
15746 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15747 SINGLE_BYTE_CHAR_P.
15748
15749 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15750 SINGLE_BYTE_CHAR_P.
15751
15752 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15753 by SINGLE_BYTE_CHAR_P.
15754
15755 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15756 SINGLE_BYTE_CHAR_P.
15757
157582008-02-01 Dave Love <fx@gnu.org>
15759
15760 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15761
157622008-02-01 Dave Love <fx@gnu.org>
15763
15764 * fns.c (Flanginfo): Fix typo.
15765
15766 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15767
157682008-02-01 Kenichi Handa <handa@m17n.org>
15769
15770 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15771 (detect_coding_emacs_mule, detect_coding_iso_2022)
15772 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15773 incomplete byte sequence. Don't update *mask when correctly detected.
15774 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15775 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15776 (detect_coding, detect_coding_system): Adjust for the changes above.
15777
157782008-02-01 Kenichi Handa <handa@m17n.org>
15779
15780 * character.c (char_string): Rename from
15781 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15782 (string_char): Rename from string_char.
15783
15784 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15785 if C is greater than MAX_3_BYTE_CHAR.
15786 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15787 string_char instead of string_char_with_unification.
15788
157892008-02-01 Dave Love <fx@gnu.org>
15790
15791 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15792
157932008-02-01 Kenichi Handa <handa@m17n.org>
15794
15795 * keymap.c (push_key_description): Pay attention to force_multibyte.
15796
15797 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15798
157992008-02-01 Dave Love <fx@gnu.org>
15800
15801 * charset.c (define_charset_internal): Rename `supprementary'.
15802
15803 * Makefile.in (lisp, shortlisp): Remove latin-N.
15804
158052008-02-01 Dave Love <fx@gnu.org>
15806
15807 * xfns.c (x_window, x_window): Use use_xim.
15808
15809 * xterm.c (use_xim): Initialize.
15810 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15811 (x_term_init): Maybe set use_xim.
15812
15813 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15814
158152008-02-01 Kenichi Handa <handa@m17n.org>
15816
15817 * search.c (search_buffer): Fix case-fold-search of multibyte
15818 characters.
15819 (boyer_moore): Rename the last argument to char_high_bits.
15820
158212008-02-01 Kenichi Handa <handa@m17n.org>
15822
15823 * xdisp.c (display_string): Fix for the case of zero width glyph.
15824
15825 * xfns.c (x_set_font): Change the error message of the case that
15826 x_new_fontset returns Qt.
15827
15828 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15829 (Finternal_set_lisp_face_attribute): Use signal_error for the
15830 error of invalid fontset.
15831
15832 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15833 fontset, return Qt.
15834
158352008-02-01 Dave Love <fx@gnu.org>
15836
15837 * unexelf.c (unexec): Make .got handling not SGI-specific.
15838
15839 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15840
15841 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15842
15843 * keyboard.c (read_key_sequence): Fix type error.
15844
15845 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15846 type error.
15847
15848 * fontset.c (fontset_add): Return Lisp_Object.
15849
158502008-02-01 Dave Love <fx@gnu.org>
15851
15852 * charset.h (charset_ordered_list_tick): Declare extern.
15853
158542008-02-01 Kenichi Handa <handa@m17n.org>
15855
15856 The following changes (and some of 2008-02-01 changes of mine) are
15857 for handling syntax, category, and case conversion for unibyte
15858 characters by converting them to multibyte on the fly. With these
15859 changes, we don't have to setup syntax and case tables for unibyte
15860 characters in each language environment.
15861
15862 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15863 multibyte if necessary.
15864
15865 * bytecode.c (Fbyte_code): Likewise.
15866
15867 * character.h (LEADING_CODE_LATIN_1_MIN)
15868 (LEADING_CODE_LATIN_1_MAX): New macros.
15869 (unibyte_to_multibyte_table): Extern it.
15870 (unibyte_char_to_multibyte): New macro.
15871 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15872 (CHAR_LEADING_CODE): New macro.
15873 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15874
15875 * character.c (unibyte_to_multibyte_table): New variable.
15876 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15877 (multibyte_char_to_unibyte): If C is an eight-bit character,
15878 convert it to the corresponding byte value.
15879
15880 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15881 not 1, signals an error. Update the elements of
15882 unibyte_to_multibyte_table.
15883 (init_charset_once): Initialize unibyte_to_multibyte_table.
15884 (syms_of_charset): Define the charset `iso-8859-1'.
15885
15886 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15887 as is without converting it to unibyte. In a unibyte buffer,
15888 convert C to multibyte before checking the syntax.
15889
15890 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15891
15892 * minibuf.c (Fminibuffer_complete_word): Use the macro
15893 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15894
15895 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15896
15897 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15898 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15899 that is zero, convert an eight-bit char to multibyte.
15900 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15901 non-emacs case.
15902 (PATFETCH): Convert an eight-bit char to multibyte.
15903 (HANDLE_UNIBYTE_RANGE): New macro.
15904 (regex_compile): Setup the compiled pattern for multibyte chars
15905 even if the given regex string is unibyte. Use PATFETCH_RAW
15906 instead of PATFETCH in many places. To handle `charset'
15907 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15908 only for ASCII chars.
15909 (analyse_first) <exactn>: Simplify because the compiled pattern
15910 is multibyte.
15911 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15912 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15913 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15914 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15915 multibyte always 1.
15916 (re_search_2): In emacs, set the locale variable multibyte to 1,
15917 otherwise to 0. New local variable target_multibyte. Check it
15918 to decide the multibyteness of STR1 and STR2. If
15919 target_multibyte is zero, convert unibyte chars to multibyte
15920 before translating and checking fastmap.
15921 (TARGET_CHAR_AND_LENGTH): New macro.
15922 (re_match_2_internal): In emacs, set the locale variable multibyte
15923 to 1, otherwise to 0. New local variable target_multibyte. Check
15924 it to decide the multibyteness of STR1 and STR2. Use
15925 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15926 <charset, charset_not>: If multibyte is nonzero, check fastmap
15927 only for ASCII chars. Call bcmp_translate with
15928 target_multibyte, not with multibyte.
15929 <begline>: Declare the local variable C as `unsigned'.
15930 (bcmp_translate): Change the last arg name to target_multibyte.
15931
15932 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15933 the regexp pattern and the matching target. Set cp->buf.multibyte
15934 to the multibyteness of the regexp pattern. Set
15935 cp->but.target_multibyte to the multibyteness of the matching target.
15936 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15937 FETCH_STRING_CHAR_ADVANCE.
15938 (Freplace_match): Convert unibyte chars to multibyte.
15939
15940 * syntax.c (char_quoted, back_comment, scan_words)
15941 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15942 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15943 unibyte chars to multibyte.
15944 (skip_chars): Delete the arg syntaxp, and move the code for
15945 handling syntaxes to skip_syntaxes. Change callers.
15946 Fix the case that the multibyteness of STRING and the current
15947 buffer doesn't match.
15948 (skip_syntaxes): New function.
15949 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15950 SINGLE_BYTE_CHAR_P.
15951
159522008-02-01 Kenichi Handa <handa@m17n.org>
15953
15954 * xfaces.c (QCfontset): New variable.
15955 (LFACE_FONTSET): New macro.
15956 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15957 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15958 (Finternal_set_lisp_face_attribute)
15959 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15960 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15961 check also LFACE_FONTSET_INDEX.
15962 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15963 attrs[LFACE_FONT_INDEX].
15964 (syms_of_xfaces): Intern and staticpro QCfontset.
15965
15966 * dispextern.h (enum lface_attribute_index): New member
15967 LFACE_FONTSET_INDEX.
15968
15969 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15970
159712008-02-01 Kenichi Handa <handa@m17n.org>
15972
15973 * coding.c (coding_set_destination): Fix coding->destination for
15974 the case converting a region.
15975 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15976 (encode_coding_object): Fix coding->dst_pos and
15977 coding->dst_pos_byte for the case converting a region.
15978
15979 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15980
15981 * character.h (BYTE8_STRING): New macro.
15982
15983 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15984
159852008-02-01 Kenichi Handa <handa@m17n.org>
15986
15987 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15988 characters by octal form.
15989
15990 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15991
15992 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15993 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15994 _fetch_multibyte_char_len.
15995 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15996
15997 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15998
15999 * casefiddle.c (casify_object): Simplify. Handle the case that
16000 the case conversion change the byte length.
16001 (casify_region): Likewise.
16002
16003 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16004
16005 * character.c (_fetch_multibyte_char_len): Delete this variable.
16006 (syms_of_character): Setup Vprintable_chars.
16007
16008 * editfns.c (Fchar_equal): Fix for the unibyte case.
16009 (Finsert_byte): New function.
16010 (syms_of_editfns): Defsubr it.
16011
16012 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16013 of direct code 0x3ffff.
16014
16015 * search.c (Freplace_match): Fix for the unibyte case.
16016
160172008-02-01 Kenichi Handa <handa@m17n.org>
16018
16019 * lread.c (safe_to_load_p): Fix the logic.
16020
16021 * syntax.c (scan_words): Don't treat characters belonging to
16022 different scripts as constituting a word.
16023
16024 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16025
16026 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16027
16028 * emacs.c (main): In the case of --unibyte, instead of aborting on
16029 finding non-empty buffer, make it unibyte.
16030
160312008-02-01 Kenichi Handa <handa@m17n.org>
16032
16033 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16034 to create a fontset.
16035
160362008-02-01 Dave Love <fx@gnu.org>
16037
16038 * character.c (Funibyte_char_to_multibyte): Doc fix.
16039
16040 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16041
160422008-02-01 Kenichi Handa <handa@m17n.org>
16043
16044 * fontset.c (fontset_add): Make the type `int'.
16045 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16046
16047 * character.c (unibyte_char_to_multibyte)
16048 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16049 charset_unibyte, not charset_primary.
16050
16051 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16052
16053 * charset.c (charset_unibyte): Rename from charset_primary.
16054 (Funibyte_charset): Rename from Fprimary_charset.
16055 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16056 (syms_of_charset): Adjust for the above changes.
16057
16058 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16059 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16060 it->multibyte_p is zero.
16061
16062 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16063 Delete extern.
16064
160652008-02-01 Kenichi Handa <handa@m17n.org>
16066
16067 * coding.c (Fdefine_coding_system_internal): Fix category setting
16068 for a coding system of type iso-2022.
16069
160702008-02-01 Kenichi Handa <handa@m17n.org>
16071
16072 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16073
160742008-02-01 Kenichi Handa <handa@m17n.org>
16075
16076 * syntax.c (Vnext_word_boundary_function_table): New variable.
16077 (next-word-boundary-function-table): Declare it as a Lisp variable
16078 in syms_of_syntax.
16079 (scan_words): Call functions in Vnext_word_boundary_function_table
16080 if any.
16081
16082 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16083
16084 * fontset.c (fs_load_font): If fontp->charset is not negative,
16085 return fontp without setting its members.
16086
160872008-02-01 Dave Love <fx@gnu.org>
16088
16089 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16090
16091 * m/sparc.h (HAVE_ALLOCA): Delete.
16092
16093 * s/irix6-5.h: Don't include strings.h.
16094 (bcopy, bzero, bcmp): Don't undef.
16095
16096 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16097
16098 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16099 (TIOCSIGSEND): Don't test IRIX6.
16100 (bcopy, bzero, bcmp): Define conditionally.
16101
161022008-02-01 Kenichi Handa <handa@m17n.org>
16103
16104 * buffer.c (Qas, Qmake, Qto): New variables.
16105 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16106 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16107
16108 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16109 we are inserting a process output into a multibyte buffer.
16110
16111 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16112 multibyte_char_to_unibyte.
16113
16114 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16115 by the primary charset, make it eight-bit char.
16116 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16117
16118 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16119 (charset_8_bit__control, charset_8_bit_graphic)
16120 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16121 (define_charset_internal): New function.
16122 (syms_of_charset): Call define_charset_internal for pre-defined
16123 charsets.
16124
16125 * charset.h (charset_8_bit): Extern it.
16126
16127 * coding.c (make_conversion_work_buffer): Adjust for the change
16128 of Fset_buffer_multibyte.
16129 (encode_coding_raw_text): Increment p0 in the loop.
16130
16131 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16132
16133 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16134 for the change of Fset_buffer_multibyte.
16135
16136 * fns.c (Fstring_to_multibyte): New function.
16137 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16138
161392008-02-01 Dave Love <fx@gnu.org>
16140
16141 * xfns.c (x_put_x_image): Declare args.
16142
16143 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16144 (try_font_list): Declare an arg.
16145
16146 * xdisp.c (message2_nolog, set_message): Declare an arg.
16147
16148 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16149
16150 * syntax.c (scan_sexps_forward): Declare an arg.
16151
16152 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16153 Declare an arg.
16154
16155 * lisp.h (Fnew_fontset): Declare.
16156
16157 * keymap.c (push_key_description): Call CHARACTERP correctly.
16158
16159 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16160 (face_for_char): Delete unused vars.
16161 (Fset_fontset_font): Doc fix. Delete unused vars.
16162
16163 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16164
16165 * composite.c (update_compositions): Declare arg.
16166
16167 * cm.c (calccost, cmgoto): Declare args.
16168
16169 * charset.c: Remove `emacs' conditional. Doc fixes.
16170 (map_char_table_for_charset): Declare.
16171
16172 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16173
16174 * ccl.c: Remove `emacs' conditional.
16175
161762008-02-01 Kenichi Handa <handa@m17n.org>
16177
16178 The following changes are to allow specifying multiple font
16179 patterns for a character range (specified by script or charset).
16180
16181 * Makefile.in (abbrev.o): Depend on syntax.h.
16182 (xfaces.o): Depend on charset.h.
16183
16184 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16185 SINGLE_BYTE_CHAR_P.
16186
16187 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16188
16189 * character.h (Vchar_script_table): Extern it.
16190
16191 * character.c (Vscript_alist): Delete.
16192 (Vchar_script_table, Qchar_script_table): New variable.
16193 (syms_of_character): Declare Vchar_script_table as a lisp variable
16194 and initialize it.
16195
16196 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16197 have property char-table-extra-slots, make no extra slot.
16198
16199 * dispextern.h (struct face): Delete member `charset'.
16200 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16201 SINGLE_BYTE_CHAR_P.
16202 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16203 Add prototypes.
16204 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16205 (generate_ascii_font_name): Rename from generate_ascii_font.
16206
16207 * fontset.h (get_font_repertory_func): New prototype.
16208 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16209 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16210
16211 * fontset.c (Qprepend, Qappend): New variables.
16212 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16213 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16214 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16215 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16216 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16217 (load_font_get_repertory): New functions.
16218 (fontset_set): Delete.
16219 (fontset_face): New arg FACE. Return face ID, not face.
16220 Complete re-write to handle new fontset structure. Change caller.
16221 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16222 (face_for_char): Don't call lookup_face.
16223 (make_fontset_for_ascii_face): New arg FACE.
16224 (fs_load_font): New arg CHARSET_ID. Don't check
16225 Vfont_encoding_alist here.
16226 (find_font_encoding): New function.
16227 (list_fontsets): Use STRINGP, not ! NILP.
16228 (accumulate_script_ranges): New function.
16229 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16230 re-written to handle new fontset structure.
16231 (Ffontset_font): Return a copy of element.
16232 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16233 docstring of font-encoding-alist.
16234
16235 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16236 (Fset_fotset_font): Fix arguments to 5.
16237
16238 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16239
16240 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16241 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16242 (highlight_trailing_whitespace): Adjust for the change of
16243 lookup_named_face.
16244
16245 * xfaces.c: Include charset.h.
16246 (load_face_font): Delete argument C. Change caller.
16247 (generate_ascii_font_name): Rename from generate_ascii_font.
16248 (font_name_registry): New function.
16249 (cache_face): Store ascii faces before non-ascii faces in buckets.
16250 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16251 Lookup only ascii faces.
16252 (lookup_non_ascii_face): New function.
16253 (lookup_named_face): Delete argument C. Change caller.
16254 (lookup_derived_face): Delete argument C. Change caller.
16255 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16256 a string, just call font_list with it.
16257 (choose_face_font): Delete arguments FACE and C. New arg
16258 FONT_SPEC. Change caller.
16259 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16260 Change caller.
16261 (realize_non_ascii_face): New function.
16262 (realize_x_face): Call load_face_font here.
16263 (realize_tty_face): Delete argument C. Change caller.
16264 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16265 get a face ID.
16266 (dump_realized_face): Don't print charset of FACE.
16267
16268 * xfns.c (x_set_font): Always call x_new_fontset and
16269 store_frame_parameter.
16270 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16271 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16272
16273 * xterm.h (x_get_font_repertory): Extern it.
16274
16275 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16276 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16277 it->multibyte_p is zero.
16278 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16279 (x_new_fontset): If FONTSETNAME doesn't match any existing
16280 fontsets, create a new one.
16281 (x_get_font_repertory): New function.
16282
162832008-02-01 Kenichi Handa <handa@m17n.org>
16284
16285 * coding.c (Ffind_coding_systems_region_internal): Detect an
16286 ASCII only string correctly.
16287
16288 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16289 version is 0.
16290
162912008-02-01 Kenichi Handa <handa@m17n.org>
16292
16293 * lread.c: Include "coding.h".
16294 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16295 (load_each_byte, unread_char): New variables.
16296 (readchar_backlog): Delete.
16297 (readchar): Return a character unless load_each_byte is nonzero.
16298 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16299 cons. If unread_char is not -1, simply return it.
16300 (unreadchar): Handle the case that readcharfun is
16301 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16302 (read_multibyte): Delete.
16303 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16304 (read_emacs_mule_char): New functions.
16305 (Fload): Even if the file doesn't have the extension ".elc", if
16306 safe_to_load_p returns a positive version number, assume that the
16307 file contains bytecompiled code. If the version is less than 22,
16308 load the file while decoding multibyte sequences by emacs-mule.
16309 (readevalloop): Don't use readchar_backlog.
16310 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16311 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16312 (read_escape): Delete the arg BYTEREP.
16313 (read1): Set load_each_byte to 1 temporarily while handling
16314 #@NUMBER. Don't call read_multibyte.
16315 (read_vector): Call Fread with a cons. If readcharfun is
16316 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16317 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16318 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16319 and Qload_force_doc_strings.
16320
163212008-02-01 Kenichi Handa <handa@m17n.org>
16322
16323 * xdisp.c (face_before_or_after_it_pos): Call
16324 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16325
163262008-02-01 Kenichi Handa <handa@m17n.org>
16327
16328 * character.h (TRAILING_CODE_P): New macro.
16329 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16330 (string_char_with_unification): Fix prototype.
16331 (Vscript_alist): Extern it.
16332
16333 * character.c (Vscript_alist): New variable.
16334 (string_char_with_unification, str_as_unibyte)
16335 (string_escape_byte8): Add `const' to local variables.
16336 (syms_of_character): Declare script-alist as a Lisp variable.
16337
16338 * charset.h (Vcharset_ordered_list): Extern it.
16339 (charset_ordered_list_tick): Extern it.
16340 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16341 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16342 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16343 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16344 (Funify_charset): Adjust for the change of Funify_charset.
16345
16346 * charset.c (charset_ordered_list_tick): New variable.
16347 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16348 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16349 deunify intead of unify a charset.
16350 (string_xstring_p): Add `const' to local variables.
16351 (find_charsets_in_text): Add `const' to arguments and local variables.
16352 (encode_char): Adjust for the change of Funify_charset. Fix
16353 detecting of invalid code.
16354 (Fset_charset_priority): Increment charset_ordered_list_tick.
16355 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16356 and TO_CODE.
16357
16358 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16359 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16360 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16361 (decode_coding_ccl, consume_chars)
16362 (Ffind_coding_systems_region_internal)
16363 (Fcheck_coding_systems_region): Add `const' to local variables.
16364
16365 * print.c (print_object): Use octal form for printing the
16366 contents of a bool vector.
16367
163682008-02-01 Dave Love <fx@gnu.org>
16369
16370 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16371 <version == 20>: Refuse to load.
16372
163732008-02-01 Dave Love <fx@gnu.org>
16374
16375 * fns.c: Move coding.h.
16376 (Qcodeset, Qdays, Qmonths): New.
16377 (concat): Use CHARACTERP instead of INTEGERP.
16378 (Flocale_codeset): Delete.
16379 (Flanginfo): New function.
16380 (syms_of_fns): Change accordingly.
16381
16382 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16383
163842008-02-01 Dave Love <fx@gnu.org>
16385
16386 * casetab.c (init_casetab_once, init_casetab_once): Fix
16387 CHAR_TABLE_SET call.
16388
16389 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16390
16391 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16392
16393 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16394 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16395 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16396
16397 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16398
16399 * coding.c (ENCODE_DESIGNATION, decode_eol)
16400 (make_conversion_work_buffer, code_conversion_restore)
16401 (Fdefine_coding_system_internal): Convert Lisp types.
16402 (code_conversion_restore): Use EQ, not ==.
16403 (Fencode_coding_string): Fix code_convert_string call.
16404
16405 * coding.h (code_convert_region): Fix prototype.
16406
16407 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16408
16409 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16410 (Ffontset_info): Convert Lisp types.
16411
16412 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16413
16414 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16415
16416 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16417
16418 * chartab.c: Include "...h", not <...h> in some cases.
16419
16420 * callproc.c (Fcall_process): Remove unused variables.
16421
164222008-02-01 Dave Love <fx@gnu.org>
16423
16424 * coding.c (Fset_coding_system_priority): Allow null arg list.
16425
164262008-02-01 Dave Love <fx@gnu.org>
16427
16428 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16429 (Fself_insert_and_exit): Use CHARACTERP.
16430
16431 * callproc.c (Fcall_process): Remove unused vars.
16432
16433 * xterm.c (XTread_socket): Add extra dead keysyms.
16434
16435 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16436
16437 * dispextern.h: Remove prototypes for redraw_frame,
16438 redraw_garbaged_frames.
16439
16440 * cmds.c (Fself_insert_command): Use CHARACTERP.
16441
16442 * chartab.c (make_sub_char_table): Remove unused var.
16443 (Fset_char_table_default, Fmap_char_table): Doc fix.
16444
16445 * keymap.c (access_keymap): Remove generic char code.
16446 (push_key_description): Use CHARACTERP.
16447
164482008-02-01 Dave Love <fx@gnu.org>
16449
16450 * charset.c: Doc fixes.
16451 (Funify_charset): Extra checking.
16452
164532008-02-01 Dave Love <fx@gnu.org>
16454
16455 * lread.c: Remove some unused variables.
16456 (safe_to_load_p): If safe, return the magic number version byte.
16457 (Fload): Maybe use load-with-code-conversion.
16458
164592008-02-01 Kenichi Handa <handa@m17n.org>
16460
16461 * category.c (Fmodify_category_entry): Don't modify the contents
16462 of category_set for characters out of the range. Avoid
16463 unnecessary modification.
16464
16465 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16466 Vchar_unify_table. The default value of the table is now nil.
16467
16468 * character.c (syms_of_character): Setup Vchar_width_table for
16469 eight-bit-control and raw-byte chars.
16470
16471 * charset.h (enum define_charset_arg_index): Delete
16472 charset_arg_parents and add charset_arg_subset and
16473 charset_arg_superset.
16474 (enum charset_attr_index): Delete charset_parents and add
16475 charset_subset and charset_superset.
16476 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16477 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16478 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16479 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16480 (CHARSET_SUPERSET): New macros.
16481 (charset_work): Extern it.
16482 (ENCODE_CHAR): Use charset_work.
16483 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16484 (map_charset_chars): Extern it.
16485
16486 * charset.c (load_charset_map): Set the default value of encoder
16487 and deunifier char-tables to nil.
16488 (map_charset_chars): Change argument. Change callers. Use
16489 map_char_table_for_charset instead of map_char_table.
16490 (Fmap_charset_chars): New optional args from_code and to_code.
16491 (Fdefine_charset_internal): Adjust for the change of
16492 `define-charset' (:parents -> :subset or :superset).
16493 (charset_work): New variable.
16494 (encode_char, syms_of_charset): Adjust for the change of
16495 Fdefine_charset_internal.
16496 (Ffind_charset_string): Setup the vector `charsets' correctly.
16497
16498 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16499 the previous change.
16500 (char_table_ref_and_range): Adjust for the above change.
16501 (map_sub_char_table_for_charset): New function.
16502 (map_char_table_for_charset): New function.
16503
16504 * keymap.c (describe_vector): Handle a char-table directly here.
16505 (describe_char_table): Delete.
16506
16507 * lisp.h (map_charset_chars): Delete.
16508
165092008-02-01 Dave Love <fx@gnu.org>
16510
16511 * fns.c (count_combining): Comment out (unused).
16512 (Flocale_codeset): New.
16513 (syms_of_fns): Defsubr it.
16514
16515 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16516 (size_t): Remove.
16517
165182008-02-01 Dave Love <fx@gnu.org>
16519
16520 * Makefile.in (chartab.o): Depend on charset.h.
16521
165222008-02-01 Kenichi Handa <handa@m17n.org>
16523
16524 * character.c (syms_of_character): Set the default value of
16525 Vprintable_chars to Qnil.
16526
165272008-02-01 Dave Love <fx@gnu.org>
16528
16529 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16530
165312008-02-01 Kenichi Handa <handa@m17n.org>
16532
16533 * charset.c (load_charset_map): Handle the case that from < to
16534 correctly.
16535
16536 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16537 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16538 Pay attention to raw-8-bit chars.
16539
165402008-02-01 Kenichi Handa <handa@m17n.org>
16541
16542 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16543 It is not bytecompiled now.
16544
16545 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16546 (charset_jisx0208): New variables.
16547 (Fdefine_charset_internal): Setup them if appropriate.
16548 (init_charset_once): Initialize them to -1.
16549
16550 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16551 (charset_jisx0208): Extern them.
16552
16553 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16554 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16555 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16556 (setup_iso_safe_charsets): Fix arguments to Fassq.
16557 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16558 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16559 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16560 (encode_coding_iso_2022): Change the 1st arg to
16561 ENCODE_ISO_CHARACTER to a variable.
16562
165632008-02-01 Kenichi Handa <handa@m17n.org>
16564
16565 * charset.h (enum define_charset_arg_index): New enums
16566 charset_arg_min_code and charset_arg_max_code.
16567 (struct charset): New member char_index_offset.
16568
16569 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16570 Take charset->char_index_offset into account.
16571 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16572 args[charset_arg_max_code]. Setup charset.char_index_offset.
16573 (syms_of_charset): Fix args to Fdefine_charset_internal.
16574
165752008-02-01 Dave Love <fx@gnu.org>
16576
16577 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16578
165792008-02-01 Dave Love <fx@gnu.org>
16580
16581 * coding.c: Doc fixes.
16582 (Fcoding_system_aliases): Fix return value.
16583 (Qmac): Remove (duplicated) definition.
16584
165852008-02-01 Dave Love <fx@gnu.org>
16586
362654a6
JB
16587 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16588 New functions.
aac0c6e3
MR
16589
16590 * character.c (Fstring): Doc fix.
16591
16592 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16593
362654a6 16594 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16595 (font-encoding-alist): Doc fix.
16596
165972008-02-01 Dave Love <fx@gnu.org>
16598
16599 * term.c (costs_set): Declare static, non-initialized for pcc.
16600 (encode_terminal_code): Remove unused var.
16601
16602 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16603 for K&R.
16604
16605 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16606
16607 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16608 (suffixes): Move out of make_subsidiaries for K&R.
16609
16610 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16611
16612 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16613
166142008-02-01 Dave Love <fx@gnu.org>
16615
16616 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16617
16618 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16619
166202008-02-01 Yong Lu <lyongu@asia-infonet.com>
16621
16622 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16623
16624 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16625
166262008-02-01 Kenichi Handa <handa@m17n.org>
16627
16628 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16629 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16630
166312008-02-01 Kenichi Handa <handa@m17n.org>
16632
16633 * coding.c (decode_coding_charset): Adjust for the change of
16634 Fdefine_coding_system_internal.
16635 (Fdefine_coding_system_internal): For a coding system of
16636 `charset' type, store a list of charset IDs in
16637 `charset_attr_charset_valids' element of coding attributes.
16638
166392008-02-01 Kenichi Handa <handa@m17n.org>
16640
16641 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16642 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16643 caller. Handle 2-byte and 3-byte charsets correctly.
16644 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16645 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16646 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16647 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16648 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16649 sequence.
16650 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16651 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16652 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16653 and alt&rule composition.
16654 (decode_coding_iso_2022): Handle composition correctly.
16655 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16656
16657 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16658 re-defining a charset. If the charset has :emacs-mule-id, setup
16659 emacs_mule_bytes.
16660 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16661
166622008-02-01 Kenichi Handa <handa@m17n.org>
16663
16664 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16665 (encode_coding_big5, encode_coding_charset): If coding requires safe
16666 encoding, produce a character specified by
16667 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16668
166692008-02-01 Dave Love <fx@gnu.org>
16670
16671 * xterm.c (XSetIMValues): Declare.
16672
16673 * process.c: Conditionally include sys/wait.h, pty.h.
16674
16675 * print.c (print_object): Fix print format for 64-bit systems.
16676
16677 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16678
16679 * buffer.c (emacs_strerror): Declare.
16680
16681 * fontset.c (Fclear_face_cache): Declare.
16682 (accumulate_font_info): Comment-out (unused).
16683 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16684 variables.
16685
16686 * character.h (string_escape_byte8): Declare.
16687
16688 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16689 unused vars.
16690 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16691 (Fmap_charset_chars): Doc fix.
16692
16693 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16694 (Fset_coding_system_priority, Fset_coding_system_priority)
16695 (Fdefine_coding_system_internal): Doc fix.
16696
166972008-02-01 Dave Love <fx@gnu.org>
16698
16699 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16700
167012008-02-01 Kenichi Handa <handa@m17n.org>
16702
16703 * character.c (string_escape_byte8): Make multibyte string with
16704 correct size.
16705
16706 * charset.c (Fmake_char): Delete unnecessary code.
16707
167082008-02-01 Kenichi Handa <handa@m17n.org>
16709
16710 * xfns.c (x_encode_text): Allocate coding.destination here, and
16711 call encode_coding_object with dst_object Qnil.
16712
16713 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16714 multibyte form correctly.
16715
16716 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16717 against Vfont_encoding_alist.
16718
16719 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16720 handling of charset list.
16721 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16722 (decode_coding_object): Move point to coding->dst_pos before
16723 calling post-read-conversion function.
16724 (encode_coding_object): Give correct arguments to
16725 pre-write-conversion. Ignore the return value of
16726 pre-write-conversion function. Pay attention to the case that
16727 pre-write-conversion changes the current buffer. If dst_object is
16728 Qt, even if coding->src_bytes is zero, allocate at least one byte
16729 to coding->destination.
16730
16731 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16732
16733 * charset.c (Fmake_char): Make it more backward compatible.
16734 (Fmap_charset_chars): Fix docstring.
16735
167362008-02-01 Dave Love <fx@gnu.org>
16737
16738 * coding.c: Doc fixes.
16739 (Fdefine_coding_system_alias): Use names, not symbols, in
16740 coding-system-alist.
16741
167422008-02-01 Kenichi Handa <handa@m17n.org>
16743
16744 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16745 of calling free_realized_face.
16746
167472008-02-01 Yong Lu <lyongu@asia-infonet.com>
16748
16749 * charset.c (read_hex): Don't treat SPC as a comment starter.
16750 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16751 (Fdecode_char): Fix typo.
16752
167532008-02-01 Kenichi Handa <handa@m17n.org>
16754
16755 * charset.h (struct charset): New member `code_space_mask'.
16756
16757 * coding.c (coding_set_source): Delete the local variable beg_byte.
16758 (encode_coding_charset, Fdefine_coding_system_internal):
16759 Delete the local variable charset.
16760 (Fdefine_coding_system_internal): Setup
16761 attrs[coding_attr_charset_valids] correctly.
16762
16763 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16764 member to check if CODE is valid or not.
16765 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16766 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16767 is within the range of charset->min_code and carset->max_code.
16768
167692008-02-01 Dave Love <fx@gnu.org>
16770
16771 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16772
16773 * dispextern.h (generate_ascii_font): Fix return type.
16774
16775 * xfaces.c (generate_ascii_font): Fix arg declaration.
16776
16777 * coding.c (coding_inherit_eol_type)
16778 (Fset_terminal_coding_system_internal)
16779 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16780
167812008-02-01 Kenichi Handa <handa@m17n.org>
16782
16783 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16784 multiple charsets correctly.
16785
167862008-02-01 Kenichi Handa <handa@m17n.org>
16787
16788 * search.c (boyer_moore): Fix handling of multibyte character
16789 translation.
16790
16791 * xdisp.c (display_mode_element): When the variable `elt' is
16792 changed, update `this' and `lisp_string'.
16793
167942008-02-01 Kenichi Handa <handa@m17n.org>
16795
16796 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16797
16798 * callproc.c (Fcall_process): Be sure to give the current buffer
16799 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16800
16801 * charset.c (struct charset_map_entries): New struct.
16802 (load_charset_map): Rename from parse_charset_map. New args
16803 entries and n_entries. Change caller.
16804 (load_charset_map_from_file): Rename from load_charset_map.
16805 Change caller. New arg control_flag. Call load_charset_map at
16806 the tail.
16807 (load_charset_map_from_vector): New function.
16808 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16809 (encode_char): If the charset is compact, change a character index
16810 to a code point.
16811
16812 * coding.c (coding_alloc_by_making_gap): Check the case that the
16813 source and destination are the same correctly.
16814 (decode_coding_raw_text): Set coding->consumed_char and
16815 coding->consumed to 0.
16816 (produce_chars): If coding->chars_at_source is nonzero, update
16817 coding->consumed_char and coding->consumed before calling
16818 alloc_destination.
16819 (Fdefine_coding_system_alias): Register ALIAS in
16820 Vcoding_system_alist.
16821 (syms_of_coding): Define `no-conversion' coding system at the tail.
16822
16823 * fileio.c (Finsert_file_contents): Set coding_system instead of
16824 val. If the current buffer is multibyte, always call
16825 decode_coding_gap.
16826
16827 * xfaces.c (try_font_list): Give higher priority to fontset's
16828 family than face's family.
16829
168302008-02-01 Kenichi Handa <handa@m17n.org>
16831
16832 * callproc.c (Fcall_process): Be sure to give the current buffer
16833 to decode_coding_c_string.
16834
16835 * xfaces.c (try_font_list): Give a family specified in a fontset
16836 higher priority than a family specified in a face.
16837
168382008-02-01 Kenichi Handa <handa@m17n.org>
16839
16840 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16841 Fix arguments to insert_from_buffer.
16842
16843 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16844
168452008-02-01 Kenichi Handa <handa@m17n.org>
16846
16847 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16848 (decode_coding_gap): Set coding->dst_multibyte correctly.
16849
168502008-02-01 Kenichi Handa <handa@m17n.org>
16851
16852 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16853 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16854 (encode_coding_utf_16): Substitute coding->default_char for
16855 non-Unicode characters.
16856 (decode_coding): Don't call record_insert here.
16857 (setup_coding_system): Initialize `surrogate' of
16858 coding->spec.utf_16 to 0.
16859 (EMIT_ONE_BYTE): Fix for multibyte case.
16860
16861 * insdel.c (insert_from_gap): Call record_insert.
16862
168632008-02-01 Kenichi Handa <handa@m17n.org>
16864
16865 * casefiddle.c (casify_region): Fix multibyte case.
16866
16867 * character.c (c_string_width): Add return type `int'.
16868 (char_string_with_unification): Delete arg ADVANCED.
16869
16870 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16871 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16872 (CHAR_STRING_ADVANCE): Make it do-while statement.
16873
16874 * chartab.c (sub_char_table_set_range): Optimize for the case
16875 DEPTH == 3. Add workaround code for a GCC optimization bug.
16876
16877 * charset.c (parse_charset_map): Remove an unused variable.
16878
16879 * coding.c: Delete unused variables.
16880
16881 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16882 earlier. If inserted is zero and the coding system doesn't
16883 require flushing, don't call decode_coding_gap.
16884
16885 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16886
168872008-02-01 Kenichi Handa <handa@m17n.org>
16888
16889 The following changes are for using Unicode as an internal
16890 character model, and use UTF-8 format for buffer/string
16891 representation.
16892
16893 * .gdbinit (xchartable): Adjust for the change of char table structure.
16894 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16895
16896 * Makefile.in (obj): Add character.o and chartab.o.
16897 (lisp, shortlisp): Remove utf-8.elc.
16898 (*.o): For many files, change dependency on charset.h to
16899 character.h, and add dependency on character.h.
16900 (character.o, chartab.o): New targets.
16901
16902 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16903 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16904 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16905 of "charset.h".
16906
16907 * dired.c, filelock.c: Include "character.h".
16908
16909 * alloc.c: Include "character.h" instead of "charset.h".
16910 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16911 (syms_of_alloc): Remove defsubr for Smake_char_table.
16912
16913 * buffer.c: Include "character.h" instead of "charset.h", don't
16914 include "coding.h".
16915 (Fset_buffer_multibyte): Adjust for UTF-8.
16916
16917 * buffer.h: EXFUN Fbuffer_live_p.
16918
16919 * callproc.c: Include "character.h" instead of "charset.h".
16920 (Fcall_process): Big change for the new code-conversion APIs.
16921
16922 * casetab.c: Include "character.h" instead of "charset.h".
16923 (set_canon, set_identity, shuffle): Adjust for the new
16924 map_char_table spec.
16925 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16926 accessing the char table structure.
16927
16928 * chartab.c: New file that implements char table.
16929
16930 * category.c: Include "character.h".
16931 (copy_category_entry): New function.
16932 (copy_category_table): Call map_char_table and copy_category_entry.
16933 (Fmake_category_table): Initialize all top-level slots.
16934 (char_category_set): New function.
16935 (modify_lower_category_set): Delete.
16936 (Fmodify_category_entry): Call char_table_ref_and_range.
16937
16938 * category.h (CATEGORY_SET): Just call char_category_set.
16939
16940 * ccl.c: Include "character.h".
16941 (Qccl, Qcclp): New variables.
16942 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16943 it's less than 256.
16944 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16945 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16946 and DST type.
16947 (ccl_driver): Change types of argument, adjust code accordingly.
16948 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16949 ccl_driver.
16950 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16951
16952 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16953 New members src_multibyte, dst_multibyte, consumed, and produced.
16954 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16955 (CODING_SPEC_CCL_PROGRAM): New macro.
16956 (ccl_driver): Update prototype.
16957 (Qccl, Qcclp, Fccl_program_p): Extern them.
16958 (CHECK_CCL_PROGRAM): New macro.
16959
16960 * character.c, character.h, chartab.c: New files.
16961
16962 * charset.c: Mostly re-written. Move character and multibyte sequence
16963 handling codes to character.c.
16964
16965 * charset.h: Mostly re-written. Move character and multibyte sequence
16966 handling codes to character.h.
16967
16968 * coding.c, coding.h: Mostly re-written.
16969
16970 * composite.c: Include "character.h" instead of "charset.h".
16971 (CHAR_WIDTH): Move to character.h.
16972 (HASH_KEY, HASH_VALUE): Delete.
16973
16974 * composite.h (enum composition_method): Change order of enumeration
16975 symbols.
16976
16977 * data.c: Include "character.h" instead of "charset.h".
16978 (Faref): Call CHAR_TABLE_REF for a char table.
16979 (Faset): Call CHAR_TABLE_SET for a char table.
16980
16981 * dispextern.h (free_realized_face, check_face_attribytes)
16982 (generate_ascii_font): Extern them.
16983 (free_realized_multibyte_face): Delete extern.
16984
16985 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16986 table structure.
16987
16988 * editfns.c: Include "character.h" instead of "charset.h".
16989 (Fchar_to_string): Always call CHAR_STRING.
16990
16991 * emacs.c (main): Call init_charset_once, init_charset,
16992 syms_of_chartab, and syms_of_character.
16993
16994 * fileio.c: Include "character.h" instead of "charset.h".
16995 (Finsert_file_contents): Big change for the new code-conversion API.
16996 (choose_write_coding_system, Fwrite_region): Likewise.
16997 (build_annotations_2): Delete.
16998 (e_write): Big change for the new code-conversion API.
16999
17000 * fns.c: Include "character.h" instead of "charset.h".
17001 (copy_sub_char_table): Move to chartab.c.
17002 (Fcopy_sequence): Call copy_char_table for a char table.
17003 (concat): Delete codes calling count_multibyte.
17004 (string_char_to_byte, string_byte_to_char): Adjust for the new
17005 multibyte form.
17006 (internal_equal): Adjust for the change of char table structure.
17007 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17008 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17009 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17010 (char_table_translate, optimize_sub_char_table)
17011 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17012 chartab.c.
17013 (char_table_ref_and_index): Delete.
17014 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17015 (Fmd5): Call preferred_coding_system instead of accessing
17016 Vcoding_category_list. Adjust for the new code-conversion API.
17017 (syms_of_fns): Move defsubr for char table related functions to
17018 chartab.c.
17019
17020 * fontset.c: Mostly re-written.
17021
17022 * fontset.h (struct font_info): Change type of the member encoding_type.
17023 (enum FONT_SPEC_INDEX): New enum.
17024 (fontset_font_pattern, fs_load_font): Update prototype.
17025 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17026
17027 * indent.c: Include "character.h" instead of "charset.h".
17028 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17029
17030 * insdel.c: Include "character.h" instead of "charset.h".
17031 (copy_text): Don't refer to Vnonascii_translation_table.
17032 (insert_from_gap): New function.
17033
17034 * keyboard.c: Include "character.h" instead of "charset.h".
17035 (command_loop_1): Never call direct_output_forward_char before
17036 a non-ASCII character.
17037 (read_char): If Vkeyboard_translate_table is a char table, always
17038 translate a character.
17039
17040 * keymap.c: Include "character.h".
17041 (store_in_keymap): Handle the case that IDX is a cons.
17042 (Fdefine_key): Handle the case that KEY is a cons and the car part
17043 is also a cons (range).
17044 (push_key_description): Adjust for the new character code.
17045 (describe_vector): Call describe_char_table for a char table.
17046 (describe_char_table): New function.
17047
17048 * keymap.h (describe_char_table): Extern it.
17049
17050 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17051 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17052 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17053 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17054 Delete.
17055 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17056 structure.
17057 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17058 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17059 (CHARTAB_SIZE_BITS_3): New macros.
17060 (chartab_size): Extern it.
17061 (struct Lisp_Char_Table): Re-design.
17062 (struct Lisp_Sub_Char_Table): New structure.
17063 (HASH_KEY, HASH_VALUE): Move from fns.c.
17064 (CHARACTERBITS): Define as 22.
17065 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17066 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17067 (GC_SUB_CHAR_TABLE_P): New macro.
17068 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17069 (code_convert_string_norecord): Deleted extern.
17070 (init_character_once, syms_of_character, init_charset)
17071 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17072
17073 * lread.c: Include "character.h".
17074 (read_multibyte): New arg NBYTES.
17075 (read_escape): Change the meaning of returned *BYTEREP.
17076 (to_multibyte): Delete.
17077 (read1): Adjust the handling of char table and string.
17078
17079 * print.c: Include "character.h" instead of "charset.h".
17080 (print_string): Convert 8-bit raw bytes to octal form by
17081 string_escape_byte8.
17082 (print_object): Adjust for the new multibyte form. Print 8-bit
17083 raw bytes always in octal form. Handle sub char table correctly.
17084
17085 * process.c: Include "character.h" instead of "charset.h".
17086 (read_process_output, send_process): Adjust for the new
17087 code-conversion API.
17088
17089 * puresize.h (BASE_PURESIZE): Increase.
17090
17091 * regex.c: Include "character.h" instead of "charset.h".
17092 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17093 (regex_compile): Accept a range whose starting and ending
17094 character have different leading bytes.
17095 (analyse_first): Adjust for the above change.
17096
17097 * search.c: Include "character.h" instead of "charset.h".
17098 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17099 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17100
17101 * syntax.c: Include "character.h" instead of "charset.h".
17102 (syntax_parent_lookup): Delete.
17103 (Fmodify_syntax_entry): Accept a cons as CHAR.
17104 (skip_chars): Adjust for the new multibyte form.
17105 (init_syntax_once): Call char_table_set_range instead of directly
17106 accessing the structure of a char table.
17107
17108 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17109 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17110 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17111 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17112
17113 * term.c: Include "buffer.h" and "character.h".
17114 (encode_terminal_code, write_glyphs): Adjust for the new
17115 code-conversion API.
17116 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17117
17118 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17119
17120 * xdisp.c: Include "character.h".
17121 (get_next_display_element): Adjust for the new multibyte form.
17122 (disp_char_vector): Adjust for the new char table structure.
17123 (decode_mode_spec_coding): Adjust for the new structure of
17124 coding system.
17125 (decode_mode_spec): Adjust for the new code-conversion API.
17126
17127 * xfaces.c: Include "character.h" instead of "charset.h".
17128 (load_face_font): Adjust for the change of choose_face_font and
17129 FS_LOAD_FONT.
17130 (generate_ascii_font): New function.
17131 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17132 (set_font_frame_param): Adjust for the change of choose_face_font.
17133 (free_realized_face): Make it public.
17134 (free_realized_faces_for_fontset): Rename from
17135 free_realized_multibyte_face. Free also faces realized for ASCII.
17136 (choose_face_font): Change arguments. Adjust for the change of
17137 fontset_font_pattern and FS_LOAD_FONT.
17138
17139 * xfns.c: Include "character.h".
17140 (x_encode_text): Adjust for the new code-conversion API.
17141
17142 * xselect.c: Don't include "charset.h".
17143 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17144
17145 * xterm.c: Include "character.h".
17146 (x_encode_char): New argument CHARSET. Change caller.
17147 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17148 Call ENCODE_CHAR instead of SPLIT_CHAR.
17149 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17150 CHAR_WIDTH instead of CHARSET_WIDTH.
17151 (XTread_socket): Adjust for the new code-conversion API.
17152 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17153 (x_load_font): Adjust for the change of struct font.
17154
171552008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17156
17157 * xfaces.c (face_at_buffer_position): Remove unused vars.
17158
171592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17160
17161 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17162 Fix overflow checking.
17163
171642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17165
17166 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17167 Cancel previous change.
17168
171692008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17170
17171 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17172 ccl->eight_bit_control. Fix check for buffer overflow.
17173 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17174 (ccl_driver): Initialize extra_bytes to 0.
17175
171762008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17177
17178 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17179 return it ORed with ctrl_modifier.
17180
171812008-01-29 Miles Bader <miles@gnu.org>
17182
17183 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17184
171852008-01-28 Jason Rumney <jasonr@gnu.org>
17186
17187 * w32.c (stat): Don't double check for networked drive.
17188
171892008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17190
17191 * window.c (run_window_configuration_change_hook): New function.
17192 Code extracted from set_window_buffer. Set the selected frame.
17193 (set_window_buffer): Use it.
17194 * window.h (run_window_configuration_change_hook): Declare.
17195 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17196
17197 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17198
171992008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17200
17201 * Makefile.in: Remove references to unused macros.
17202
172032008-01-26 Eli Zaretskii <eliz@gnu.org>
17204
17205 * w32.c (g_b_init_get_sid_sub_authority)
17206 (g_b_init_get_sid_sub_authority_count): New static variables.
17207 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17208 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17209 (init_user_info): Use them to retrieve uid and gid.
17210 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17211 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17212 st_uid and st_gid of the file.
17213
172142008-01-26 Jason Rumney <jasonr@gnu.org>
17215
17216 * w32.c (logon_network_drive): New function.
17217 (stat): Use it.
17218
172192008-01-26 Chong Yidong <cyd@stupidchicken.com>
17220
17221 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17222 invisible text covered with an ellipsis.
17223
172242008-01-25 Richard Stallman <rms@gnu.org>
17225
17226 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17227 jump back to beginning. Move some other initializations after that.
17228 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17229 New variables.
17230 (syms_of_xdisp): Init them.
17231
17232 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17233
17234 * buffer.c (reset_buffer_local_variables):
17235 Implement `permanent-local-hook'.
17236 (Qpermanent_local_hook): New variable.
17237 (syms_of_buffer): Init and staticpro it.
17238
172392008-01-25 Michael Albinus <michael.albinus@gmx.de>
17240
17241 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17242
172432008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17244
17245 * fns.c (Fclrhash): Return TABLE.
17246
172472008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17248
17249 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17250 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17251 is set even without positional changes.
17252 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17253
17254 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17255
172562008-01-23 Jason Rumney <jasonr@gnu.org>
17257
17258 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17259
17260 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17261 the unicode range available in MULE by locale-coding-system.
17262 Improve dbcs lead byte detection. Set event timestamp and modifiers
17263 earlier.
17264
172652008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17266
17267 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17268 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17269 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17270 when used on child processes.
17271
172722008-01-21 Michael Albinus <michael.albinus@gmx.de>
17273
17274 * dbusbind.c (Fdbus_method_return_internal): Rename from
17275 Fdbus_method_return.
17276 (Fdbus_unregister_object): Move to dbus.el.
17277 (Fdbus_call_method, Fdbus_method_return_internal)
17278 (Fdbus_send_signal): Improve debug messages.
17279
172802008-01-20 Martin Rudalics <rudalics@gmx.at>
17281
17282 * undo.c (undo_inhibit_record_point): New variable.
17283 (syms_of_undo): Initialize it.
17284 (record_point): Don't record point when undo_inhibit_record_point
17285 is set.
17286
172872008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17288
17289 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17290
17291 * xdisp.c (Qauto_hscroll_mode): New var.
17292 (syms_of_xdisp): Initialize it.
17293 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17294 window's buffer.
17295 (hscroll_windows): Don't check automatic_hscrolling_p here.
17296
17297 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17298 vscroll if we're setting window-buffer to the value it already has.
17299
173002008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17301
17302 * m/intel386.h: Remove references to XENIX.
17303
173042008-01-17 Andreas Schwab <schwab@suse.de>
17305
17306 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17307 instead of HAVE_X86_64_LIB64_DIR.
17308 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17309
173102008-01-17 Glenn Morris <rgm@gnu.org>
17311
17312 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17313 to HAVE_X86_64_LIB64_DIR.
17314
173152008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17316
17317 * s/irix3-3.h:
17318 * s/irix4-0.h:
17319 * s/386-ix.h:
17320 * s/domain.h:
17321 * s/hpux9-x11r4.h:
17322 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17323
17324 * sysdep.c: Remove code containing references to symbols defined
17325 by unsupported systems.
17326
173272008-01-16 Glenn Morris <rgm@gnu.org>
17328
17329 * coding.c (select-safe-coding-system-function): Doc fix.
17330
173312008-01-15 Glenn Morris <rgm@gnu.org>
17332
17333 * config.in: Revert 2008-01-13 change: this is a generated file.
17334
173352008-01-13 Tom Tromey <tromey@redhat.com>
17336
17337 * lisp.h: Fix typo.
17338
173392008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17340
17341 * m/sequent-ptx.h:
17342 * m/sequent.h:
17343 * s/ptx.h:
17344 * s/ptx4-2.h:
17345 * s/ptx4.h: Remove files for systems no longer supported.
17346
17347 * callproc.c (Fcall_process): Fix previous change.
17348
173492008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17350
17351 * unexsunos4.c: Remove file, system not supported anymore.
17352
17353 * m/mips.h:
17354 * m/intel386.h:
17355 * callproc.c:
17356 * config.in:
17357 * ecrt0.c:
17358 * emacs.c:
17359 * fileio.c:
17360 * frame.c:
17361 * getpagesize.h:
17362 * keyboard.c:
17363 * lread.c:
17364 * process.c:
17365 * puresize.h:
17366 * sysdep.c:
17367 * systty.h:
17368 * syswait.h:
17369 * unexec.c:
17370 * xdisp.c:
17371 * alloc.c: Remove code containing references to symbols defined by
17372 unsupported systems.
17373
173742008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17375
17376 * coding.c (detect_coding_mask): Fix previous change.
17377
173782008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17379
17380 * coding.c (detect_coding_iso2022): New arg
17381 latin_extra_code_state. Allow Latin extra codes only
17382 when *latin_extra_code_state is nonzero.
17383 (detect_coding_mask): If there is a NULL byte, detect the encoding
17384 as UTF-16 or binary. If Latin extra codes exist, detect the
17385 encoding as ISO-2022 only when there's no other proper encoding is
17386 found.
17387
173882008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17389
17390 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17391 #ifdef MAC_OS.
17392
173932008-01-08 Richard Stallman <rms@gnu.org>
17394
17395 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17396
173972008-01-06 Nick Roberts <nickrob@snap.net.nz>
17398
17399 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17400 menu bar in parentheses.
17401
174022008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17403
17404 * m/7300.h:
17405 * m/acorn.h:
17406 * m/alliant-2800.h:
17407 * m/alliant.h:
17408 * m/alliant1.h:
17409 * m/alliant4.h:
17410 * m/altos.h:
17411 * m/amdahl.h:
17412 * m/apollo.h:
17413 * m/att3b.h:
17414 * m/aviion-intel.h:
17415 * m/aviion.h:
17416 * m/celerity.h:
17417 * m/clipper.h:
17418 * m/cnvrgnt.h:
17419 * m/convex.h:
17420 * m/cydra5.h:
17421 * m/delta88k.h:
17422 * m/dpx2.h:
17423 * m/dual.h:
17424 * m/elxsi.h:
17425 * m/f301.h:
17426 * m/gould-np1.h:
17427 * m/gould.h:
17428 * m/i860.h:
17429 * m/ibmps2-aix.h:
17430 * m/ibmrt-aix.h:
17431 * m/ibmrt.h:
17432 * m/irist.h:
17433 * m/is386.h:
17434 * m/isi-ov.h:
17435 * m/mega68.h:
17436 * m/mg1.h:
17437 * m/news-r6.h:
17438 * m/news-risc.h:
17439 * m/news.h:
17440 * m/nh3000.h:
17441 * m/nh4000.h:
17442 * m/ns16000.h:
17443 * m/ns32000.h:
17444 * m/nu.h:
17445 * m/orion.h:
17446 * m/orion105.h:
17447 * m/paragon.h:
17448 * m/pfa50.h:
17449 * m/plexus.h:
17450 * m/pyramid.h:
17451 * m/pyrmips.h:
17452 * m/sh3el.h:
17453 * m/sps7.h:
17454 * m/sr2k.h:
17455 * m/stride.h:
17456 * m/sun1.h:
17457 * m/sun2.h:
17458 * m/sun3-68881.h:
17459 * m/sun3-fpa.h:
17460 * m/sun3-soft.h:
17461 * m/sun3.h:
17462 * m/sun386.h:
17463 * m/symmetry.h:
17464 * m/tad68k.h:
17465 * m/tahoe.h:
17466 * m/targon31.h:
17467 * m/tek4300.h:
17468 * m/tekxd88.h:
17469 * m/tower32.h:
17470 * m/tower32v3.h:
17471 * m/ustation.h:
17472 * m/wicat.h:
17473 * m/xps100.h:
17474 * s/cxux.h:
17475 * s/cxux7.h:
17476 * s/dgux.h:
17477 * s/dgux4.h:
17478 * s/dgux5-4-3.h:
17479 * s/dgux5-4r2.h:
17480 * s/esix.h:
17481 * s/esix5r4.h:
17482 * s/hiuxmpp.h:
17483 * s/hiuxwe2.h:
17484 * s/iris3-5.h:
17485 * s/iris3-6.h:
17486 * s/isc2-2.h:
17487 * s/isc3-0.h:
17488 * s/isc4-0.h:
17489 * s/isc4-1.h:
17490 * s/newsos5.h:
17491 * s/newsos6.h:
17492 * s/osf1.h:
17493 * s/osf5-0.h:
17494 * s/riscix1-1.h:
17495 * s/riscix12.h:
17496 * s/sco4.h:
17497 * s/sco5.h:
17498 * s/sunos4-0.h:
17499 * s/sunos4-1.h:
17500 * s/sunos413.h:
17501 * s/sunos4shr.h:
17502 * s/umax.h:
17503 * s/unipl5-2.h:
17504 * s/xenix.h:
17505 * cxux-crt0.s:
17506 * unexapollo.c:
17507 * unexconvex.c:
17508 * unexenix.c:
17509 * unexsni.c: Remove files for systems no longer supported.
17510
17511 * m/intel386.h: Remove references to unsupported systems.
17512
17513 * w32.c (get_emacs_configuration): Remove reference to i860.
17514
17515 * sysdep.c: Remove dead code.
17516
175172008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17518
17519 * s/rtu.h:
17520 * m/masscomp.h: Remove files. Platform is obsolete.
17521
175222008-01-04 Michael Albinus <michael.albinus@gmx.de>
17523
17524 * dbusbind.c (Fdbus_method_return): New function.
17525 (xd_read_message): Add the serial number to the event.
17526 (Fdbus_register_method): Activate the function.
17527
175282008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17529
17530 * keyboard.c (read_key_sequence): Fix typo.
17531
175322008-01-03 Michael Albinus <michael.albinus@gmx.de>
17533
17534 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17535 (xd_signature, xd_append_arg): Handle element type detection for
17536 empty arrays.
17537 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17538 SDATA () calls; this must be solved more general.
17539 (Fdbus_register_signal): Use SBYTES instead of strlen.
17540
175412008-01-03 Magnus Henoch <magnus@zemdatav>
17542
17543 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17544 unsigned int for byte values (necessary for big-endian platform).
17545 (Fdbus_call_method): Handle the case of no returned arguments.
17546
175472007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17548
17549 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17550
175512007-12-31 Magnus Henoch <mange@freemail.hu>
17552
17553 * dbusbind.c (xd_signature): Signature of variant is just "v".
17554
175552007-12-30 Michael Albinus <michael.albinus@gmx.de>
17556
17557 * dbusbind.c: Fix several errors and compiler warnings.
17558 Reported by Tom Tromey <tromey@redhat.com>.
17559 (XD_ERROR, XD_DEBUG_MESSAGE)
17560 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17561 (xd_append_arg): Part for basic D-Bus types rewritten.
17562 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17563 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17564 appropriate.
17565 (xd_read_message): Return Qnil. Don't signal an error; it is not
17566 useful during event reading.
17567 (Fdbus_register_signal): Signal an error if the check for
17568 FUNCTIONP fails.
17569 (Fdbus_register_method): New function. The implementation is not
17570 complete, the call of the function signals an error therefore.
17571 (Fdbus_unregister_object): New function, renamed from
17572 Fdbus_unregister_signal. The initial check signals an error, if
17573 the object is not well formed.
17574
175752007-12-30 Richard Stallman <rms@gnu.org>
17576
17577 * textprop.c (get_char_property_and_overlay):
17578 Signal error if POSITION is out of range in a buffer.
17579
175802007-12-29 Martin Rudalics <rudalics@gmx.at>
17581
17582 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17583 because the original parameters are in pure storage now.
17584
175852007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17586
17587 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17588
175892007-12-22 Eli Zaretskii <eliz@gnu.org>
17590
17591 * callint.c (syms_of_callint) <command-history>: Add reference to
17592 history-length in the doc string.
17593
175942007-12-17 Jason Rumney <jasonr@gnu.org>
17595
17596 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17597 before passing as wParam.
17598
175992007-12-22 Michael Albinus <michael.albinus@gmx.de>
17600
17601 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17602 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17603 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17604 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17605 as number.
17606 (Fdbus_call_method): Fix docstring.
17607
176082007-12-21 Michael Albinus <michael.albinus@gmx.de>
17609
17610 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17611 New macros.
17612 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17613 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17614 Simplify.
17615 (xd_signature): New function.
17616 (xd_append_arg): Compute also signatures. Major rewrite.
17617 (xd_retrieve_arg): Make debug messages friendly.
17618 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17619 Check for signatures of arguments.
17620
176212007-12-19 Michael Albinus <michael.albinus@gmx.de>
17622
17623 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17624 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17625 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17626 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17627 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17628 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17629 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17630 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17631 (xd_retrieve_value): Remove. Functionality included in ...
17632 (xd_append_arg): New function.
17633 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17634
176352007-12-16 Michael Albinus <michael.albinus@gmx.de>
17636
17637 * dbusbind.c (top): Include <stdio.h>.
17638 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17639 dbus_message_new_method_call and dbus_message_new_signal.
17640 (Fdbus_register_signal): Rename unique_name to uname.
17641 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17642 non-existing unique name. Fix typos in matching rule. Return an
17643 object which is useful in Fdbus_unregister_signal.
17644 (Fdbus_unregister_signal): Reimplementation, in order to remove
17645 only the corresponding entry.
17646 (Vdbus_registered_functions_table): Change the order of entries.
17647 Apply these changes in xd_read_message and Fdbus_register_signal.
17648
176492007-12-16 Andreas Schwab <schwab@suse.de>
17650
17651 * fileio.c (Finsert_file_contents): Fix overflow check to not
17652 depend on undefined integer overflow.
17653
176542007-12-14 Jason Rumney <jasonr@gnu.org>
17655
17656 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17657 for characters above 127.
17658
176592007-12-13 Jason Rumney <jasonr@gnu.org>
17660
17661 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17662 before dereferencing array.
17663 (lookup_vk_code): Remove zero comparison.
17664
176652007-12-14 Michael Albinus <michael.albinus@gmx.de>
17666
17667 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17668 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17669 Use `unsigned int' instead of `uint'.
17670 (xd_read_message, Fdbus_register_signal): Split expressions into
17671 multiple lines before operators "&&" and "||", according to the
17672 GNU Coding Standards.
17673
176742007-12-14 Eli Zaretskii <eliz@gnu.org>
17675
17676 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17677
176782007-12-12 Juri Linkov <juri@jurta.org>
17679
17680 * buffer.c (Frename_buffer): In interactive spec replace
17681 `read-buffer' with `read-string' that uses `buffer-name-history'
17682 as history, and the current buffer's name as default.
17683
176842007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17685
17686 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17687 manipulating the backtrace manually.
17688 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17689 (struct backtrace, backtrace_list): Remove.
17690 (command_loop_1): Remove dead var `no_direct'.
17691
17692 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17693 preserve non-built-in buffer-local variables.
17694 (Fkill_all_local_variables): Don't re-create&re-set permanent
17695 buffer-local variables.
17696
176972007-12-09 Juri Linkov <juri@jurta.org>
17698
17699 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17700 Lisp code that uses `read-buffer' with current buffer as default.
17701
177022007-12-08 Michael Albinus <michael.albinus@gmx.de>
17703
17704 * dbusbind.c (xd_read_message): Generate an event for every
17705 registered handler. There might be several handlers registered
17706 for the same signal.
17707 (Fdbus_register_signal): Don't overwrite a registration for the
17708 same signal. Add a new registration if handlers are different.
17709 (Vdbus_registered_functions_table): Rework doc string.
17710
177112007-12-07 Michael Albinus <michael.albinus@gmx.de>
17712
17713 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17714 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17715 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17716 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17717 Unify argument lists.
17718 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17719 arguments and hash table keys. Use unique name for service.
17720 (Fdbus_unregister_signal): Remove checks.
17721 (Vdbus_registered_functions_table): Fix doc string.
17722
177232007-12-05 Magnus Henoch <mange@freemail.hu>
17724
17725 * process.c (make_process): Initialize pty_flag to 0.
17726
177272007-12-05 Jason Rumney <jasonr@gnu.org>
17728
17729 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17730 specified XBMs.
17731
177322007-12-05 Richard Stallman <rms@gnu.org>
17733
17734 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17735
177362007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17737
17738 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17739 New variable.
17740 (mac_try_close_socket) [MAC_OSX]: New function.
17741 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17742 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17743
17744 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17745 Use mac_try_close_socket.
17746
177472007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17748
17749 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17750 reloc_base.
17751 (copy_dysymtab): Compute relocation base here.
17752 (rebase_reloc_address) [__ppc64__]: New function.
17753 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17754 changed.
17755
177562007-12-05 Jason Rumney <jasonr@gnu.org>
17757
17758 * w32proc.c (sys_spawnve): Quote args with wildcards.
17759
177602007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17761
17762 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17763 __objc_* sections.
17764 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17765
177662007-12-05 Michael Albinus <michael.albinus@gmx.de>
17767
17768 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17769 Move check for Vdbus_registered_functions_table to
17770 xd_read_queued_messages.
17771 (xd_read_queued_messages): Protect xd_read_message calls by
17772 internal_condition_case_1.
17773
177742007-12-04 Michael Albinus <michael.albinus@gmx.de>
17775
17776 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17777 Qdbus_system_bus and Qdbus_session_bus, respectively.
17778 (Vdbus_intern_symbols): Remove.
17779 (Vdbus_registered_functions_table): New hash table.
17780 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17781 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17782 Rewrite in order to manage registered functions by hash table
17783 Vdbus_registered_functions_table.
17784
177852007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17786
17787 * xterm.c: Update URL to Window Manager Specification in comment.
17788
177892007-12-02 Michael Albinus <michael.albinus@gmx.de>
17790
17791 * config.in (HAVE_DBUS): Add.
17792
17793 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17794 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17795 (obj): Add $(DBUS_OBJ).
17796 (LIBES): Add $(DBUS_LIBS).
17797 (dbusbind.o): New target.
17798
17799 * dbusbind.c: New file.
17800
17801 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17802
17803 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17804 (Qdbus_event): New Lisp symbol.
17805 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17806 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17807 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17808
17809 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17810
178112007-12-01 Richard Stallman <rms@gnu.org>
17812
17813 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17814
178152007-11-30 Jason Rumney <jasonr@gnu.org>
17816
17817 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17818 (w32con_reset_terminal_modes): Clear screen buffer.
17819 (w32_face_attributes): Don't use color indexes that are out of range.
17820 Only reverse the default colors.
17821
17822 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17823 WINDOWSNT.
17824
17825 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17826
178272007-11-29 Jason Rumney <jasonr@gnu.org>
17828
17829 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17830 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17831 if the terminal colors are initialized.
17832 (unspecified_fg, unspecified_bg): Remove unused declarations.
17833
178342007-11-29 Andreas Schwab <schwab@suse.de>
17835
17836 * keyboard.c (apply_modifiers): Fix typo.
17837
178382007-11-29 Richard Stallman <rms@gnu.org>
17839
17840 * keymap.c (Fcurrent_local_map): Doc fix.
17841
178422007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17843
17844 * s/gnu-kfreebsd.h: New file.
17845
178462007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17847
17848 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17849 Don't cast redundantly.
17850
17851 * keyboard.c (KEY_TO_CHAR): New macro.
17852 (parse_modifiers, apply_modifiers): Accept integer arguments.
17853 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17854 for chars and symbol keys.
17855 After doing such remapping, apply function-key-map again.
17856
178572007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17858
17859 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17860 compiled anymore.
17861
178622007-11-26 Andreas Schwab <schwab@suse.de>
17863
17864 * process.c (list_processes_1): Fix indentation level of the
17865 command column.
17866
178672007-11-23 Andreas Schwab <schwab@suse.de>
17868
17869 * editfns.c (Fformat): Handle %c specially since it requires the
17870 argument to be of type int.
17871
178722007-11-23 Markus Triska <markus.triska@gmx.at>
17873
17874 * emacs.c (main): Call init_editfns before init_process, since
17875 init_process sets Vprocess_connection_type depending on OS release.
17876
178772007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17878
17879 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17880 (find_symbol_value): Use do_symval_forwarding.
17881
17882 * data.c (set_internal): Set the value in the `cons-cell' (for
17883 Buffer_Local_values) not only for frame-local variables.
17884
178852007-11-22 Andreas Schwab <schwab@suse.de>
17886
17887 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17888 values to sprintf.
17889 * keymap.c (Fsingle_key_description): Likewise.
17890 * print.c (print_object): Likewise.
17891
178922007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17893
17894 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17895 file for image is nil.
17896
178972007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17898
17899 * term.c: Include stdarg.h.
17900 (fatal): Implement using varargs.
17901 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17902
179032007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17904
17905 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17906 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17907 Update call to buffer_slot_type_mismatch.
17908 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17909 (buffer_slot_type_mismatch): Update.
17910 * buffer.c (buffer_local_types): Remove.
17911 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17912 (defvar_per_buffer): Set the type in the buffer_objfwd.
17913
179142007-11-21 Jason Rumney <jasonr@gnu.org>
17915
17916 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17917 CreateFileMapping returns NULL on failure.
17918
179192007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17920
17921 * search.c (Fset_match_data): Remove the `evaporate' feature.
17922 (unwind_set_match_data): Don't use the `evaporate' feature.
17923
179242007-11-21 Jason Rumney <jasonr@gnu.org>
17925
17926 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17927
17928 * w32console.c (w32con_write_glyphs): Remove unused variables.
17929
179302007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17931
17932 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17933
17934 * s/darwin.h (MULTI_KBOARD): Remove.
17935
17936 * macfns.c (x_create_tip_frame, Fx_create_frame)
17937 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17938
179392007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17940
17941 * buffer.c (Fbuffer_local_value): Remove redundant test.
17942 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17943 than in `current-buffer' to match the comment.
17944 Do the swap using swap_in_global_binding.
17945
17946 * data.c (store_symval_forwarding, set_internal):
17947 * eval.c (specbind): Remove dead code.
17948
17949 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17950 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17951 Since we do not want to see internal Lisp_*fwd objects here.
17952
179532007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17954
17955 * sysdep.c (init_system_name): Use getaddrinfo if available.
17956
17957 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17958 (x_scroll_bar_note_movement): start, end, with, height in struct
17959 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17960
179612007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17962
17963 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17964
179652007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17966
17967 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17968 This undoes Richard's change of 14-Oct-2002.
17969
17970 * alloc.c (allocate_other_vector):
17971 * lisp.h (allocate_other_vector): Remove.
17972
17973 * window.c (struct save_window_data): Move non-lisp data to the end
17974 and make it `int' rather than Lisp_Object.
17975 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17976 Done wrap/unwrap integer values.
17977 (Fset_window_configuration, compare_window_configurations):
17978 Update use of fields to their new types.
17979
17980 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17981 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17982 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17983 (SET_SCROLL_BAR_X_WINDOW): Remove.
17984 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17985 Access the new x_window field directly.
17986 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17987 Don't wrap/unwrap integers into Lisp_Objects.
17988 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17989 (x_scroll_bar_report_motion):
17990 Don't wrap/unwrap integers into Lisp_Objects.
17991 (x_term_init): Use SDATA.
17992 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17993 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17994 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17995 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17996 * xfns.c (x_set_background_color):
17997 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17998 Access the new x_window field directly.
17999
18000 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18001 (allocate_pseudovector): Make non-static.
18002
18003 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18004 (allocate_pseudovector): Declare.
18005 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18006
180072007-11-15 Andreas Schwab <schwab@suse.de>
18008
18009 * editfns.c (Fformat): Correctly format EMACS_INT values.
18010 Also take precision into account when formatting an integer.
18011
18012 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18013
180142007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18015
18016 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18017 (syms_of_keyboard): Defsubr it.
18018
18019 * data.c (swap_in_global_binding): Fix longstanding bug where
18020 store_symval_forwarding was not called with the right second argument,
18021 thus causing objfwd-ing from being dropped.
18022
180232007-11-14 Juanma Barranquero <lekktu@gmail.com>
18024
18025 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18026 (Fx_display_pixel_height, Fx_display_planes)
18027 (Fx_display_color_cells, Fx_server_max_request_size)
18028 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18029 (Fx_display_visual_class, Fx_display_save_under):
18030 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18031 (Fx_display_pixel_height, Fx_display_planes)
18032 (Fx_display_color_cells, Fx_server_max_request_size)
18033 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18034 (Fx_display_mm_height, Fx_display_mm_width)
18035 (Fx_display_backing_store, Fx_display_visual_class)
18036 (Fw32_select_font, Fx_display_save_under):
18037 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18038 (Fx_display_pixel_height, Fx_display_planes)
18039 (Fx_display_color_cells, Fx_server_max_request_size)
18040 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18041 (Fx_display_save_under): Fix typos in docstrings.
18042
180432007-11-14 Juanma Barranquero <lekktu@gmail.com>
18044
18045 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18046 corresponding to deleted entries; they are an implementation detail.
18047 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18048 Remove variables.
18049 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18050 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18051 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18052 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18053 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18054 (Fw32_define_rgb_color, Fw32_load_color_file)
18055 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18056 Fix typos in docstrings.
18057 (Fx_server_version): Reflow docstring.
18058 (Fw32_shell_execute): Doc fixes.
18059
180602007-11-13 Juanma Barranquero <lekktu@gmail.com>
18061
18062 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18063 if w32_parse_hot_key returned nil.
18064
180652007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18066
18067 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18068
180692007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18070
aac0c6e3
MR
18071 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18072
18073 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18074
18075 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18076 Remove W32_SCROLL_BAR_CLICK_EVENT.
18077
18078 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18079 Add MULTIMEDIA_KEY_EVENT.
18080
18081 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18082 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18083 (make_lispy_event) [WINDOWSNT]: Use it to translate
18084 MULTIMEDIA_KEY_EVENT.
18085
18086 * w32term.h (WM_APPCOMMAND): Define if not already.
18087 (GET_APPCOMMAND_LPARAM): Likewise.
18088
18089 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18090 WM_APPCOMMAND.
18091
18092 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18093 (syms_of_w32fns): Export and initialize it.
18094 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18095
180962007-11-09 Chong Yidong <cyd@stupidchicken.com>
18097
18098 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18099 twice.
18100
18101 * xdisp.c (handle_face_prop): Fix last change.
18102
181032007-11-09 Richard Stallman <rms@gnu.org>
18104
18105 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18106 not just for after-strings and before-strings.
18107 Call face_for_overlay_string and pass the overlay to it.
18108 (handle_display_prop): Determine whether property came from an overlay.
18109 Pass OVERLAY arg to handle_single_display_spec.
18110 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18111 (load_overlay_strings): Fill in it->string_overlays.
18112 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18113
18114 * xfaces.c (face_for_overlay_string): Function renamed from
18115 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18116
18117 * dispextern.h (struct it): New elt string_overlays.
18118 New elt from_overlay, also in stack.
18119 Rearrange a few elements.
18120 (face_for_overlay_string): Decl renamed from
18121 face_at_buffer_position_no_overlays, and add argument.
18122
181232007-11-09 Richard Stallman <rms@gnu.org>
18124
18125 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18126 to get the base face for an overlay string.
18127
18128 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18129
18130 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18131
18132 * xdisp.c (handle_stop): Move some code out of loop.
18133
181342007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18135
18136 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18137 Fix conversion from Lisp object to ATSUFontID.
18138
181392007-11-09 Jason Rumney <jasonr@gnu.org>
18140
18141 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18142
181432007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18144
18145 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18146 Don't assume regions are aligned to page boundary.
18147 (print_load_command_name): Add LC_UUID if defined.
18148
181492007-11-09 Richard Stallman <rms@gnu.org>
18150
18151 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18152
181532007-11-07 Jason Rumney <jasonr@gnu.org>
18154
18155 * s/windows95.h: Remove.
18156
181572007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18158
18159 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18160 abort with a message on unhandled store_type values.
18161
181622007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18163
18164 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18165 Remove HAVE_X11R5 and HAVE_X11R4.
18166
181672007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18168
18169 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18170
181712007-11-01 Johan Bockgård <bojohan@gnu.org>
18172
18173 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18174 Don't set s->stippled_p here, since it has already been set by
18175 x_set_glyph_string_gc from x_draw_glyph_string.
18176
181772007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18178
18179 * sunfns.c: Remove file.
18180
18181 * m/sun386.h:
18182 * m/sun2.h:
18183 * m/sparc.h: Remove Sun windows code.
18184
181852007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18186
18187 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18188 (init_keyboard): Set current_kboard's window-system to nil.
18189 (tty_read_avail_input): Typo.
18190 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18191
181922007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18193
18194 * s/usg5-4.h:
18195 * s/usg5-3.h:
18196 * s/ptx.h:
18197 * m/is386.h:
18198 * m/ibmps2-aix.h:
18199 * Makefile.in: Remove all mentions of X10.
18200
18201 * dispnew.c (syms_of_display): Don't mention version 10.
18202
182032007-10-28 Juanma Barranquero <lekktu@gmail.com>
18204
18205 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18206 ($(BLD)/abbrev.$(O)): Remove.
18207
182082007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18209
18210 Rewrite abbrev.c in Elisp.
18211 * image.c (Qcount): Don't declare as extern.
18212 (syms_of_image): Initialize and staticpro `Qcount'.
18213 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18214 * emacs.c (main): Don't call syms_of_abbrev.
18215 * Makefile.in (obj): Remove abbrev.o.
18216 (abbrev.o): Remove.
18217 * abbrev.c: Remove.
18218
182192007-10-26 Martin Rudalics <rudalics@gmx.at>
18220
18221 * window.c (window_min_size_2): Don't count header-line.
18222
182232007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18224
18225 * frame.h (struct frame): Move all bit fields after the first bit
18226 field to take advantage of the available space. Group all the
18227 chars together to reduce wasted space due to padding.
18228
182292007-10-26 Juanma Barranquero <lekktu@gmail.com>
18230
18231 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18232
18233 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18234 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18235 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18236 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18237 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18238 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18239 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18240 (last_marked, mark_object_loop_halt): Make static.
18241
18242 * frame.c (syms_of_frame) <delete-frame-functions>:
18243 Fix typo in docstring.
18244
182452007-10-25 Juanma Barranquero <lekktu@gmail.com>
18246
18247 * w32.c (init_environment): Fix tiny memory leak.
18248 (w32_get_resource): Remove unused variable `ok'.
18249
182502007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18251
18252 Make `window-system' into a keyboard-local variable (rather than
18253 frame-local as done originally by multi-tty).
18254
18255 * keyboard.h (struct kboard): Add Vwindow_system.
18256 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18257 (mark_kboards): Mark Vwindow_system.
18258
18259 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18260 (init_display): Don't set the obsolete `window-system' frame-param.
18261
18262 * xterm.c (x_term_init):
18263 * w32term.c (w32_create_terminal):
18264 * term.c (init_tty): Set Vwindow_system.
18265 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18266 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18267
18268 * xfns.c (Fx_create_frame, x_create_tip_frame):
18269 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18270 * macfns.c (Fx_create_frame):
18271 Don't set the obsolete `window-system' frame-param.
18272
18273 * frame.h (Qwindow_system): Remove.
18274 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18275 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18276
182772007-10-24 Richard Stallman <rms@gnu.org>
18278
18279 * frame.c (x_figure_window_size): For fullscreen case,
18280 set USPosition | PPosition without clobbering rest of window_prompting.
18281
18282 * keyboard.c (Fcurrent_idle_time): Doc fix.
18283
18284 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18285
182862007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18287
18288 * process.c (unwind_request_sigio): Only define if __ultrix__.
18289
18290 * callproc.c (child_setup): Remove spurious *.
18291
18292 * lisp.h (Fget_text_property): Declare.
18293 (have_menus_p): Declare it here rather than in sys-dep header files.
18294 * macterm.h (have_menus_p):
18295 * msdos.h (have_menus_p):
18296 * xterm.h (have_menus_p): Remove.
18297
18298 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18299 (Fmake_variable_frame_local): Just check the variable's const-ness
18300 rather than checking nil or t.
18301
183022007-10-22 Jason Rumney <jasonr@gnu.org>
18303
18304 * w32fns.c: Include math.h.
18305 (w32_abort): Declaration moved to nt/config.nt.
18306
18307 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18308 (abort): Redefinition moved to nt/config.nt.
18309
18310 * m/windowsnt.h: Remove.
18311
183122007-10-22 Juanma Barranquero <lekktu@gmail.com>
18313
18314 * emacs.c (Fdump_emacs): Fix typo in message.
18315 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18316 <installation-directory>: Reflow docstring.
18317
183182007-10-22 Juri Linkov <juri@jurta.org>
18319
18320 * minibuf.c: Allow minibuffer default to be a list of default values.
18321 With empty input use the first element of this list as returned default.
18322 (string_to_object)
18323 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18324 (read_minibuf): If defalt is cons, set histstring to its car.
18325 (Fread_string): If default_value is cons, set val to its car.
18326 (Fread_buffer): If def is cons, use its car.
18327 (Fcompleting_read): If defalt is cons, set val to its car.
18328
183292007-10-21 Michael Albinus <michael.albinus@gmx.de>
18330
18331 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18332
183332007-10-20 Juanma Barranquero <lekktu@gmail.com>
18334
18335 * doc.c (Fdocumentation): Check for advice in all cases.
18336
183372007-10-19 Chong Yidong <cyd@stupidchicken.com>
18338
18339 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18340
183412007-10-19 Richard Stallman <rms@gnu.org>
18342
18343 * doc.c (Fdocumentation): Check for and handle an advised function.
18344
183452007-10-19 Juanma Barranquero <lekktu@gmail.com>
18346
18347 * process.c (Fset_process_filter): Doc fix.
18348
183492007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18350
18351 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18352 which caused key-translation-map to applied repeatedly (thus breaking
18353 double-mode).
18354
183552007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18356
18357 * xselect.c (x_own_selection, x_handle_selection_clear)
18358 (x_clear_frame_selections):
18359 * w32menu.c (list_of_panes, list_of_items):
18360 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18361 * textprop.c (validate_plist, interval_has_all_properties)
18362 (interval_has_some_properties, interval_has_some_properties_list)
18363 (add_properties, text_property_list):
18364 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18365 * minibuf.c (Fassoc_string):
18366 * macselect.c (x_own_selection, x_clear_frame_selections)
18367 (Fx_disown_selection_internal):
18368 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18369 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18370
183712007-10-17 Chong Yidong <cyd@stupidchicken.com>
18372
18373 * process.c: Link to libs for calling res_init() if available.
18374 (Fmake_network_process): Call res_init() before getaddrinfo or
18375 gethostbyname, if possible.
18376
183772007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18378
18379 * lread.c (read1): Set pvectype for char_tables.
18380
18381 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18382 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18383 Add type checks.
18384 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18385
18386 * alloc.c (free_misc): Use XMISCTYPE.
18387 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18388
183892007-10-17 Glenn Morris <rgm@gnu.org>
18390
18391 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18392 (syms_of_minibuf): Add Qcompletion_ignore_case.
18393 * dired.c (Qcompletion_ignore_case): Change to external.
18394 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18395 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18396 (Fread_file_name): Use it rather than intern'ing.
18397
18398 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18399 (Fread_coding_system): Ignore case of user input.
18400
184012007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18402
18403 * xdisp.c (handle_display_prop): Ignore display specs after
18404 replacing one when string text is being replaced.
18405 (handle_single_display_spec): Pretend as if characters with display
18406 property haven't been consumed only when buffer text is being replaced.
18407
184082007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18409
18410 * xfns.c (Fx_create_frame, Fx_display_list):
18411 * window.c (window_fixed_size_p, enlarge_window)
18412 (shrink_window_lowest_first):
18413 * macterm.c (init_font_name_table):
18414 * macfns.c (Fx_create_frame, Fx_display_list):
18415 * lread.c (close_load_descs):
18416 * keyboard.c (read_char_x_menu_prompt):
18417 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18418 * coding.c (code_convert_region_unwind): Test the type of an object
18419 rather than just !NILP before extracting data from it.
18420
18421 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18422
18423 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18424 (XMISCANY): New macro.
18425 (XMISCTYPE): Use it.
18426 (struct Lisp_Misc_Any): New type.
18427 (union Lisp_Misc): Use it.
18428 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18429 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18430 (find_symbol_value, set_internal, default_value, Fset_default)
18431 (Fmake_variable_buffer_local, Fmake_local_variable)
18432 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18433 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18434 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18435 * alloc.c (allocate_buffer): Set the size and tag.
18436 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18437 Use XMISCANY.
18438 (die): Follow the GNU convention for error messages.
18439 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18440 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18441 tag any more.
18442 (set_buffer_internal_1):
18443 * frame.c (store_frame_param):
18444 * eval.c (specbind):
18445 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18446
18447 * doc.c (Fsnarf_documentation): Simplify.
18448
184492007-10-14 Juanma Barranquero <lekktu@gmail.com>
18450
18451 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18452 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18453
184542007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18455
18456 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18457
184582007-10-14 Juanma Barranquero <lekktu@gmail.com>
18459
18460 * eval.c (do_autoload): Don't save autoloads.
18461
18462 * data.c (Ffset): Save autoload of the function being set.
18463
184642007-10-07 John Paul Wallington <jpw@pobox.com>
18465
18466 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18467 parameter before setting up faces.
18468
184692007-10-13 Eli Zaretskii <eliz@gnu.org>
18470
18471 * ccl.c (Fregister_code_conversion_map):
18472 * keyboard.c (append_tool_bar_item): Reformat last change.
18473
18474 * lisp.h (eabs): Rename from `abs'. All callers changed.
18475
184762007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18477
18478 * buffer.c (add_overlay_mod_hooklist):
18479 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18480 * fontset.c (make_fontset):
18481 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18482 (append_tool_bar_item):
18483 * macmenu.c (grow_menu_items):
18484 * w32menu.c (grow_menu_items):
18485 * xmenu.c (grow_menu_items): Use larger_vector.
18486
184872007-10-13 Eli Zaretskii <eliz@gnu.org>
18488
18489 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18490 selected frame'' on MSDOS).
18491
184922007-10-12 Martin Rudalics <rudalics@gmx.at>
18493
18494 * frame.c (Qexplicit_name): New variable.
18495 (x_report_frame_params): Report it in parameter alist.
18496 (syms_of_frame): Intern and staticpro it.
18497
184982007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18499
18500 * macfns.c (x_create_tip_frame): Set terminal for frame.
18501
185022007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18503
18504 * frame.c (Qenvironment): Remove.
18505 (syms_of_frame) <Qenvironment>: Don't initialize.
18506 (Fdelete_frame): Don't treat the `environment' param specially.
18507 * frame.h (Qenvironment): Don't declare.
18508 * callproc.c (set_initial_environment): Don't set unused frame param.
18509
18510 * frame.c (Fframe_with_environment): Remove.
18511 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18512
18513 * lisp.h (Fframe_with_environment): Don't declare.
18514
185152007-10-10 Juanma Barranquero <lekktu@gmail.com>
18516
18517 * indent.c (indent_tabs_mode, last_known_column)
18518 (last_known_column_modified): Make static.
18519 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18520
185212007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18522
18523 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18524
185252007-10-09 Jason Rumney <jasonr@gnu.org>
18526
18527 * w32term.c (x_set_window_size): Disable code that attempts to tell
18528 Lisp code about a size change before it actually happens.
18529
185302007-10-09 Richard Stallman <rms@gnu.org>
18531
18532 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18533 return HANDLED_RETURN.
18534
185352007-10-08 Martin Rudalics <rudalics@gmx.at>
18536
18537 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18538 when there's an unread command event.
18539
18540 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18541 window autoselection act appropriately when leaving selected frame.
18542 (syms_of_frame): Initialize focus_follows_mouse.
18543 * frame.h (focus_follows_mouse): Extern it.
18544 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18545 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18546 * msdos.c (dos_rawgetc): Likewise.
18547 * w32term.c (w32_read_socket): Likewise.
18548 * xterm.c (handle_one_xevent): Likewise.
18549 * xdisp.c (syms_of_xdisp): In doc-string of
18550 mouse-autoselect-window mention focus-follows-mouse.
18551
185522007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18553
18554 * macterm.c (mac_load_query_font): Fix missing return value.
18555 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18556 Add BLOCK_INPUT.
18557
185582007-10-08 Richard Stallman <rms@gnu.org>
18559
18560 * xdisp.c (get_window_cursor_type): Implement documented behavior
18561 for cursor-in-non-selected-windows = t.
18562
185632007-10-08 Jason Rumney <jasonr@gnu.org>
18564
18565 * w32.c (w32_get_resource): Always close registry keys.
18566
185672007-10-08 Jason Rumney <jasonr@gnu.org>
18568
18569 * makefile.w32-in (LIBS): Add COMCTL32.
18570
18571 * w32fns.c (globals_of_w32fns): Init common controls.
18572
185732007-10-08 Richard Stallman <rms@gnu.org>
18574
18575 * image.c (our_memory_buffer): Rename from omfib_buffer.
18576
185772007-10-08 Richard Stallman <rms@gnu.org>
18578
18579 * buffer.c (Foverlays_at): Doc fix.
18580
185812007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18582
18583 * fns.c (Fplist_put): Preserve uneven tail data.
18584
185852007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18586
18587 * termhooks.h (enum event_kind): Remove trailing comma.
18588
18589 * frame.h (enum): Remove trailing comma.
18590
185912007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18592
18593 * w32proc.c (delete_child): Don't terminate threads of zombies.
18594
185952007-10-08 Martin Rudalics <rudalics@gmx.at>
18596
18597 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18598
18599 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18600 last-repeatable-command.
18601 (init_kboard): Initialize Vlast_repeatable_command.
18602 (command_loop_1): Set it to real_this_command unless that was
18603 bound to an input event.
18604 (mark_kboards): Mark it.
18605
186062007-10-08 Richard Stallman <rms@gnu.org>
18607
18608 * eval.c (condition-case): Doc fix.
18609
186102007-10-08 Masatake YAMATO <jet@gyve.org>
18611
18612 * xfaces.c (tty_supports_face_attributes_p): Fix code
18613 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18614 was copied and not edited.
18615
186162007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18617
18618 Add new `input-decode-map' keymap and use it for terminal
18619 escape sequences.
18620 * keyboard.h (struct kboard): Add Vinput_decode_map.
18621 Remove Vlocal_key_translation_map.
18622 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18623 (init_kboard): Init input-decode-map.
18624 Replace local-key-translation-map back with key-translation-map.
18625 (syms_of_keyboard): Declare input-decode-map.
18626 Remove local-key-translation-map. Update docstrings.
18627 (mark_kboards): Mark Vinput_decode_map.
18628 Don't mark Vlocal_key_translation_map.
18629 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18630 Replace local-key-translation-map back with key-translation-map.
18631 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18632 Bind in input-decode-map rather than function-key-map.
18633
18634 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18635 This was made redundant by the previous introduction of XSETPVECTYPE.
18636
186372007-10-09 Richard Stallman <rms@gnu.org>
18638
18639 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18640
186412007-09-29 Richard Stallman <rms@gnu.org>
18642
18643 * eval.c (internal_condition_case_2, internal_condition_case_1)
18644 (internal_condition_case): Reenable abort if x_catching_errors ()
18645 to see if that really happens and why.
18646
186472007-10-06 Andreas Schwab <schwab@suse.de>
18648
18649 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18650
186512007-10-04 Juanma Barranquero <lekktu@gmail.com>
18652
18653 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18654
186552007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18656
18657 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18658
186592007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18660
18661 * window.h (struct window):
18662 * window.c (struct save_window_data, struct saved_window):
18663 * termhooks.h (struct terminal):
18664 * process.h (struct Lisp_Process):
18665 * frame.h (struct frame):
18666 * buffer.h (struct buffer):
18667 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18668 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18669 The size field of (pseudo)vectors is now unsigned.
18670 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18671
18672 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18673 Turn `count' into an integer.
18674
18675 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18676 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18677 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18678 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18679 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18680
18681 * alloc.c (allocate_pseudovector): New fun.
18682 (ALLOCATE_PSEUDOVECTOR): New macro.
18683 (allocate_window, allocate_terminal, allocate_frame)
18684 (allocate_process): Use it.
18685 (mark_vectorlike): New function.
18686 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18687 (mark_terminals): Use it.
18688 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18689 (Fmake_byte_code): Use XSETPVECTYPE.
18690
18691 * frame.c (Fframe_parameters): Minor simplification.
18692
18693 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18694
18695 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18696
18697 * buffer.c (Fget_buffer_create, init_buffer_once):
18698 * lread.c (defsubr):
18699 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18700
18701 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18702 defined differently in the m/*.h files.
18703 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18704 (XSETPVECTYPE): New macro.
18705 (XSETPSEUDOVECTOR): Use it.
18706
18707 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18708 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18709
18710 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18711 * lread.c (defvar_per_buffer):
18712 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18713
18714 * window.c (candidate_window_p): Only consider as visible frames that
18715 are on the same terminal.
18716
18717 * m/ibms390x.h (MARKBIT): Remove unused macro.
18718
187192007-10-01 Juanma Barranquero <lekktu@gmail.com>
18720
18721 * lread.c (Fload): Fix typo in docstring.
18722
187232007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18724
18725 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18726 of a non-zero value can't yield zero.
18727
187282007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18729
18730 * term.c (term_clear_mouse_face, term_mouse_highlight)
18731 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18732
18733 * print.c (safe_debug_print): Use XHASH.
18734
18735 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18736 Lisp elements such as tags.
18737 (XHASH): New macro.
18738 (EQ): Use it.
18739 (SREF, SSET, STRING_COPYIN): Use SDATA.
18740 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18741
18742 * alloc.c (mark_terminal): Remove left-over declaration.
18743 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18744 (allocate_vectorlike): Remove type argument. Adjust callers.
18745 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18746 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18747
18748 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18749 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18750 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18751 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18752 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18753 Use them.
18754
18755 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18756 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18757 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18758
187592007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18760
18761 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18762 loaded by default.
18763
187642007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18765
18766 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18767 on this tty.
18768 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18769
18770 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18771 Update all users.
18772 (handle_one_term_event): Use Gpm_DrawPointer.
18773 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18774 Signal errors instead of returning nil. Always return nil.
18775 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18776 Make it a noop if gpm-mouse was not activated.
18777 (syms_of_term): Update names.
18778
187792007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18780
18781 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18782 (init_sys_modes): Check that gpm_tty is the current tty.
18783
18784 * alloc.c (allocate_terminal): Set the vector size to only count the
18785 lisp fields. Initialize those to nil.
18786 (mark_object): Don't treat terminals specially.
18787 (mark_terminal): Remove.
18788 (mark_terminals): Use mark_object instead.
18789
18790 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18791 the GC to the beginning.
18792
18793 * indent.h:
18794 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18795
18796 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18797
187982007-09-25 Jason Rumney <jasonr@gnu.org>
18799
18800 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18801
18802 * w32console.c (create_w32cons_output): Remove.
18803
18804 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18805
18806 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18807 (reset_sys_modes): Use reset_terminal_modes_hook.
18808
188092007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18810
18811 * eval.c (do_autoload): Don't output any message.
18812
188132007-09-24 Juri Linkov <juri@jurta.org>
18814
18815 * emacs.c (standard_args): Change priority of "--no-splash"
18816 from 40 to 3. Add "--no-desktop" with the same priority.
18817
188182007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18819
18820 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18821 and optimize the case where they are all 1.
18822
188232007-09-23 Johannes Weiner <hannes@saeurebad.de>
18824
18825 * lisp.h (abs): Define if not defined.
18826 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18827 Don't define `abs', since it's defined in lisp.h.
18828
188292007-09-22 Eli Zaretskii <eliz@gnu.org>
18830
18831 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18832 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18833 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18834 (init_tty): Use DEV_TTY instead of "/dev/tty".
18835 [WINDOWSNT]: No need to protect from NAME arg being null.
18836
188372007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18838
18839 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18840 up the tty state.
18841
188422007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18843
18844 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18845 (gpm_tty): Change its type.
18846 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18847 (gpm_tty): Change its type and initialize it.
18848 (Fterm_open_connection): Check the frame is indeed a tty.
18849 Use the new gpm_tty.
18850 (Fterm_close_connection): Use the new gpm_tty.
18851 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18852 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18853
188542007-09-21 Juanma Barranquero <lekktu@gmail.com>
18855
18856 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18857 underline_color, to draw strike-through.
18858
188592007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18860
18861 * lisp.h (allocate_terminal): Declare.
18862
18863 * window.c (candidate_window_p): Consider frames that are being placed
18864 by the user as somewhere between visible and iconified.
18865 (window_loop): Prefer windows on the current frame.
18866 (Fselect_window): Move the use of select-frame to the beginning so we
18867 can just delegate all the work (it'll call us back anyway).
18868
18869 * frame.c (Qdisplay_environment_variable):
18870 * frame.h (Qdisplay_environment_variable): Delete.
18871
18872 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18873 of the first arg, since that value may be a union.
18874
18875 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18876 parameter rather than Qdisplay_environment_variable. If all else
18877 fails, look for DISPLAY in initial-environment.
18878
188792007-09-21 Glenn Morris <rgm@gnu.org>
18880
18881 * Makefile.in (emacstool): Remove target.
18882 (lisp, shortlisp): Remove termdev.elc.
18883
188842007-09-21 Markus Triska <markus.triska@gmx.at>
18885
18886 * xterm.c (x_delete_display): Compile session management conditionally.
18887
188882007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18889
18890 * callproc.c (getenv_internal_1): New function.
18891 (getenv_internal): Use it.
18892 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18893
18894 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18895 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18896 (Fset_terminal_parameter): Work with dead terminals as well.
18897 (Fmodify_terminal_parameters): Remove.
18898
18899 * terminal.c (get_terminal): Handle terminals.
18900 Make sure the terminal returned is live.
18901 (create_terminal): Use allocate_terminal.
18902 (mark_terminals): Move to alloc.c.
18903 (delete_terminal): Use terminal->name as liveness status.
18904 NULL out fields after freeing their contents.
18905 Don't deallocate the object.
18906 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18907 rather than an int.
18908 (Fterminal_live_p): Accept non-integer arguments.
18909 (Fterminal_list): Return terminal objects rather than an ints.
18910
18911 * alloc.c (enum mem_type): New member for `terminal' objects.
18912 (allocate_terminal): New function.
18913 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18914 Handle terminals.
18915 (mark_terminal): New fun.
18916 (mark_terminals): Move from terminal.c.
18917
18918 * term.c (get_tty_terminal): Don't treat output_initial specially.
18919 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18920 (delete_tty): Use terminal->name as liveness status.
18921
18922 * termhooks.h (struct terminal): Make it into a pseudovector.
18923 Remove `deleted' replaced by checking `name's nullness.
18924
18925 * print.c (print_object): Handle terminals.
18926
18927 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18928 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18929
18930 * frame.c (make_terminal_frame):
18931 * keyboard.c (tty_read_avail_input):
18932 * w32term.c (x_delete_terminal):
18933 * xfns.c (Fx_create_frame, x_create_tip_frame):
18934 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18935
189362007-09-20 Glenn Morris <rgm@gnu.org>
18937
18938 * process.c (Fmake_network_process): Doc fix.
18939
189402007-09-19 Jason Rumney <jasonr@gnu.org>
18941
18942 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18943
189442007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18945
18946 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18947 Fix a C warning regarding variable constness.
18948
18949 * xterm.c (handle_one_xevent): Fix a C warning.
18950
189512007-09-18 Jason Rumney <jasonr@gnu.org>
18952
18953 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18954
189552007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18956
18957 * gtkutil.c (gdpy_def): New variable.
18958 (xg_initialize): Initialize gdpy_def.
18959 (xg_display_close): If no other display exists, set gdpy_def to a
18960 new connection.
18961
189622007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18963
18964 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18965 when we have no file name for the icon.
18966 (xg_tool_bar_expose_callback): Remove.
18967 (xg_create_tool_bar): Don't connect expose signal to
18968 xg_tool_bar_expose_callback.
18969 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18970
189712007-09-16 Andreas Schwab <schwab@suse.de>
18972
18973 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18974 values instead of zapping them.
18975
189762007-09-14 Glenn Morris <rgm@gnu.org>
18977
18978 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18979 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18980 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18981 scope and rename to omfib_buffer for clarity.
18982 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18983
189842007-09-14 Kenichi Handa <handa@m17n.org>
18985
18986 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18987
189882007-09-13 Jason Rumney <jasonr@gnu.org>
18989
18990 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18991
18992 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18993
18994 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18995 (mac_term_init): Call here instead, passing rif.
18996
189972007-09-13 Glenn Morris <rgm@gnu.org>
18998
18999 * s/hpux.h: No longer define `static' as nothing.
19000
190012007-09-13 Johan Bockgård <bojohan@gnu.org>
19002
19003 * callint.c (Fcall_interactively): Remove unused var `fun'.
19004
190052007-09-12 Romain Francoise <romain@orebokech.com>
19006
19007 * window.c (prefer_window_split_horizontally, display_buffer):
19008 Revert 2007-09-08 change.
19009
190102007-09-12 Glenn Morris <rgm@gnu.org>
19011
19012 * alloca.c: Remove file.
19013 * Makefile.in (alloca): Do not undef.
19014 (allocaobj, alloca.o): Remove.
19015 (otherobj): Remove allocaobj.
19016 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19017 * regex.c (C_ALLOCA): Remove all references and code that was only
19018 used when this was defined.
19019 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19020 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19021 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19022
19023 * Makefile.in (SOURCES, unlock, relock): Delete.
19024
19025 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19026 (menu_grab_callback): All uses changed.
19027
19028 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19029 (x_reply_selection_request): All uses changed.
19030
190312007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19032
19033 * lread.c (load_warn_old_style_backquotes): Change message to look
19034 better when it appears in the middle of byte-compiler messages.
19035
190362007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19037
19038 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19039
19040 * xterm.c (x_create_terminal): Add comment.
19041
19042 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19043
190442007-09-10 Richard Stallman <rms@gnu.org>
19045
19046 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19047
190482007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19049
19050 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19051 (DEFUN): Document `intspec', use it instead of `prompt'.
19052
19053 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19054
19055 * data.c (Finteractive_form): If the interactive specification starts
19056 with a `(', use it as a Lisp form.
19057
19058 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19059 name and file modes.
19060
19061 * callint.c (Fcall_interactively): Comment fixes.
19062
190632007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19064
19065 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19066 and compiled functions.
19067
190682007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19069
19070 * window.c (prefer_window_split_horizontally): New variable.
19071 (display_buffer): Consider splitting window horizontally depending
19072 on prefer_window_split_horizontally.
19073
190742007-09-08 Eli Zaretskii <eliz@gnu.org>
19075
19076 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19077
190782007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19079
19080 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19081
19082 * frame.c (x_set_frame_parameters): Check number is positive before
19083 using XFASTINT.
19084
19085 * window.c (freeze_window_start): Don't presume selected_window holds
19086 a window object.
19087 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19088
190892007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19090
19091 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19092
190932007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19094
19095 * window.c (Vsplit_window_preferred_function): New var.
19096 (Fdisplay_buffer): Use it.
19097 (syms_of_window): Export, and initialize it.
19098
190992007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19100
19101 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19102
191032007-09-06 Glenn Morris <rgm@gnu.org>
19104
19105 * gtkutil.c (menu_grab_callback) <cnt>:
19106 * xselect.c (x_reply_selection_request) <cnt>: Move static
19107 variable to file scope.
19108
191092007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19110
19111 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19112 consistent values of selected_frame and selected_window.
19113
191142007-09-04 Jason Rumney <jasonr@gnu.org>
19115
19116 * w32console.c (initialize_w32_display): Zero unused hooks.
19117
191182007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19119
19120 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19121 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19122
191232007-09-04 Jason Rumney <jasonr@gnu.org>
19124
19125 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19126 in w32console.c. Set up input. Remove XXX comments that have been
19127 confirmed as correct.
19128
19129 * s/ms-w32.h (MULTI_KBOARD): Define.
19130
19131 * w32console.c (one_and_only_w32cons): Remove.
19132 (initialize_w32_display): Take terminal argument.
19133
19134 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19135 initialize_w32_display.
19136 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19137
19138 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19139
19140 * keyboard.c (discard_mouse_events): Discard it.
19141 (make_lispy_event): Translate it to a lisp event.
19142 (lispy_wheel_names): Add wheel-left and right events.
19143 (syms_of_keyboard): Enlarge wheel_syms.
19144
19145 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19146 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19147
19148 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19149
19150 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19151 from WM_MOUSEHWHEEL.
19152 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19153
19154 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19155 terminal.
19156
19157 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19158 keyboard for the terminal.
19159
191602007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19161
19162 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19163 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19164 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19165 and resume-tty-function to resume-tty-hook.
19166 (Fsuspend_tty, Fresume_tty): Use new names.
19167
191682007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19169
19170 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19171 if it starts with "n:".
19172
191732007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19174
19175 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19176
191772007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19178
19179 * frame.h:
19180 * frame.c (Qterm_environment_variable): Remove.
19181 (syms_of_frame): Don't init and staticpro it.
19182
19183 * callproc.c (getenv_internal): Remove special case for $TERM.
19184
19185 * callproc.c (Vinitial_environment): New variable.
19186 (set_initial_environment): Initialize it.
19187 (syms_of_callproc): Declare it.
19188 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19189 TERM under which a process runs is never related to the TERM in which
19190 Emacs is running.
19191
191922007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19193
19194 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19195 * s/darwin.h: ... do it here.
19196
191972007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19198
19199 * lisp.h (set_initial_environment): Rename from set_global_environment.
19200
19201 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19202 removed by mistake on the multi-tty branch.
19203
19204 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19205 (Fmodify_frame_parameters): Return a value.
19206
19207 * image.c (png_load): Comment-out var only used in commented-out code.
19208
19209 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19210 before passing it to mark_object.
19211
19212 * xfaces.c (internal_resolve_face_name): Return a value.
19213 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19214
19215 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19216 (x_icon): Comment-out var only used in commented-out code.
19217
192182007-08-29 Romain Francoise <romain@orebokech.com>
19219
19220 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19221 QUIT hasn't been provided.
19222
192232007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19224
19225 * callproc.c (child_setup, getenv_internal): Use the
19226 display-environment-variable and term-environment-variable frame params.
19227 (set_initial_environment): Initialise Vprocess_environment.
19228
19229 * config.in: Disable multi-keyboard support on a mac.
19230
19231 * frame.c (Qterm_environment_variable)
19232 (Qdisplay_environment_variable): New variables.
19233 (syms_of_frame): Intern and staticpro them.
19234 (Fmake_terminal_frame): Disable output method test.
19235
19236 * frame.h: Declare them here.
19237
19238 * macfns.c (x_set_mouse_color): Get rif from the frame.
19239 (x_set_tool_bar_lines): Don't use updating_frame.
19240 (mac_window): Add 2 new parameters for consistency with other systems.
19241 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19242 frame parameters following what is done in X11 and w32. Don't use
19243 FRAME_MAC_DISPLAY_INFO.
19244 (Fx_open_connection, start_hourglass): Remove window-system check.
19245 (x_create_tip_frame): Get the keyboard from the terminal.
19246
19247 * macmenu.c: Reorder includes.
19248 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19249
19250 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19251 terminal parameter.
19252 (x_clear_frame): Add a frame parameter.
19253 (note_mouse_movement): Get rif from the frame.
19254 (mac_term_init): Initialize the terminal.
19255 (mac_initialize): Make static and move terminal initialization ...
19256 (mac_create_terminal): ... to this new function.
19257
19258 * macterm.h (struct mac_display_info): Add terminal.
19259 (mac_initialize): Delete declaration.
19260
19261 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19262
19263 * sysdep.c: Comment out text after #endif.
19264
19265 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19266 is defined. Better initialize ttys in windows. Use terminal
19267 specific mouse_position_hook.
19268
19269 * termhooks.h (union display_info): Add mac_display_info.
19270
19271 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19272 Set the default minibuffer frame, window_system and the rest of the
19273 frame parameters following what is done in X11.
19274
19275 * w32term.c (w32_initialize): Make static.
19276
19277 * xselect.c (x_handle_selection_clear): Only access
19278 terminal->kboard when MULTI_KBOARD is defined.
19279
19280 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19281 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19282
192832007-08-29 Jason Rumney <jasonr@gnu.org>
19284
19285 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19286 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19287
19288 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19289 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19290
19291 * keyboard.c (restore_kboard_configuration): Only define when
19292 MULTI_KBOARD defined.
19293
19294 * makefile.w32-in: Update dependancies from Makefile.in.
19295 (OBJ1): Add terminal.$(O)
19296
19297 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19298 Don't define function body.
19299 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19300
19301 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19302
19303 * w32.c (request_sigio, unrequest_sigio): Remove.
19304
19305 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19306 (w32con_clear_frame, w32con_clear_end_of_line)
19307 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19308 (w32con_delete_glyphs, w32con_set_terminal_window)
19309 (scroll_line, w32_sys_ring_bell): Add frame arg.
19310 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19311 Add terminal arg.
19312 (PICK_FRAME): Remove.
19313 (w32con_write_glyphs): Use frame specific terminal coding.
19314 (one_and_only_w32cons): New global variable.
19315 (initialize_w32_display): Use it for storing hooks.
19316 (create_w32cons_output): New function.
19317
19318 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19319 arg a frame.
19320
19321 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19322 Set window_system.
19323 (x_set_tool_bar_lines): Don't use updating_frame.
19324 (Fx_create_frame): Set terminal and ref count.
19325 (Fx_open_connection): Remove window-system check.
19326
19327 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19328
19329 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19330 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19331 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19332 Add frame arg.
19333 (x_delete_terminal, w32_create_terminal): New functions.
19334 (w32_term_init): Create a terminal.
19335 (w32_initialize): Move terminal specific initialization to
19336 w32_create_terminal.
19337
19338 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19339 (w32_clear_rect, w32_clear_area): Use background from frame.
19340 (w32_display_info): Add terminal.
19341 (w32_sys_ring_bell, x_delete_display): Declare here.
19342
19343 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19344
19345 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19346
193472007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19348
19349 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19350 Fix get_named_tty calls for the controlling tty.
19351
193522007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19353
19354 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19355
193562007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19357
19358 * term.c (tty_insert_glyphs): Add missing first parameter.
19359
193602007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19361
19362 * buffer.c (Fbuffer_list, Fbury_buffer):
19363 Take frame->buried_buffer_list into account.
19364
19365 * cm.c (current_tty): New variable, for cmputc().
19366 (cmputc): Use it.
19367 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19368 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19369 (cmgoto): Add tty parameter. Pass it on to calccost().
19370 Use emacs_tputs() instead of tputs().
19371
19372 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19373 tputs().
19374 (current_tty): New variable, for cmputc().
19375 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19376
19377 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19378 (internal_condition_case, internal_condition_case_1)
19379 (internal_condition_case_2): Don't abort when x_catching_errors.
19380
19381 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19382 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19383 prevent crashes caused by bogus longjmps in read_char.
19384
19385 * keymap.h (Fset_keymap_parent): Add EXFUN.
19386
19387 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19388 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19389 Remove redundant definition.
19390
19391 * macfns.c (x_set_mouse_color, x_make_gc):
19392 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19393
19394 * w32term.c (x_free_frame_resources):
19395 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19396 (w32_initialize): Use the accessor macros for terminal characteristics.
19397
19398 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19399 Use the accessor macros for terminal characteristics.
19400 * msdos.c (internal_terminal_init): Use the accessor macros for
19401 terminal characteristics.
19402 (ScreenVisualBell, internal_terminal_init):
19403 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19404
19405 * termopts.h (no_redraw_on_reenter): Declare.
19406
19407 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19408 (mark_terminals, mark_ttys): Declare.
19409 (Fgarbage_collect): Call them.
19410 (mark_object): Mark buried_buffer_list.
19411
19412 * prefix-args.c: Include stdlib.h for exit.
19413
19414 * syssignal.h: Add comment.
19415
19416 * indent.c: Include stdio.h.
19417
19418 * window.h (Vinitial_window_system): Declare.
19419 (Vwindow_system): Delete declaration.
19420
19421 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19422
19423 * image.c (lookup_image): Don't initialize `c' until the xasserts
19424 have been run.
19425
19426 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19427 FRAME_FOREGROUND_PIXEL.
19428
19429 * print.c (print_preprocess): Don't lose print_depth levels while
19430 iterating.
19431
19432 * widget.c (update_from_various_frame_slots):
19433 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19434
19435 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19436 frames.
19437 (window_internal_height): Remove bogus make_number call.
19438 (init_window_once): Call make_terminal_frame with two zero parameters.
19439
19440 * fileio.c (Fread_file_name): Update comment.
19441
19442 * callint.c (Fcall_interactively):
19443 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19444 Make sure it is correctly unwound.
19445
19446 * xsmfns.c (x_session_close): New function.
19447
19448 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19449 Delete declarations.
19450
19451 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19452 (x_output): Remove background_pixel and foreground_pixel fields.
19453 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19454 (x_delete_device, x_session_close): Declare.
19455
19456 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19457 (read_filtered_event): Call `read_char' with a local
19458 `wrong_kboard_jmpbuf'.
19459
19460 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19461 Don't call single_kboard_state. Use FRAME_RIF.
19462
19463 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19464 systems.
19465
19466 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19467 (Fframe_with_environment, Fset_input_meta_mode)
19468 (Fset_quit_char): EXFUN.
19469 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19470 (init_sys_modes, reset_sys_modes): Update prototypes.
19471 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19472
19473 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19474 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19475 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19476 Delete declarations.
19477 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19478 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19479 New declarations.
19480
19481 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19482 already does that during init_display(). Call syms_of_keymap
19483 before syms_of_keyboard. Call `syms_of_terminal'.
19484 Call set_initial_environment, not set_process_environment.
19485 (shut_down_emacs): Call reset_all_sys_modes() instead of
19486 reset_sys_modes().
19487
19488 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19489 (internal_resolve_face_name, resolve_face_name_error): New functions.
19490 (resolve_face_name): Protect against loops and errors thrown by Fget.
19491 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19492 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19493
19494 * scroll.c: Replace CURTTY() with local variables throughout the
19495 file (where applicable).
19496 (calculate_scrolling, calculate_direct_scrolling)
19497 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19498 characteristics.
19499
19500 * keymap.c (Vfunction_key_map): Remove.
19501 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19502 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19503 (Vkey_translation_map): Remove.
19504 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19505 (Fdescribe_buffer_bindings)
19506 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19507 Update for terminal-local key-translation-map.
19508
19509 * Makefile.in (callproc.o): Update dependencies.
19510 (lisp, shortlisp): Add termdev.elc.
19511 (obj): Add terminal.o.
19512 (terminal.o): Add dependencies.
19513 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19514 (data.o, fns.o): Add termhooks.h dependency.
19515 (SOME_MACHINE_LISP): Add dnd.elc.
19516 (minibuf.o): Fix typo.
19517 Update dependencies.
19518
19519 * data.c (do_symval_forwarding, store_symval_forwarding)
19520 (find_symbol_value): Use the selected frame's keyboard, not
19521 current_kboard.
19522
19523 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19524 Vwindow_system.
19525
19526 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19527 Fmenu_bar_open.
19528 (syms_of_xmenu): Update defsubr.
19529 (mouse_position_for_popup, Fx_popup_menu)
19530 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19531 (set_frame_menubar, free_frame_menubar)
b97439ce 19532 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19533 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19534 an X frame.
19535
19536 * xselect.c (x_own_selection): Abort if not an X frame.
19537 (some_frame_on_display): Check if it is an X frame.
19538 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19539
19540 * coding.c: Include frame.h and termhooks.h.
19541 (terminal_coding, keyboard_coding): Delete.
19542 (Fset_terminal_coding_system_internal)
19543 (Fset_keyboard_coding_system_internal)
19544 (Fkeyboard_coding_system)
19545 (Fterminal_coding_system): Add a terminal parameter.
19546 Get terminal_coding from the terminal.
19547 (init_coding_once): Don't call setup_coding_system here.
19548
19549 * dispextern.h (set_scroll_region, turn_off_insert)
19550 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19551 (tty_clear_end_of_line, tty_setup_colors)
19552 (delete_tty, updating_frame)
19553 (produce_special_glyphs, produce_glyphs, write_glyphs)
19554 (insert_glyphs): Remove.
19555 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19556 (tty_turn_off_highlight, get_tty_size): Add declaration.
19557 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19558
19559 * frame.h (enum output_method): Add output_initial.
19560 (struct x_output): Delete.
19561 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19562 Access foreground_pixel and background_pixel directly from the frame.
19563 (tty_display): Delete.
19564 (struct frame): Add buried_buffer_list, foreground_pixel,
19565 background_pixel and terminal. Delete kboard.
19566 (union output_data): Add tty.
19567 (FRAME_KBOARD): Get the kboard from the terminal.
19568 (FRAME_INITIAL_P): New macro.
19569 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19570 (Qterm_environment_variable, Qdisplay_environment_variable)
19571 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19572 New declarations.
19573
19574 * termchar.h (tty_output, tty_display_info): New structures.
19575 (tty_list): Declare.
19576 (FRAME_TTY, CURTTY): New macros.
19577 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19578 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19579 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19580 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19581
19582 * callproc.c: Include frame.h and termhooks.h, for terminal
19583 parameters.
19584 (add_env): New function.
19585 (child_setup): Use it.
19586 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19587 (getenv_internal): Fix get_terminal_param call.
19588 (Fgetenv_internal, egetenv): Update doc.
19589 (syms_of_callproc): Initialize Vprocess_environment to nil.
19590 Register and initialize them. Remove obsolete defvars. Update doc
19591 strings.
19592 (child_setup): Handle Vlocal_environment_variables.
19593 (getenv_internal): Add terminal parameter.
19594 Handle Vlocal_environment_variables.
19595 (Fgetenv_internal): Add terminal parameter.
19596 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19597 environment in a frame (not terminal) parameter. Update doc strings.
19598 (set_initial_environment): Rename from set_global_environment.
19599 Store Emacs environment in initial frame parameter.
19600
19601 * xdisp.c (redisplay_internal): Update references to
19602 `previous_terminal_frame'.
19603 (display_mode_line, Fformat_mode_line): Replace calls to
19604 `push_frame_kboard' with `push_kboard'.
19605 (get_glyph_string_clip_rects): Add extra parentheses and
19606 braces to prevent compiler warnings.
19607 (calc_pixel_width_or_height): Add xassert to check that the
19608 frame is alive. Don't call `lookup_image' on a termcap frame.
19609 (message2_nolog, message3_nolog, redisplay_internal)
19610 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19611 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19612 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19613 (Fx_display_pixel_width, Fx_display_pixel_height)
19614 (Fx_display_planes, Fx_display_color_cells)
19615 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19616 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19617 (Fx_display_backing_store, Fx_display_visual_class)
19618 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19619 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19620
19621 * xfns.c (x_set_foreground_color x_set_background_color)
19622 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19623 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19624 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19625 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19626 terminal that is being deleted.
19627 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19628 frame parameter, and make sure it overrides any user-supplied setting.
19629 (Fx_close_connection, Fx_synchronize): Unify argument names with
19630 the rest of the DEFUNs.
19631
19632 * dispnew.c (Fsend_string_to_terminal): Update call to
19633 `get_tty_terminal'.
19634 (Fredraw_frame, Fsend_string_to_terminal)
19635 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19636 FRAME_TERMCAP_P and FRAME_TTY.
19637 (window_change_signal): Don't believe width/height values that are
19638 impossibly small.
19639 (Vinitial_window_system): Rename from Vwindow_system.
19640 (termscript, Wcm, rif): Delete.
19641
19642 * termhooks.h (struct terminal): New struct containing the
19643 previously global text display hooks and new members NAME,
19644 DELETED and PARAM_ALIST.
19645 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19646 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19647 (FRAME_RIF): New macros.
19648 (get_terminal_param, get_device): New declarations.
19649 (termscript): Delete declaration.
19650
19651 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19652 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19653 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19654 FRAME_FOREGROUND_PIXEL.
19655 (x_fully_uncatch_errors): Disable definition.
19656 (x_scroll_bar_expose): Fix reference to foreground pixel.
19657 (XTread_socket): Disable loop on all X displays.
19658 (x_delete_terminal): Don't set terminal->deleted and let
19659 delete_terminal delete the frames on the terminal.
19660 (x_delete_display): Doc update to reflect changes in
19661 delete_terminal.
19662 (x_display_info) <terminal>: Move member earlier in the struct.
19663 (deleting_tty): Remove old variable.
19664 (Fsuspend_tty): Call clear_tty_hooks.
19665 (Fresume_tty, init_tty): Call set_tty_hooks.
19666 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19667 errors on X frames.
19668 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19669 (handle_one_xevent): Initialize `f' to NULL.
19670 (x_delete_terminal, x_create_terminal): New functions.
19671 (XTset_terminal_modes, XTreset_terminal_modes)
19672 (XTread_socket, x_connection_closed, x_term_init)
19673 (x_term_init, x_delete_display): Add terminal parameter.
19674 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19675 X connections.
19676
19677 * frame.c: Include termchar.h.
19678 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19679 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19680 (Qdisplay_environment_variable): New vars.
19681 (Fframep): Deal with output_initial.
19682 (Fframe-live-p): Doc fix.
19683 (Fwindow-system): New function.
19684 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19685 (make_terminal_frame): Don't create frames on a terminal that is
19686 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19687 (store_frame_param): Check for found_for_frame before calling XFRAME.
19688 (Fmake_terminal_frame): Handle NULL tty names correctly.
19689 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19690 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19691 frames to refer to a deleted frame in their 'environment parameter.
19692 (Fframe_with_environment): New function.
19693 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19694 (get_future_frame_param): New function.
19695 (Fmake_terminal_frame): Use it.
19696 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19697
19698 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19699 * sysdep.c (reset_sys_modes): Update for renames.
19700
19701 * keyboard.c (tty_read_avail_input): New function.
19702 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19703 (syms_of_keyboard): Defsubr them.
19704 (Fset_input_meta_mode, Fset_quit_char): New functions.
19705 (Fset_input_mode): Split to above functions.
19706 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19707 parameter. Use it in call to `read_char'.
19708 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19709 Set wrong_kboard_jmpbuf correctly in recursive calls.
19710 Use current_kboard to access Vkeyboard_translate_table.
19711 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19712 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19713 Update longjmp invocations. Remember the original current_kboard,
19714 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19715 changes it. Comment out unnecessary calls to
19716 `record_single_kboard_state' and `any_kboard_state'.
19717 Update recursive calls.
19718 (wrong_kboard_jmpbuf): Remove global variable.
19719 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19720 Handle deleted interrupted_kboards correctly; that is a legal
19721 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19722 and read_char calls. Abort if interrupted_kboard died in read_char.
19723 (any_kboard_state, single_kboard_state)
19724 (push_frame_kboard): Remove function.
19725 (pop_kboard): Switch out of single_kboard mode if the kboard has
19726 been deleted. Remove unused variable. Help debugging by not
19727 changing current_kboard unnecessarily. Set current_kboard to the
19728 kboard of the selected frame when the stored kboard object has
19729 been deleted before pop_kboard.
19730 (temporarily_switch_to_single_kboard): Change first parameter to a
19731 frame pointer. Throw an error when caller wants to change kboards
19732 while in single_kboard mode. Don't push_kboard if we weren't in
19733 single kboard state. Don't pop_kboard if we popped into any
19734 kboard state.
19735 (restore_kboard_configuration): Abort if pop_kboard changed the
19736 kboard in single_kboard mode. Call pop_kboard only after setting
19737 up single_kboard mode.
19738 (Frecursive_edit): Switch to single_kboard mode only in nested
19739 command loops.
19740 (cmd_error, command_loop, command_loop_1, timer_check):
19741 Comment out unnecessary call to `any_kboard_state' and
19742 `record_single_kboard_state'.
19743 (delete_kboard): Exit single_kboard mode if we have just deleted
19744 that kboard. Use FRAME_KBOARD.
19745 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19746 `fatal_error_signal'.
19747 (record_single_kboard_state): Don't push_kboard if we weren't in
19748 single kboard state. Don't pop_kboard if we popped into any
19749 kboard state.
19750 (push_frame_kboard): Rename to push_kboard.
19751 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19752 (read_avail_input): Read input from all terminals.
19753 (mark_kboards): Also mark Vkeyboard_translate_table.
19754 (kbd_buffer_store_event_hold): Simplify condition.
19755 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19756 (Vkeyboard_translate_table): Move to struct kboard.
19757 (init_kboard): Initialize Vkeyboard_translate_table.
19758 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19759 Vkeyboard_translate_table. Update doc strings. Update docs of
19760 local-function-key-map and function-key-map.
19761
19762 * terminal.c: New file.
19763
19764 * term.c: Include errno.h.
19765 (Vring_bell_function, device_list, initial_device)
19766 (next_device_id, ring_bell, update_begin, update_end)
19767 (set_terminal_window, cursor_to, raw_cursor_to)
19768 (clear_to_end, clear_frame, clear_end_of_line)
19769 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19770 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19771 (syms_of_term): Move their initialization to terminal.c.
19772 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19773 (Ftty_display_color_cells)
19774 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19775 (clear_tty_hooks, set_tty_hooks)
19776 (init_tty, maybe_fatal): New functions.
19777 (Ftty_type): Return nil if terminal is not on a tty instead of
19778 throwing an error. Doc update.
19779 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19780 Doc update. Initialize new subrs and variables.
19781 (delete_tty): Use terminal->deleted.
19782 (tty_set_terminal_modes): Rename from set_terminal_modes.
19783 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19784 (set_scroll_region): Rename to `tty_set_scroll_region'.
19785 (turn_on_insert): Rename to `tty_turn_on_insert'.
19786 (turn_off_insert): Rename to `tty_turn_off_insert'.
19787 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19788 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19789 (toggle_highligh): Rename to `tty_toggle_highlight'.
19790 (background_highlight): Rename to `tty_background_highlight'.
19791 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19792 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19793 (tty_set_scroll_region, tty_background_highlight)
19794 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19795 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19796 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19797 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19798 Add static modifier.
19799 (tty_reset_terminal_modes, tty_set_terminal_window)
19800 (tty_set_scroll_region, tty_background_highlight)
19801 (tty_highlight_if_desired, tty_cursor_to)
19802 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19803 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19804 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19805 renames.
19806
198072007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19808
19809 * keyboard.c: Qrtl is new.
19810 (parse_tool_bar_item): Handle :rtl keyword.
19811 (syms_of_keyboard): Intern :rtl keyword.
19812
19813 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19814
19815 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19816 so no Lisp code is executed.
19817 (file_for_image, find_rtl_image): New functions.
19818 (xg_get_image_for_pixmap): Use file_for_image.
19819 (update_frame_tool_bar): If direction is RTL, use RTL image if
19820 defined. Use Gtk stock images if defined.
19821
198222007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19823
19824 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19825 for nonexistent or zero-width glyph in composition glyph.
19826
198272007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19828
19829 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19830
19831 * xdisp.c (Finvisible_p): New function.
19832 (syms_of_xdisp): defsubr it.
19833
198342007-08-24 Juanma Barranquero <lekktu@gmail.com>
19835
19836 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19837 Doc fixes.
19838
198392007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19840
19841 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19842
198432007-08-24 Martin Rudalics <rudalics@gmx.at>
19844
19845 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19846 whether decoding has modified buffer contents.
19847
198482007-08-24 Jason Rumney <jasonr@gnu.org>
19849
19850 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19851 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19852 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19853 (init_svg_functions) [HAVE_NTGUI]: New function.
19854 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19855 (svg_load_image): Use them.
19856 (svg_load_image) [HAVE_NTGUI]: Implement background.
19857
198582007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19859
19860 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19861 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19862 (LIBX): Remove @RSVG_LIBS@.
19863 (LIBES): Add $(RSVG_LIBS).
19864
19865 * image.c (svg_load_image): Blend with specified background if exists.
19866 Use IMAGE_BACKGROUND. Add Mac OS Support.
19867
19868 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19869 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19870 Remove macros.
19871 [MAC_OSX] (socket_callback): Do nothing.
19872 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19873 ReceiveNextEvent.
19874 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19875 socket_callback.
19876 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19877
198782007-08-22 Glenn Morris <rgm@gnu.org>
19879
19880 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19881
198822007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19883
19884 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19885
19886 * image.c: Add support for SVG images. Some additional comments
19887 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19888 (svg_image_p): New function to test for SVG image.
19889 (svg_load): New function to load SVG image.
19890 (svg_load_image): New function, helper for svg_load.
19891 (Qsvg): New Lisp_object.
19892 (svg_keyword_index): New enum.
19893 (svg_format): New static `image_keyword' struct.
19894 (svg_type): New static `image_type' struct.
19895 (librsvg/rsvg.h): Include it.
19896
198972007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19898
19899 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19900
199012007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19902
19903 * lread.c (Qold_style_backquotes): New var.
19904 (syms_of_lread): Init and staticpro it.
19905 (load_warn_old_style_backquotes): New fun.
19906 (Fload): Use them to warn about old style backquotes.
19907 (end_of_file_error, Fload): Remove unused vars.
19908
19909 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19910
19911 * lread.c (Vold_style_backquotes): New var.
19912 (syms_of_lread): Init and export it to Elisp.
19913 (read1): Set it when we find an old-style (back)quote.
19914
199152007-08-22 Jason Rumney <jasonr@gnu.org>
19916
19917 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19918
199192007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19920
19921 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19922
199232007-08-19 Richard Stallman <rms@gnu.org>
19924
19925 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19926
199272007-08-19 Andreas Schwab <schwab@suse.de>
19928
19929 * alloc.c (pure): Round PURESIZE up.
19930
199312007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19932
19933 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19934 active frame.
19935
199362007-08-16 Richard Stallman <rms@gnu.org>
19937
19938 * eval.c (Fcommandp): Add parens to clarify.
19939
19940 * minibuf.c (Fall_completions): Use enum for type of table.
19941
19942 * emacs.c (USAGE2): Improve text.
19943
199442007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19945
19946 * term.c (tty_default_color_capabilities): Declare static
19947 variables in file scope, to avoid HPUX compiler problem.
19948
199492007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19950
19951 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19952 to gtk_toolbar_insert.
19953
199542007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19955
19956 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19957
19958 * insdel.c (reset_var_on_error): New fun.
19959 (signal_before_change, signal_after_change):
19960 Use it to reset (after|before)-change-functions to nil in case of error.
19961 Bind inhibit-modification-hooks to t.
19962 Don't bind (after|before)-change-functions to nil while they run.
19963
199642007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19965
19966 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19967 filling pixmap with stippled background.
19968
199692007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19970
19971 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19972 Don't use invisible frame as parent window for repositioning.
19973
199742007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19975
19976 * print.c (new_backquote_output): Rename from old_backquote_output.
19977 (print): Inverse its logic (according to its name) so as to match the
19978 behavior of new_backquote_flag in lread.c.
19979
199802007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19981
19982 * gmalloc.c (posix_memalign): New function.
19983
19984 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19985 ActivateControl/DeactivateControl here.
19986 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19987 frame-notice-user-settings is non-nil.
19988 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19989 for kEventParamFMFontStyle.
19990 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19991 mac_pass_command_to_system and mac_pass_control_to_system here.
19992 (XTread_socket): Call ActivateControl/DeactivateControl here.
19993 (XTread_socket) [TARGET_API_MAC_CARBON]:
19994 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19995 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19996 for window repositioning.
19997
199982007-08-08 Glenn Morris <rgm@gnu.org>
19999
20000 * Replace `iff' in doc-strings and comments.
20001
200022007-08-07 Chong Yidong <cyd@stupidchicken.com>
20003
20004 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20005
200062007-08-07 Martin Rudalics <rudalics@gmx.at>
20007
20008 * fileio.c (Finsert_file_contents): Run format-decode and
20009 after_insert_file_functions on entire buffer when REPLACE is
20010 non-nil and inhibit modification_hooks and point_motion_hooks.
20011 For consistency, run after_insert_file_functions iff something
20012 got inserted. Move signal_after_change and update_compositions
20013 after code running after_insert_file_functions. Make sure that
20014 undo_list doesn't record intermediate steps of the decoding process.
20015
200162007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20017
20018 * emacs.c (main)
20019 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20020 Call malloc_enable_thread on interactive startup.
20021
20022 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20023 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20024 [USE_PTHREAD]: Conditionalize with it.
20025 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20026 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20027 New functions.
20028
200292007-08-06 Chong Yidong <cyd@stupidchicken.com>
20030
20031 * xdisp.c (redisplay_window): When restoring original buffer
20032 position, make sure it is still valid.
20033
20034 * image.c (png_load): Ignore png-supplied background color.
20035
200362007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20037
20038 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20039 Use kCFAbsoluteTimeIntervalSince1970.
20040
20041 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20042 New variable.
20043 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20044 event loop should be quit.
20045 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20046 Quit dialog event loop if quit_dialog_event_loop is set.
20047
20048 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20049 (Selection): New typedef. Use instead of ScrapRef.
20050 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20051 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20052 (mac_clear_selection): Rename from clear_scrap.
20053 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20054 scrap_has_target_type. All uses changed.
20055 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20056 (mac_selection_has_target_p): New functions.
20057 (mac_put_selection_value): Rename from put_scrap_string.
20058 (mac_get_selection_value): Rename from get_scrap_string.
20059 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20060 (put_scrap_private_timestamp, scrap_has_target_type)
20061 (get_scrap_private_timestamp): Remove functions.
20062 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20063 (x_own_selection, x_get_local_selection):
20064 Use mac_valid_selection_value_p.
20065 (x_own_selection): Don't use put_scrap_private_timestamp.
20066 Record OWNERSHIP-INFO into Vselection_alist instead.
20067 (x_get_local_selection): Don't check type if request is local.
20068 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20069 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20070
200712007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20072
20073 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20074 add comment explaining why.
20075
200762007-08-03 Richard Stallman <rms@gnu.org>
20077
20078 * fileio.c (Fvisited_file_modtime): Use make_time.
20079
200802007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20081
20082 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20083 build.
20084
200852007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20086
20087 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20088
200892007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20090
20091 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20092
200932007-07-30 Richard Stallman <rms@gnu.org>
20094
20095 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20096
200972007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20098
20099 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20100
201012007-07-28 Nick Roberts <nickrob@snap.net.nz>
20102
20103 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20104 remote default-directory.
20105
20106 * buffer.c (mode-line-format): Update doc string.
20107
201082007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20109
20110 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20111 scroll bar gap.
20112 (x_scroll_bar_create): Set bar->fringe_extended_p.
20113 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20114 on frame edge. Check fringe background extension. Don't clear
20115 extended fringe background area.
20116
20117 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20118 (w32_fill_area): Enclose multiple statements with do ... while (0).
20119
20120 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20121 Extend fringe background to scroll bar gap.
20122 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20123 Set bar->fringe_extended_p.
20124 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20125 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20126 background extension. Don't clear extended fringe background area.
20127
20128 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20129 New member fringe_extended_p.
20130
201312007-07-25 Glenn Morris <rgm@gnu.org>
20132
20133 * Relicense all FSF files to GPLv3 or later.
20134
20135 * COPYING: Switch to GPLv3.
20136
201372007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20138
20139 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20140
20141 * data.c (Finteractive_form): Check for the presence of an
20142 `interactive-form' symbol property more thoroughly.
20143
20144 * data.c (Finteractive_form): Use an `interactive-form' property if
20145 present, analogous to the function-documentation property.
20146
201472007-07-24 Jason Rumney <jasonr@gnu.org>
20148
20149 * w32fns.c (x_real_positions): Get real position from OS instead of
20150 calculating it.
20151
201522007-07-23 Jason Rumney <jasonr@gnu.org>
20153
20154 * filelock.c (current_lock_owner): Allow for @ sign in username.
20155
201562007-07-22 Nick Roberts <nickrob@snap.net.nz>
20157
20158 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20159 remote default-directory.
20160
20161 * buffer.c (mode-line-format): Describe above case in doc string.
20162
201632007-07-20 Eli Zaretskii <eliz@gnu.org>
20164
20165 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20166 Define if not defined.
20167
201682007-07-18 Jason Rumney <jasonr@gnu.org>
20169
20170 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20171
201722007-07-18 Richard Stallman <rms@gnu.org>
20173
20174 * data.c (Fsetq_default): Doc fix.
20175
20176 * eval.c (Fsetq): Doc fix.
20177
201782007-07-18 Juanma Barranquero <lekktu@gmail.com>
20179
20180 * coding.c (Ffind_operation_coding_system):
20181 * eval.c (For, Fand): Doc fixes.
20182 Reported by Johan Bockgård.
20183
201842007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20185
20186 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20187
20188 * xterm.h: Declare x_ewmh_activate_frame.
20189
20190 * xterm.c (x_ewmh_activate_frame): New function.
20191 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20192
201932007-07-17 Martin Rudalics <rudalics@gmx.at>
20194
20195 * window.c (Fdisplay_buffer): If largest or LRU window is the
20196 only window, split it even if it is not eligible for splitting.
20197 This restores the original behavior broken by the 2007-07-15
20198 change.
20199
202002007-07-17 Glenn Morris <rgm@gnu.org>
20201
20202 * abbrev.c (abbrev_check_chars): New function.
20203 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20204 Call abbrev_check_chars to check abbrev characters are word
20205 constituents. Doc fix.
20206
202072007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20208
20209 * process.c (Fstart_process, Fmake_network_process)
20210 (read_process_output): Fix up last changes.
20211
202122007-07-16 Eli Zaretskii <eliz@gnu.org>
20213
20214 * makefile.w32-in (clean): Don't delete *~.
20215
202162007-07-16 Andreas Schwab <schwab@suse.de>
20217
20218 * window.c (Fdisplay_buffer): Use NILP.
20219 (Fset_window_scroll_bars): Likewise.
20220
202212007-07-15 Martin Rudalics <rudalics@gmx.at>
20222
20223 * window.c (window_min_size_2): New function.
20224 (window_min_size_1, size_window, Fdisplay_buffer)
20225 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20226 windows without mode- or header-lines when window-min-height is
20227 too small.
20228 (size_window): Reset nodelete_p after testing it, following an
20229 earlier note by Kim F. Storm.
20230 (display_buffer): Do not set split_height_threshold to twice the
20231 value of window_min_height to avoid changing the value of a
20232 customizable variable. Rather explicitly check whether the
20233 height of the window that shall be splitted is at least as large
20234 as split_height_threshold.
20235 (Fwindow_full_width_p): New defun.
20236 (syms_of_window): Defsubr it.
20237
20238 * window.h: Add EXFUN for Fwindow_full_width_p.
20239
202402007-07-14 Jason Rumney <jasonr@gnu.org>
20241
20242 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20243
202442007-07-14 Richard Stallman <rms@gnu.org>
20245
20246 * eval.c (maybe_call_debugger): New function.
20247 (find_handler_clause): Use maybe_call_debugger.
20248 Call it when the handler says `debug'.
20249 Eliminate DEBUGGER_VALUE_PTR.
20250 (Fsignal): Eliminate debugger_value.
20251 (Qdebug): New variable.
20252 (syms_of_eval): Initialize it.
20253
202542007-07-14 Juanma Barranquero <lekktu@gmail.com>
20255
20256 * eval.c (Fprogn):
20257 * keyboard.c (Ftrack_mouse):
20258 * print.c (Fwith_output_to_temp_buffer):
20259 * window.c (Fsave_window_excursion): Doc fix.
20260
202612007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20262
20263 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20264
202652007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20266
20267 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20268 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20269 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20270 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20271 Remove unused encoding_carryover.
20272 * process.c: Adjust all functions accordingly.
20273
202742007-07-12 Richard Stallman <rms@gnu.org>
20275
20276 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20277
202782007-07-11 Jason Rumney <jasonr@gnu.org>
20279
20280 * makefile.w32-in (LIBS): Include OLE32.
20281
20282 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20283 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20284
202852007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20286
20287 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20288 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20289 from a Lisp_Object into a bare pointer.
20290 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20291 Adjust the code correspondingly.
20292
20293 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20294
20295 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20296 (term_show_mouse_face): Remove unused var `j'.
20297 (handle_one_term_event): Remove unused vars `i' and `j'.
20298 Don't cast return value of ttyname since it's not necessary.
20299
203002007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20301
20302 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20303 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20304
20305 * fns.c (map_char_table): Use an array of int for `indices' rather than
20306 an array of Lisp_Objects (which are only ever integers anyway).
20307 (Fmap_char_table): Update caller.
20308 * lisp.h: Update prototype.
20309 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20310 * fontset.c (Ffontset_info):
20311 * casetab.c (set_case_table): Update callers.
20312
20313 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20314
20315 * keymap.c (struct accessible_keymaps_data)
20316 (struct where_is_internal_data): New structures.
20317 (accessible_keymaps_1, where_is_internal_1): Use them to change
20318 interface to adhere to the one used by map_keymap.
20319 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20320 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20321
20322 * keymap.h (map_keymap_function_t): More informative prototype.
20323
203242007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20325
20326 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20327 (looking_at_1): Don't change search_regs and last_thing_searched
20328 if `inhibit-changing-match-data' is non-nil.
20329 (string_match_1, search_buffer, set_search_regs): Likewise.
20330 (syms_of_search): Add Lisp level definition for
20331 `inhibit-changing-match-data' and set it to nil.
20332 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20333 start and end of the match, instead of using values in search_regs.
20334
203352007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20336
20337 * minibuf.c (Fcompleting_read): New value `confirm-only'
20338 for `require-match'.
20339
203402007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20341
20342 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20343 part of the 2007-06-27 change to syms_of_fileio.
20344
203452007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20346
20347 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20348 Check WINDOWP before using XWINDOW. Consolidate return statements.
20349
203502007-06-27 Richard Stallman <rms@gnu.org>
20351
20352 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20353
203542007-06-27 Juanma Barranquero <lekktu@gmail.com>
20355
20356 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20357
203582007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20359
20360 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20361 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20362 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20363 (_free_internal, memalign): Use them.
20364 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20365 Initialize to PTHREAD_MUTEX_INITIALIZER.
20366 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20367 (morecore_nolock): Rename from morecore. All uses changed.
20368 Use only nolock versions of internal allocation functions.
20369 (_malloc_internal_nolock, _realloc_internal_nolock)
20370 (_free_internal_nolock): New functions created from
20371 _malloc_internal, _realloc_internal, and _free_internal.
20372 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20373 Copy hook value to automatic variable before its use.
20374 (memalign): Copy hook value to automatic variable before its use.
20375
203762007-06-26 Kenichi Handa <handa@m17n.org>
20377
20378 * coding.c (Ffind_operation_coding_system): Docstring improved.
20379 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20380
203812007-06-25 David Kastrup <dak@gnu.org>
20382
20383 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20384 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20385 cater for additional parameter.
20386
20387 * keymap.h: Adjust number of parameters to `current-active-maps'.
20388
20389 * doc.c (Fsubstitute_command_keys): Adjust call of
20390 `current-active-maps'.
20391
203922007-06-25 David Kastrup <dak@gnu.org>
20393
20394 * callint.c (Fcall_interactively): Make the parsing of interactive
20395 specs somewhat more readable.
20396
203972007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20398
20399 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20400 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20401 if extended background has already been filled.
20402
204032007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20404
20405 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20406 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20407
20408 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20409 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20410 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20411 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20412 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20413 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20414 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20415 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20416 Run timers during dialog popup.
20417 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20418
204192007-06-21 Jason Rumney <jasonr@gnu.org>
20420
20421 * image.c (convert_mono_to_color_image): Swap fore and background.
20422
204232007-06-20 Jason Rumney <jasonr@gnu.org>
20424
20425 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20426 (w32_free_bdf_font): Unmap memory not handle.
20427
204282007-06-20 Sam Steingold <sds@gnu.org>
20429
20430 * gmalloc.c (__morecore): Fix the declaration to comply with the
20431 definition.
20432
204332007-06-20 Juanma Barranquero <lekktu@gmail.com>
20434
20435 * w32term.c (w32_delete_display): Remove leftover declaration.
20436 (w32_define_cursor, w32_initialize): Make static.
20437
20438 * w32.c (_wsa_errlist): Fix typo in error message.
20439 (init_environment): Ignore any environment variable from the
20440 registry having a null value.
20441
204422007-06-20 Glenn Morris <rgm@gnu.org>
20443
20444 * Makefile.in (LIBGIF): Default to -lgif.
20445
204462007-06-17 Jason Rumney <jasonr@gnu.org>
20447
20448 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20449 unicode strings.
20450
204512007-06-16 Juanma Barranquero <lekktu@gmail.com>
20452
20453 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20454 Fix typo in docstring.
20455
204562007-06-16 Eli Zaretskii <eliz@gnu.org>
20457
20458 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20459 and their keybindings.
20460
204612007-06-15 Chong Yidong <cyd@stupidchicken.com>
20462
20463 * composite.c (update_compositions): Fix last fix.
20464
204652007-06-14 Jason Rumney <jasonr@gnu.org>
20466
20467 * w32.c (get_process_times_fn): New function pointer.
20468 (globals_of_w32): Intialize it if present in kernel32.dll.
20469 (w32_get_internal_run_time): New function.
20470
20471 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20472
204732007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20474
20475 * composite.c (update_compositions): Check the validness of
20476 compositions.
20477
204782007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20479
20480 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20481 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20482
20483 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20484 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20485
20486 * macgui.h (USE_MAC_TOOLBAR): New define.
20487
20488 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20489 Return immediately unless popup is activated.
20490
20491 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20492 background to scroll bar gap.
20493 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20494 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20495 scroll bars on frame edge. Check fringe background extension.
20496 Don't clear extended fringe background area.
20497 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20498 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20499 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20500 [USE_MAC_TOOLBAR]: New macros.
20501 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20502 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20503 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20504 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20505 [USE_MAC_TOOLBAR]: New functions.
20506 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20507 manually if previous repositioning has failed.
20508 (mac_handle_keyboard_event): Use precomputed event kind.
20509 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20510 as tool bar item click. Handle mouse movement over tool bar items.
20511
20512 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20513 toolbar_win_gravity.
20514 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20515 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20516 Add externs.
20517
20518 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20519 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20520
205212007-06-14 Chong Yidong <cyd@stupidchicken.com>
20522
20523 * image.c (search_image_cache): Remove unused variable.
20524
205252007-06-13 Chong Yidong <cyd@stupidchicken.com>
20526
20527 * xfns.c, xmenu.c: Link to xaw3d if available.
20528
205292007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20530
20531 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20532 frame_foreground and frame_background.
20533
20534 * image.c (lookup_image): Save frame foreground and background colors.
20535 (search_image_cache): Check if saved and current frame colors match.
20536
205372007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20538
20539 * regex.c (regex_compile): Remove the `regnum' counter.
20540 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20541
205422007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20543
20544 * term.c: Include intervals.h to declare Fget_text_property.
20545
205462007-06-10 Jason Rumney <jasonr@gnu.org>
20547
20548 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20549
205502007-06-08 Juanma Barranquero <lekktu@gmail.com>
20551
20552 * callint.c (Fcall_interactively):
20553 * editfns.c (Fdelete_and_extract_region):
20554 * fileio.c (Fread_file_name):
20555 * fns.c (Fmapconcat):
20556 * keyboard.c (cmd_error_internal):
20557 * keymap.c (Fkey_description):
20558 * lread.c (openp):
20559 * minibuf.c (read_minibuf):
20560 * search.c (wordify):
20561 * sunfns.c (sel_read):
20562 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20563 * xfns.c (x_default_scroll_bar_color_parameter):
20564 * xmenu.c (menu_help_callback):
20565 * xselect.c (Fx_get_atom_name):
20566 * xterm.c (x_term_init): Use empty_unibyte_string.
20567
205682007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20569
20570 * alloc.c (init_strings): Initialize canonical empty strings.
20571 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20572 canonical empty string when the requested size is 0.
20573
20574 * emacs.c (empty_unibyte_string): Rename from empty_string.
20575 (empty_multibyte_string): New canonical empty string.
20576 (syms_of_emacs): Don't initialize empty_string.
20577
20578 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20579 string, if appropriate.
20580 (empty_unibyte_string, empty_multibyte_string): New externs.
20581 (empty_string): Remove extern.
20582
20583 * lread.c (syms_of_lread): Use empty_unibyte_string.
20584
205852007-06-07 Jason Rumney <jasonr@gnu.org>
20586
20587 * s/ms-w32.h: Don't define HAVE_TZNAME.
20588
20589 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20590
205912007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20592
20593 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20594
20595 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20596 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20597
20598 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20599 Don't call next handler.
20600 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20601 Remove argument. Install handler to application.
20602 (set_frame_menubar): Don't change deep_p.
20603 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20604 FRAME_OUTER_TO_INNER_DIFF_Y.
20605 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20606 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20607 [HAVE_DIALOGS]: New macros.
20608 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20609 Use them.
20610 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20611
20612 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20613 init_service_handler. All callers changed. Return OSStatus value.
20614
20615 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20616 All callers changed so as not to call SetPortWindowPort.
20617 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20618 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20619 mac_draw_string_common.
20620 (mac_draw_image_string_qd): Likewise.
20621 (mac_draw_string_common): Use them. Add INLINE.
20622 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20623 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20624 GetGlobalMouse.
20625 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20626 and FRAME_OUTER_TO_INNER_DIFF_Y.
20627 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20628 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20629 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20630 repositioning window to mac_handle_window_event.
20631 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20632 saving window location to mac_handle_window_event
20633 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20634 (install_menu_target_item_handler): Remove argument in extern.
20635 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20636 Also accept command events.
20637 (do_keystroke): New function created from XTread_socket.
20638 (init_command_handler): Remove functions.
20639 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20640 and save window location by kEventWindowShowing and kEventWindowHiding
20641 handlers here. Don't call next handler for window state change and
20642 focus events.
20643 (mac_handle_application_event, mac_handle_keyboard_event)
20644 [TARGET_API_MAC_CARBON]: New functions.
20645 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20646 kEventWindowShowing and kEventWindowHiding events. Move installation
20647 of mouse, font, text input and menu target item handlers to
20648 install_application_handler.
20649 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20650 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20651 New function.
20652 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20653 Register it.
20654 (XTread_socket) [TARGET_API_MAC_CARBON]:
20655 Consolidate SendEventToEventTarget calls.
20656 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20657 Move application activation handler to mac_handle_application_event.
20658 Move keyboard handler to mac_handle_keyboard_event.
20659 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20660 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20661 init_command_handler. Call install_application_handler.
20662
20663 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20664 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20665
206662007-06-07 Glenn Morris <rgm@gnu.org>
20667
20668 * emacs.c (main): Use `emacs-copyright' in --version output.
20669
206702007-06-06 Chong Yidong <cyd@stupidchicken.com>
20671
20672 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20673
206742007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20675
20676 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20677
20678 * macgui.h: Replace WindowPtr with WindowRef.
20679
20680 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20681 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20682 Replace ControlHandle with ControlRef.
20683 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20684
20685 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20686 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20687 Replace ControlHandle with ControlRef.
20688 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20689 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20690
20691 * macterm.h (struct scroll_bar): Rename member control_handle_low
20692 and control_handle_high to control_ref_low and control_ref_high.
20693 All uses changed.
20694 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20695 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20696 respectively. All uses changed.
20697 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20698 (install_window_handler, remove_window_handler): Replace WindowPtr
20699 with WindowRef in externs.
20700
207012007-06-05 Juanma Barranquero <lekktu@gmail.com>
20702
20703 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20704
207052007-06-03 Nick Roberts <nickrob@snap.net.nz>
20706
20707 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20708
20709 * frame.c (Fmouse_position, Fmouse_pixel_position):
20710 Condition on HAVE_GPM too.
20711
20712 * term.c (term_mouse_highlight): Remove unused variables.
20713 (Fterm_open_connection): Set gpm_zerobased to 1.
20714 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20715 Use zero based co-ordinates.
20716 (handle_one_term_event): Report a drag as mouse movement too.
20717
20718 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20719
207202007-06-03 Chong Yidong <cyd@stupidchicken.com>
20721
20722 * image.c (search_image_cache): New function. Require background
20723 color match if background color is unspecified in the image spec.
20724 (uncache_image, lookup_image): Use it.
20725
207262007-06-01 Juanma Barranquero <lekktu@gmail.com>
20727
20728 * window.c (Fshrink_window): Reflow docstring.
20729
207302007-06-02 Chong Yidong <cyd@stupidchicken.com>
20731
20732 * Version 22.1 released.
20733
207342007-06-01 Richard Stallman <rms@gnu.org>
20735
20736 * xfns.c (x_encode_text): Add GCPRO.
20737
207382007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20739
20740 * xfns.c (x_set_name_internal): Save encoded name before
20741 x_encode_text in case string data is relocated.
20742
207432007-05-31 Richard Stallman <rms@gnu.org>
20744
20745 * buffer.c (syms_of_buffer): Doc fix.
20746
207472007-05-30 Nick Roberts <nickrob@snap.net.nz>
20748
20749 * sysdep.c (init_sys_modes): Add rather than replace with
20750 O_NONBLOCK.
20751
20752 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20753 term_mouse_moveto.
20754
20755 * termhooks.h (term_mouse_moveto): New extern.
20756
20757 * term.c (mouse_face_window): Rename...
20758 (Qmouse_face_window): ...to this.
20759 (term_show_mouse_face, term_clear_mouse_face)
20760 (term_mouse_highlight): Use Qmouse_face_window.
20761 (term_mouse_moveto): New function.
20762 (term_mouse_position): Make it work.
20763 (syms_of_term): Uncomment assignment to mouse_position_hook.
20764 Staticpro Qmouse_face_window.
20765
207662007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20767
20768 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20769 around current_column call.
20770
207712007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20772
20773 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20774 * xdisp.c (next_element_from_buffer):
20775 * window.c (delete_window):
20776 * term.c (term_mouse_highlight):
20777 * msdos.c (getdefdir):
20778 * macterm.c (mac_create_bitmap_from_bitmap_data)
20779 (init_font_name_table):
20780 * fns.c (Fsxhash):
20781 * data.c (Fmake_local_variable):
20782 * ccl.c (ccl_driver): Likewise.
20783
207842007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20785
20786 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20787 Call mac_wakeup_from_rne on window size change.
20788
207892007-05-25 Chong Yidong <cyd@stupidchicken.com>
20790
20791 * image.c (uncache_image): Fix typo.
20792
207932007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20794
20795 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20796
207972007-05-22 Richard Stallman <rms@gnu.org>
20798
20799 * xterm.c (x_connection_closed): Remove NO_RETURN.
20800
208012007-05-22 Martin Rudalics <rudalics@gmx.at>
20802
20803 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20804
208052007-05-21 Chong Yidong <cyd@stupidchicken.com>
20806
20807 * image.c (uncache_image): New function.
20808 (Fimage_refresh): New function.
20809
208102007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20811
20812 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20813
208142007-05-20 Nick Roberts <nickrob@snap.net.nz>
20815
20816 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20817 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20818
208192007-05-20 Nick Roberts <nickrob@snap.net.nz>
20820
20821 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20822 conditional on [HAVE_GPM_H].
20823
208242007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20825
20826 * syntax.c (skip_chars): Update syntax-table only after we checked that
20827 the new location is valid.
20828
208292007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20830
20831 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20832 mac_get_window_bounds.
20833
208342007-05-20 Nick Roberts <nickrob@snap.net.nz>
20835
20836 * Makefile.in (LIBGPM): Allow it to be set from configure.
20837 If set then link Emacs with it.
20838
20839 * config.in: Regenerate.
20840
20841 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20842 New externs.
20843
20844 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20845 Include gpm.h.
20846 (handle_one_term_event, term_gpm): New externs.
20847
20848 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20849 and allow it to be interrupted by SIGIO.
20850
20851 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20852 (wait_reading_process_output): Wait on gpm_fd too.
20853 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20854 (add_gpm_wait_descriptor_called_flag): New variable.
20855 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20856
20857 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20858 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20859 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20860 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20861 (make_lispy_event): Add case GPM_CLICK_EVENT.
20862 (read_avail_input): Handle mouse input.
20863
20864 * term.c (write_glyphs_with_face): New function.
20865 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20866 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20867 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20868 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20869 (last_mouse_x, last_mouse_y): New variables.
20870 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20871 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20872 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20873 (Fterm_close_connection): New functions.
20874 (term_init): Initialise mouse_face_window.
20875
208762007-05-19 Chong Yidong <cyd@stupidchicken.com>
20877
20878 * xdisp.c (redisplay_window): If first window line is a
20879 continuation line, recompute the new window start instead of
20880 recentering.
20881
208822007-05-18 Glenn Morris <rgm@gnu.org>
20883
20884 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20885 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20886
208872007-05-17 Glenn Morris <rgm@gnu.org>
20888
20889 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20890
208912007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20892
20893 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20894 dead key repeat and up events.
20895
208962007-05-14 Chong Yidong <cyd@stupidchicken.com>
20897
20898 * image.c (pbm_load): Check image size for monochrome pbm.
20899
209002007-05-13 Chong Yidong <cyd@stupidchicken.com>
20901
20902 * xterm.c (XTread_socket): Revert last change.
20903
209042007-05-12 Chong Yidong <cyd@stupidchicken.com>
20905
20906 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20907
20908 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20909
209102007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20911
20912 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20913 mixup (YAILOM).
20914
209152007-05-07 Andreas Schwab <schwab@suse.de>
20916
20917 * keymap.c (Flookup_key): Fix typo in last change.
20918
209192007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20920
20921 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20922 mapping for unibyte strings.
20923
209242007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20925
20926 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20927 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20928
209292007-04-29 Richard Stallman <rms@gnu.org>
20930
20931 * insdel.c (replace_range): For undo, record insertion first.
20932
209332007-04-29 Andreas Schwab <schwab@suse.de>
20934
20935 * lisp.h (VECSIZE): Use OFFSETOF.
20936
209372007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20938
20939 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20940 disabled lines.
20941
209422007-04-28 Richard Stallman <rms@gnu.org>
20943
20944 * lread.c (read_escape): In a string, \s is always space.
20945
209462007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20947
20948 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20949
20950 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20951 submenu for menu bar items.
20952
20953See ChangeLog.10 for earlier changes.
20954
20955;; Local Variables:
20956;; coding: utf-8
20957;; add-log-time-zone-rule: t
aac0c6e3
MR
20958;; End:
20959
76b6f707 20960 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20961
20962 This file is part of GNU Emacs.
20963
20964 GNU Emacs is free software: you can redistribute it and/or modify
20965 it under the terms of the GNU General Public License as published by
20966 the Free Software Foundation, either version 3 of the License, or
20967 (at your option) any later version.
20968
20969 GNU Emacs is distributed in the hope that it will be useful,
20970 but WITHOUT ANY WARRANTY; without even the implied warranty of
20971 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20972 GNU General Public License for more details.
20973
20974 You should have received a copy of the GNU General Public License
20975 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20976
20977;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40