Fix a comment and delete trailing whitespace.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
be95bee9
JB
12009-12-04 Juanma Barranquero <lekktu@gmail.com>
2
3 Fix `string-to-number' to deal consistently with integers and floats.
4 * lread.c (isfloat_string): New argument ignore_trailing to accept all
5 trailing characters, not just whitespace.
6 (read1): Pass new arg 0 to keep old behavior.
7 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
8 trailing chars, as it is already done for integers. Doc fixes.
9 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
10
24c2d7ce
EZ
112009-12-04 Eli Zaretskii <eliz@gnu.org>
12
13 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
14 unused enumeration value.
15
7e694795
EZ
162009-12-03 Eli Zaretskii <eliz@gnu.org>
17
18 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
19
84b31826
SM
202009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
21
22 * process.c (Fmake_network_process): Fix up the tests for
23 "connectionless socket", so they DTRT for seqpacket sockets as well.
24
f00c449b
SM
252009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
26
27 * process.c (Qseqpacket): New symbol.
28 (HAVE_SEQPACKET): New macro.
29 (Fmake_network_process): Accept new :type `seqpacket'.
30 (init_process): Add `seqpacket' feature when applicable.
31 (syms_of_process): Initialize Qseqpacket.
32
8096a0ff
YM
332009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
34
35 * font.c (font_load_for_lface, font_open_by_name): Don't store name
36 if entity is Qnil.
37
3e0de07f
SM
382009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
39
40 * print.c (print_preprocess): Preprocess the key_and_value table of
41 hashtables, even tho they're "hidden" (bug#5082).
42
abeafb2a
JD
432009-11-29 Jan Djärv <jan.h.d@swipnet.se>
44
45 * frame.c (frame_make_pointer_invisible)
46 (frame_make_pointer_visible): Declare f before statements.
47
4bf47195
EZ
482009-11-28 Eli Zaretskii <eliz@gnu.org>
49
50 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
51 omitted dependencies on lisp.h.
52
c525b3f2
JD
532009-11-27 Jan Djärv <jan.h.d@swipnet.se>
54
ece2d4ed
JD
55 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
56 is NULL.
57
58 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
59
60 * frame.c (frame_make_pointer_invisible)
3e0de07f 61 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
62 frame.
63
c525b3f2
JD
64 * search.c (simple_search): Remove warning by making *p const.
65
2f00e299
DN
662009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
67
68 * xdisp.c (power_letter): Remove duplicate const.
69
084b049b
JD
702009-11-25 Jan Djärv <jan.h.d@swipnet.se>
71
a1fadc6f
JD
72 * term.c (delete_tty): Remove check for last terminal (bug#4970).
73
084b049b
JD
74 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
75 defaults (bug #5025).
76
28259cac
SM
772009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
78
79 * insdel.c (adjust_markers_for_delete): Move it in the
80 right direction! (bug#4803)
81
e8e14166
YM
822009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
83
84 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
85
86 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
87
86677b58
GM
882009-11-24 Glenn Morris <rgm@gnu.org>
89
90 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
91
581e51e8
JD
922009-11-23 Jan Djärv <jan.h.d@swipnet.se>
93
cfc86c7a
JD
94 * Makefile.in: Must create deps for ecrt0.o in its rule.
95
581e51e8
JD
96 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
97 because that is what Gtk+ font dialog understands.
98
99 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
100 of Fcopy_sequence.
101 (font_open_by_name): Put name given into QCname for font-object returned.
102
103 * frame.c (x_set_font): Save original font name as frame parameter
104 font-parameter.
105
106 * xsettings.c (set_default_xft_settings): New function.
107 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
108 is found.
109
8b264ecb
AS
1102009-11-22 Andreas Schwab <schwab@linux-m68k.org>
111
112 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
113 searching backwards through multibyte buffer.
114
872870b2
JD
1152009-11-21 Jan Djärv <jan.h.d@swipnet.se>
116
117 * xterm.c: #include xgselect.h.
118 (x_initialize): Call xgselect_initialize.
119
120 * xsettings.c (something_changedCB): C++ comments => C comments.
121 (init_gconf): Do not deal with any GLib file descriptors, xg_select
122 does that now.
123
124 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
125 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
126 (scroll_bar_button_cb): Remove.
127 (create_menus): C++ comments => C comments. Don't bind grab-notify
128 event.
129 (xg_create_scroll_bar): Don't bind button-press-event and
130 button-release-event.
131
132 * process.c: Include xgselect.h if defined (USE_GTK) ||
133 defined (HAVE_GCONF).
134 (wait_reading_process_output): Call xg_select for the same condition.
135
136 * xgselect.c (xg_select): New function to better integrate with
137 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
138
139 * xgselect.h: New file, declare xg_select, xgselect_initialize.
140
141 * Makefile.in (XOBJ): Add xgselect.o.
142
62a6e103
AS
1432009-11-21 Andreas Schwab <schwab@linux-m68k.org>
144
145 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
146 ignored second argument. All callers changed.
147 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
148 (RE_STRING_CHAR_AND_LENGTH): Likewise.
149 * xdisp.c (string_char_and_length): Likewise.
150
b0ca0f33
DN
1512009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
152
153 * xterm.c (x_new_font):
154 * print.c (print_object):
155 * cmds.c (Fself_insert_command): Move declarations before statements.
156
dd5a6279
CY
1572009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
158
159 * s/cygwin.h: Remove unneeded linker flags.
160
4a8e097d
JD
1612009-11-20 Jan Djärv <jan.h.d@swipnet.se>
162
0d1d0d26
JD
163 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
164
165 * xsettings.h: Declare xsettings_get_system_font.
166
167 * xsettings.c (xsettings_get_system_font): New function.
168 (init_gconf): No use initiating gconf unless we have Xft also.
169 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
170 HAVE_GCONF.
171
4a8e097d
JD
172 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
173 add a blank entry so it doesn't collapse into nothing.
174
8ab1650e
SM
1752009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
176
177 * lread.c (Funintern): Comment out last change.
178
82c602f0
RS
1792009-11-19 Richard Stallman <rms@gnu.org>
180
181 * lread.c (Funintern): Error if symbol is t or nil.
182
87e32266
SM
1832009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
184
185 * insdel.c (make_gap_larger): Don't make as many assumptions about the
186 representation of Lisp integers.
187 Reported by MJ Chan <mjchan.inbox@gmail.com>.
188
1b9ac145
AS
1892009-11-17 Andreas Schwab <schwab@linux-m68k.org>
190
191 * lisp.h: Remove declaration of Ffont_get_system_font.
192 * xfns.c: Move include of "xsettings.h".
193 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
194
dfb3c4c6
JD
1952009-11-17 Jan Djärv <jan.h.d@swipnet.se>
196
87e32266
SM
197 * xsettings.c (something_changedCB, Ffont_get_system_font):
198 Check use_system_font.
dfb3c4c6
JD
199 (syms_of_xsettings): DEFVAR font-use-system-font.
200
9370c1d8
AS
2012009-11-17 Andreas Schwab <schwab@linux-m68k.org>
202
25fe851a
AS
203 * xfns.c (x_default_font_parameter): Remove dead assignment.
204
9370c1d8
AS
205 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
206
637fa988
JD
2072009-11-17 Jan Djärv <jan.h.d@swipnet.se>
208
87e32266 209 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 210 not have FC_LCD_*. #define them if not there.
a6eb20d8 211
87e32266 212 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 213
637fa988
JD
214 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
215
216 * xterm.c (handle_one_xevent): Call xft_settings_event for
217 ClientMessage, PropertyNotify and DestroyNotify.
218 (x_term_init): If we have XFT, get DPI from Xft.dpi.
219 Call xsettings_initialize.
220
221 * xftfont.c (xftfont_fix_match): New function.
222 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
223 Call xftfont_fix_match after XftFontMatch.
224
225 * xfont.c (xfont_driver): Initialize all members.
226
87e32266
SM
227 * xfns.c (x_default_font_parameter):
228 Try font from Ffont_get_system_font.
637fa988
JD
229 Do not get font from x_default_parameter if we got one from
230 Ffont_get_system_font.
87e32266 231 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
232
233 * w32font.c (w32font_driver): Initialize all members.
234
235 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
236
237 * lisp.h: Declare syms_of_xsettings.
238
87e32266
SM
239 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
240 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
241
242 * ftfont.c (ftfont_filter_properties): New function.
243
244 * frame.c (x_set_font): Remove unused variable lval.
245
87e32266 246 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
247
248 * font.c (font_put_extra): Don't return if val is nil, it means
249 boolean option is off.
250 (font_parse_fcname): Collect all extra properties in extra_props
251 and call filter_properties for all drivers with extra_props and
252 font as parameter.
87e32266
SM
253 (font_open_entity): Do not use cache, it does not pick up new
254 fontconfig settings like hinting.
637fa988
JD
255 (font_load_for_lface): If spec had a name in it, store it in entity.
256
257 * emacs.c (main): Call syms_of_xsettings
258
259 * config.in: HAVE_GCONF is new.
260
261 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
262 xsettings.o is new.
263
5a942932
KH
2642009-11-17 Kenichi Handa <handa@m17n.org>
265
266 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
267 back to the default font in case that no suitable font is found.
268
b7c7a4d1
SM
2692009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
270
271 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
272 Suggested by Chad Brown <yandros@mit.edu>.
273 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
274
072f1e39
JD
2752009-11-16 Jan Djärv <jan.h.d@swipnet.se>
276
277 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
278
5d1e70a2
AS
2792009-11-14 Andreas Schwab <schwab@linux-m68k.org>
280
87e32266 281 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 282
a53cfbe5
JD
2832009-11-14 Jan Djärv <jan.h.d@swipnet.se>
284
473a99b7
JD
285 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
286 has a parent.
287
a53cfbe5
JD
288 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
289 dependency files in deps/. Include those files into Makefile.
290
291 * config.in: Generated (AUTO_DEPEND).
292
f04bb9b2
MA
2932009-11-13 Michael Albinus <michael.albinus@gmx.de>
294
b7c7a4d1 295 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
296 Vdbus_registered_functions_table, because it contains also
297 properties. Fix docstring.
b7c7a4d1 298 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 299
8f11f7ec
SM
3002009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
301
302 * alloc.c (mark_object): Don't reprocess marked strings.
303 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
304 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
305
8a605fe8
KH
3062009-11-13 Kenichi Handa <handa@m17n.org>
307
8f11f7ec 308 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
309 semantics of Vword_combining_categories.
310 (Vword_combining_categories): Describe the slight change of the
311 semantics.
312
241c4680
EZ
3132009-11-13 Eli Zaretskii <eliz@gnu.org>
314
315 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
316
317 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
318
5d58e44c
SM
3192009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
320
321 * xdisp.c (syms_of_xdisp): Fix typo in last change.
322
5e13f9d3
JB
3232009-11-12 Juanma Barranquero <lekktu@gmail.com>
324
325 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
326
cf54c754
DR
3272009-11-11 David Reitter <david.reitter@gmail.com>
328
329 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
330 variables to fix 2009-11-09 change.
331
a4ada374
DN
3322009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
333
91433552
DN
334 * process.c (ifflag_def): Make flag_sym constant.
335 (Fnetwork_interface_info): Use a constant pointer.
336 (ifflag_table):
337 * xfns.c (cursor_bits):
338 * xdisp.c (power_letter):
339 * termcap.c (speeds, esctab):
340 * sysdep.c (baud_convert):
341 * keyboard.c (lispy_accent_codes, modifier_names):
342 * image.c (xbm_format, xpm_format, pbm_format, png_format)
343 (jpeg_format, tiff_format, gif_format, svg_format)
344 (interlace_start, interlace_increment, gs_format):
345 * gtkutil.c (separator_names):
346 * fringe.c (swap_nibble):
347 * fns.c (base64_value_to_char, base64_char_to_value):
348 * fileio.c (make_temp_name_tbl):
349 * coding.c (suffixes): Make constant.
350
f4265f6c
DN
351 * frame.c (make_initial_frame):
352 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
353 build_string.
354 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
355
04420943
DN
356 * s/freebsd.h:
357 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
358
0a5d24ae
DN
359 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
360 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
361
a4ada374
DN
362 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
363 * xterm.c (syms_of_xterm):
364 * xfaces.c (syms_of_xfaces):
365 * xdisp.c (syms_of_xdisp):
366 * lread.c (syms_of_lread):
367 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
368 build_string.
91433552 369
a4ada374
DN
370 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
371
af98fc7f
SM
3722009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
373
8ab1650e 374 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 375
e90292a9
JD
3762009-11-10 Jan Djärv <jan.h.d@swipnet.se>
377
378 * keyboard.h: Declare timer_check.
379
380 * keyboard.c (timer_check_2): New function that does what the old
381 timer_check did.
382 (timer_check): Call timer_check_2 until -1 or a non-zero time is
383 returned, i.e. don't return -1 with timers pending.
384
385 * process.c: Remove extern declaration of timer_check.
386
387 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
388 even if timer_check returned -1.
389
af98fc7f
SM
390 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
391 xg_dialog_data.
e90292a9
JD
392 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
393 the event loop.
394 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
395 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
396 Destroy the dialog after xg_dialog_run.
397
045b83c0
SM
3982009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
399
400 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
401
1fb99a3a
JD
4022009-11-10 Jan Djärv <jan.h.d@swipnet.se>
403
404 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
405
04e452cb
JB
4062009-11-09 Juanma Barranquero <lekktu@gmail.com>
407
408 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
409
ef7417fd
SM
4102009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
411
412 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
413 w32menu.c, and nsmenu.m.
414 Simplify the obsolete case where position is nil.
415 (cleanup_popup_menu): New function, moved from nsmenu.m.
416 (struct skp): Remove slot `notreal'.
417 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
418 adjust callers.
419 (single_menu_item): Adjust call to parse_menu_item.
420 (syms_of_menu): Defsubr x-popup-menu.
421 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
422 (keymap_panes): Don't export any more.
423 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
424 (xmenu_show): Declare.
425 * keyboard.c (parse_menu_item): Remove arg `notreal'.
426 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
427 * keyboard.h (parse_menu_item): Update declaration.
428 * xmenu.c (Fx_popup_menu): Remove.
429 (syms_of_xmenu): Don't defsubr x-popup-menu.
430 * w32menu.c (Fx_popup_menu): Remove.
431 (syms_of_w32menu): Don't defsubr x-popup-menu.
432 * nsmenu.m (cleanup_popup_menu): Remove.
433 (ns_menu_show): Rename from ns_popup_menu and remove all the code
434 moved to menu.c's Fx_popup_menu.
435 (Fx_popup_menu): Remove.
436 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
437 menu_items (it's done in menu.c already).
438
424d6179
SM
4392009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
440
441 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
442 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
443
c0df13a6 4442009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
445
446 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 447 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
448 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
449 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
450
2de9f71c
SM
4512009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
452
453 Let integers use up 2 tags to give them one extra bit and thus double
454 their range.
455 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
456 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
457 New macros.
458 (enum Lisp_Type): Use them. Give explicit values.
459 (Lisp_Type_Limit): Remove.
460 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
461 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
462 Pay attention to USE_2_TAGS_FOR_INTS.
463 (INTEGERP): Use LISP_INT_TAG_P.
464 * fns.c (internal_equal): Simplify the default case.
465 (sxhash): Use case_Lisp_Int.
466 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
467 any more.
468 (Ftype_of): Use case_Lisp_Int.
469 (store_symval_forwarding): Take into account the fact that Ints can
470 now have more than one tag.
471 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
472 buffer_slot_type_mismatch):
473 * xfaces.c (face_attr_equal_p):
474 * print.c (print_object):
475 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
476 Use case_Lisp_Int.
477
323637a2
EZ
4782009-11-06 Eli Zaretskii <eliz@gnu.org>
479
7ac65b38
EZ
480 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
481
323637a2
EZ
482 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
483 warning.
484
e511451f
JD
4852009-11-06 Jan Djärv <jan.h.d@swipnet.se>
486
487 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
488
489 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
490
491 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
492 ButtonPressRelease and MotionNotify (bug#4870).
493
5e2327cf
DN
4942009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
495
5adc433e
DN
496 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
497
d67b4f80
DN
498 * xterm.c (syms_of_xterm):
499 * xselect.c (syms_of_xselect):
500 * xmenu.c (syms_of_xmenu):
501 * xfns.c (syms_of_xfns):
502 * xfaces.c (syms_of_xfaces):
503 * xdisp.c (syms_of_xdisp):
504 * window.c (syms_of_window):
505 * w32fns.c (syms_of_w32fns):
506 * undo.c (syms_of_undo):
507 * textprop.c (syms_of_textprop):
508 * terminal.c (syms_of_terminal):
509 * syntax.c (syms_of_syntax):
510 * sound.c (syms_of_sound):
511 * search.c (syms_of_search):
512 * print.c (syms_of_print):
513 * minibuf.c (syms_of_minibuf):
514 * macros.c (syms_of_macros):
515 * keymap.c (syms_of_keymap, initial_define_key)
516 (initial_define_lispy_key):
517 * keyboard.c (syms_of_keyboard):
518 * insdel.c (syms_of_insdel):
519 * image.c (syms_of_image):
520 * fringe.c (syms_of_fringe):
521 * frame.c (syms_of_frame):
522 * fontset.c (syms_of_fontset):
523 * fns.c (syms_of_fns):
524 * fns.c (syms_of_fns):
525 * fileio.c (syms_of_fileio):
526 * fileio.c (syms_of_fileio):
527 * eval.c (syms_of_eval):
528 * doc.c (syms_of_doc):
529 * dispnew.c (syms_of_display):
530 * dired.c (syms_of_dired):
531 * dbusbind.c (syms_of_dbusbind):
532 * data.c (syms_of_data):
533 * composite.c (syms_of_composite):
534 * coding.c (syms_of_coding):
535 * cmds.c (syms_of_cmds):
536 * charset.c (define_charset_internal, syms_of_character):
537 * ccl.c (syms_of_ccl):
538 * category.c (syms_of_category, init_category_once):
539 * casetab.c (syms_of_casetab):
540 * casefiddle.c (syms_of_casefiddle):
541 * callint.c (syms_of_callint):
542 * bytecode.c (syms_of_bytecode):
543 * buffer.c (keys_of_buffer, syms_of_buffer):
544 * alloc.c (syms_of_alloc):
545 * process.c (syms_of_process, init_process):
546 * lread.c (syms_of_lread, init_obarray):
547 * font.c (build_style_table):
548 * emacs.c (syms_of_emacs, main): Replace calls to intern with
549 intern_c_string, calls to make_pure_string with
550 make_pure_c_string. Use pure_cons instead of Fcons.
551
5e2327cf
DN
552 * process.c (socket_options): Make it const.
553 (set_socket_option, init_process): Use a const pointer.
554
555 * lread.c (intern_c_string): New function.
556 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
557 (defvar_int): Uset it. Make the name const char*.
558
559 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
560 (defvar_int): Update prototypes.
561 (DEFUN, EXFUN): Support for prototypes is now required.
562 (intern_c_string): New prototype.
563 (struct Lisp_Subr): Make symbol_name constant.
564
565 * font.c (struct table_entry): Remove unused member. Make NAMES
566 constant.
567 (weight_table, slant_table, width_table): Make constant.
568
569 * emacs.c (struct standard_args): Make name and longname constant.
570
571 * character.h (DEFSYM): Use intern_c_string.
572
a56eaaef
DN
5732009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
574
575 * alloc.c (make_pure_c_string): New function.
576
577 * eval.c (Fautoload): Purecopy all arguments.
578
f6a07420
KH
5792009-11-05 Kenichi Handa <handa@m17n.org>
580
581 * fileio.c (Finsert_file_contents): Be sure set coding-system of
582 the buffer in case of replace.
583
5d28d4b1
DN
5842009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
585
586 * puresize.h (BASE_PURESIZE): Increase to 1620000.
587
b349d111
SM
5882009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
589
d528b1ce
SM
590 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
591 when applicable (bug#4851).
592
b349d111
SM
593 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
594 (P_): Support for prototypes is now required.
595
c38eb027
CY
5962009-10-31 Chong Yidong <cyd@stupidchicken.com>
597
598 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
599 (Bug#4827).
600
0405f8d9
EZ
6012009-10-30 Eli Zaretskii <eliz@gnu.org>
602
d528b1ce 603 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 604
ca0a881a
DN
6052009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
606
607 * puresize.h (BASE_PURESIZE): Increase to 1470000.
608
d528b1ce
SM
609 * lread.c (Fload): Purecopy the file name when building
610 Vpreloaded_file_list.
ca0a881a 611
47e0e0e4
JR
6122009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
613
614 * w32fns.c (syms_of_w32fns): Change default value of
615 w32-scroll-lock-modifier to nil. (Bug#2827)
616
057bce6f
JB
6172009-10-26 Juanma Barranquero <lekktu@gmail.com>
618
782a943e 619 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 620
242bc74c
AS
6212009-10-26 Andreas Schwab <schwab@redhat.com>
622
623 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
624
522d013a
JB
6252009-10-26 Juanma Barranquero <lekktu@gmail.com>
626
627 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
628 For delta < 0, skip check that only makes sense when the mini-window
629 is going to be enlarged. (Bug#4534)
630
18060980
CY
6312009-10-25 Chong Yidong <cyd@stupidchicken.com>
632
633 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
634 string in menu maps (Bug#4471).
635
fec8f0fe
CY
6362009-10-24 Chong Yidong <cyd@stupidchicken.com>
637
638 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
639 FRAME_NS_VIEW on terminal frames (Bug#4765).
640
10d66ec0
AS
6412009-10-24 Andreas Schwab <schwab@linux-m68k.org>
642
1cae01f7
AS
643 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
644 DBUS_TYPE_UINTnn separately to get proper sign extension.
645
58a12889
AS
646 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
647 can properly handle unsigned types.
d528b1ce 648 (make_uid, make_gid): Remove.
58a12889 649
987c9327
AS
650 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
651 types again.
652
522d013a 653 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
654 (system_process_attributes): Likewise.
655
905a9ed3
DN
6562009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
657
658 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
659
660 * eval.c (Fautoload): Purecopy the filename. Simplify.
661
662 * category.c (Fdefine_category): Purecopy docstring.
663
a599b3e8
AS
6642009-10-23 Andreas Schwab <schwab@linux-m68k.org>
665
7b792fc9
AS
666 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
667
a599b3e8
AS
668 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
669
b35ac83e
CY
6702009-10-23 Chong Yidong <cyd@stupidchicken.com>
671
672 * window.c (Fwindow_edges, Fwindow_pixel_edges)
673 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
674 (Bug#4775).
675
e8903e00
SM
6762009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
677
678 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
679 (init_fileio_once):
680 * lisp.h (init_fileio_once): Remove.
681 * emacs.c (main): Don't call init_fileio_once.
682
8f43cbf3
DN
6832009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
684
685 * puresize.h (BASE_PURESIZE): Increase to 1430000.
686
26898943
AS
6872009-10-21 Andreas Schwab <schwab@linux-m68k.org>
688
689 * doprnt.c (doprnt): Fix overflow check.
690
5c646d5a
JD
6912009-10-21 Jan Djärv <jan.h.d@swipnet.se>
692
3132a7ea
JD
693 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
694
5c646d5a
JD
695 * xterm.h (x_wait_for_event): Declare it.
696
697 * xterm.c (pending_event_wait): New variable.
698 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
699 see pending_event_wait.eventtype.
700 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
701 (x_new_font): Call change_frame_size with new rows/columns before we
702 try to resize the frame.
5c646d5a 703 (x_wait_for_event): New function.
d528b1ce
SM
704 (x_set_window_size_1): Don't change gravity unless change_gravity
705 is set.
5c646d5a
JD
706 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
707 don't change frame size, instead wait for the ConfigureNotify.
708 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
709 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
710 (x_initialize): Initialize pending_event_wait.
711
712 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
713 size.
714
715 * widget.c (EmacsFrameSetValues): Add comment.
716 (EmacsFrameSetCharSize): Just call x_set_window_size.
717
718 * gtkutil.c (xg_frame_set_char_size): Flush events and call
719 x_wait_for_event.
d528b1ce 720 (flush_and_sync): Remove again.
5c646d5a
JD
721 (xg_get_font_name): Suggest monospace if no previous font is known.
722
e9c1637d
SM
7232009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
724
725 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 726 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 727
5a72cccb
YM
7282009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
729
730 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
731 processing pending events when event is filtered for input method.
ab04798f 732 (Bug#3681)
5a72cccb 733
2629aa37
JB
7342009-10-20 Juanma Barranquero <lekktu@gmail.com>
735
736 * fns.c: Add #endif accidentally removed in previous change.
737
c3417a74
DN
7382009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
739
740 * fns.c: Remove code for unsupported system: MAC_OS.
741 * image.c: Likewise. Include setjmp.h.
742
9685cef2
JD
7432009-10-19 Jan Djärv <jan.h.d@swipnet.se>
744
745 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
746 pixel -1 (bug #4742).
747
d7306fe6
DN
7482009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
749
019d2c4c
DN
750 * process.c (create_pty): Remove conditionals for no longer
751 supported systems: UNIPLUS and RTU.
752
ee6bacd4
DN
753 * xterm.c:
754 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
755
d7306fe6
DN
756 * alloc.c: Do not define struct catchtag.
757 * eval.c: Move struct catchtag definition ...
758 * lisp.h: ... here.
759
760 * image.c: Move png.h #include earlier to avoid warnings.
761
762 * xterm.c:
763 * xsmfns.c:
764 * xselect.c:
765 * xrdb.c:
766 * xmenu.c:
767 * xftfont.c:
768 * xfont.c:
769 * xfns.c:
770 * xfaces.c:
771 * xdisp.c:
772 * window.c:
773 * widget.c:
774 * w32xfns.c:
775 * w32uniscribe.c:
776 * w32term.c:
777 * w32select.c:
778 * w32reg.c:
779 * w32proc.c:
780 * w32menu.c:
781 * w32inevt.c:
782 * w32heap.c:
783 * w32font.c:
784 * w32fns.c:
785 * w32console.c:
786 * w32.c:
787 * w16select.c:
788 * vm-limit.c:
789 * unexsol.c:
790 * unexec.c:
791 * unexcw.c:
792 * unexaix.c:
793 * undo.c:
794 * tparam.c:
795 * textprop.c:
796 * terminfo.c:
797 * terminal.c:
798 * termcap.c:
799 * term.c:
800 * syntax.c:
801 * sound.c:
802 * sheap.c:
803 * search.c:
804 * scroll.c:
805 * region-cache.c:
806 * regex.c:
807 * ralloc.c:
808 * process.c:
809 * print.c:
b024548b
DN
810 * nsterm.m:
811 * nsselect.m:
812 * nsmenu.m:
813 * nsimage.m:
814 * nsfont.m:
815 * nsfns.m:
d7306fe6
DN
816 * msdos.c:
817 * minibuf.c:
818 * menu.c:
819 * marker.c:
820 * macros.c:
821 * keymap.c:
822 * keyboard.c:
823 * intervals.c:
824 * insdel.c:
825 * indent.c:
826 * gtkutil.c:
827 * ftxfont.c:
828 * ftfont.c:
829 * fringe.c:
830 * frame.c:
831 * fontset.c:
832 * font.c:
833 * fns.c:
834 * floatfns.c:
835 * filelock.c:
836 * fileio.c:
837 * emacs.c:
838 * editfns.c:
839 * dosfns.c:
840 * doprnt.c:
841 * doc.c:
842 * dispnew.c:
843 * dired.c:
844 * dbusbind.c:
845 * data.c:
846 * composite.c:
847 * coding.c:
848 * cmds.c:
849 * cm.c:
850 * chartab.c:
851 * charset.c:
852 * character.c:
853 * ccl.c:
854 * category.c:
855 * casetab.c:
856 * casefiddle.c:
857 * callproc.c:
858 * callint.c:
859 * bytecode.c:
860 * buffer.c:
861 * atimer.c: Include setjmp.h. (Bug#4643)
862
fd5f21e6
SM
8632009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
864
4c0354d7
SM
865 Remove leftover table unibyte_to_multibyte_table.
866 * character.c (unibyte_to_multibyte_table): Remove.
867 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
868 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
869 * character.h (UNIBYTE_TO_CHAR): New macro.
870 (MAKE_CHAR_MULTIBYTE): Use it.
871 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
872 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
873 (message_dolog, set_message_1):
874 * search.c (Freplace_match):
875 * editfns.c (Fcompare_buffer_substrings):
876 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
877 (concat):
878 * insdel.c (copy_text, count_size_as_multibyte):
879 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
880 * term.c (produce_glyphs):
881 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
882 * regex.c (RE_CHAR_TO_MULTIBYTE):
883 * cmds.c (internal_self_insert):
884 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
885
fd5f21e6
SM
886 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
887
4418646e
DN
8882009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
889
890 * puresize.h (BASE_PURESIZE): Increase to 1310000.
891
35f5c1d2
JB
8922009-10-16 Juanma Barranquero <lekktu@gmail.com>
893
894 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
895
a0cd8f6b
AR
8962009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
897
898 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
899 still needed under Tiger.
900
901 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
902
903 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
904 __Apple__.
905
906 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
907
01a8d3fa
KH
9082009-10-15 Kenichi Handa <handa@m17n.org>
909
910 * print.c (print_object): Escape a symbol like "2E10" too.
911
bf6c75c9 9122009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
913
914 Cleanups and changes for 64-bit compile under Snow Leopard.
915 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
916
917 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
918
c5959062 919 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
920 (ns_findfonts, nsfont_list_family): Use long format in printf, and
921 cast argument.
922 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 923 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
924
925 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
926
927 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
928 where appropriate.
929
930 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
931 where appropriate.
6e4780c5
JB
932 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
933 Use stringWithUTF8String.
bf6c75c9
AR
934 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
935
6e4780c5
JB
936 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
937 Add formal protocol mention to inheritance.
bf6c75c9
AR
938 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
939
6e4780c5
JB
940 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
941 Fix printf format.
bf6c75c9
AR
942 (ns_query_color): Use CGFloat where appropriate.
943 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
944 (EmacsScroller-mouseDown:) Use long format in printf, and cast
945 argument.
946
3d87f118
AR
947 * config.in (NS_HAVE_NSINTEGER): Drop.
948
a95c8102
AR
949 * dbusbind.c (dbus-method-return-internal)
950 (dbus-method-error-internal): Use long format in printf, and cast
951 argument.
952
953 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
954 in printf, and cast argument.
955
6873acca 956 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
957 cast argument.
958
9ec6f100
GM
9592009-10-11 Glenn Morris <rgm@gnu.org>
960
961 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
962
5be883cd
JD
9632009-10-08 Jan Djärv <jan.h.d@swipnet.se>
964
965 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
966 menu bar with a small width so it doesn't enlarge the frame.
967
d7a39b51
JB
9682009-10-08 Juanma Barranquero <lekktu@gmail.com>
969
970 * fontset.c (Fset_fontset_font): Fix typos in error messages.
971
0c2b6f8e
GM
9722009-10-06 Glenn Morris <rgm@gnu.org>
973
974 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
975 SOME_MACHINE_LISP (this enters indirectly via DOC).
976
e02131a2
EZ
9772009-10-05 Eli Zaretskii <eliz@gnu.org>
978
979 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
980
b4744254
EZ
9812009-10-04 Eli Zaretskii <eliz@gnu.org>
982
983 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
984 Doc fix.
985
dbf64827
JB
9862009-10-03 Martin Rudalics <rudalics@gmx.at>
987
988 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
989
e9a0aef8
MA
9902009-10-02 Michael Albinus <michael.albinus@gmx.de>
991
d528b1ce 992 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
993 used anymore outside fileio.c.
994
995 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
996
64eb2b56
JB
9972009-10-01 Juanma Barranquero <lekktu@gmail.com>
998
999 * lisp.h (Qdelete_directory_internal):
1000 Declare, instead of Qdelete_directory.
1001
1002 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1003
9d28c33e
SM
10042009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1005
1006 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1007
9d8f3bd9
MA
10082009-10-01 Michael Albinus <michael.albinus@gmx.de>
1009
9d28c33e 1010 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1011 Fdelete_directory. It is not a command anymore. It has no file
1012 name handler.
1013
9694740b
SM
10142009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1015
1016 * xdisp.c (get_next_display_element): Use an enum in last change.
1017
748e162f
KH
10182009-09-28 Kenichi Handa <handa@m17n.org>
1019
9694740b 1020 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1021 unibyte_display_via_language_environment in handling
1022 Vnobreak_char_display.
1023
17efd58d
AR
10242009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1025
1026 * nsterm.h (ns_app_name): New extern variable.
1027
1028 * nsterm.m (ns_app_name): New variable.
1029 (ns_term_init): Set and use it.
1030 (ns_term_shutdown): Use it.
1031
1032 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1033 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1034
1035 * nsfns.m (ns_set_name_iconic, ns_set_name)
1036 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1037 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1038
9694740b
SM
1039 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1040 Remove double-casting in client_data comparison.
31c2d412 1041
3208cb35
YM
10422009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1043
1044 * keyboard.c (make_lispy_event): Remember last wheel direction.
1045 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1046
b7d552d6
GM
10472009-09-26 Glenn Morris <rgm@gnu.org>
1048
1049 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1050 internal.elc. Add term/pc-win.elc.
1051 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1052 term/x-win.elc.
1053 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1054 term/w32-win.elc.
1055 (NS_SUPPORT): New.
1056 (lisp): Add NS_SUPPORT.
1057 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1058
4ff670a8
DR
10592009-09-25 David Reitter <david.reitter@gmail.com>
1060
1061 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1062 on Mac OS X 10.6+ (bug#4513).
1063
feabfb6c
JB
10642009-09-24 Juanma Barranquero <lekktu@gmail.com>
1065
1066 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1067 some parts of Emacs code (like font selection) don't grok them.
1068 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1069
de59072a
AS
10702009-09-24 Andreas Schwab <schwab@redhat.com>
1071
1072 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1073
a489517b
JB
10742009-09-24 Juanma Barranquero <lekktu@gmail.com>
1075
1076 * dired.c (Fdirectory_files): Fix typo in docstring.
1077
0592970c
AR
10782009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1079
1080 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1081 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1082 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1083 under GNUstep.
1084 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1085
1086 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1087 glyph advancement.
1088
48e8a88b
AR
10892009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1090
1091 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1092 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1093
1094 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1095 deleted (bug #4492).
1096
e14f0a78
AR
1097 * nsfont.m (Vns_reg_to_script): New lisp variable.
1098 (syms_of_nsfont): Declare it.
1099 (ns_registry_to_script): New function.
1100 (ns_get_req_script): Call it.
1101 (ns_findfonts): Don't give up on non-unicode registry.
1102
1103 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1104
5b650faa
SM
11052009-09-20 Tom Tromey <tromey@redhat.com>
1106
1107 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1108 batch mode (bug#4228).
1109
a489517b 11102009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1111
1112 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1113 carefully. (Bug #4339)
0bae4e09 1114
fcfe06f3
CY
11152009-09-18 Chong Yidong <cyd@stupidchicken.com>
1116
d798ba87 1117 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1118
31642728
AR
11192009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1120
1121 * emacs.c (inhibit_x_resources): Update doc string for NS.
1122 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1123 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1124
1125 * nsterm.h (ns_no_defaults): Remove.
1126
1127 * nsterm.m (ns_no_defaults): Remove.
1128 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1129 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1130 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1131 don't update the NSWindow itself.
1132 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1133 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1134
1135 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1136 ns_use_qd_smoothing.
1137
1138 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1139 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1140 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1141 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1142
8686ac71
JB
11432009-09-17 Juanma Barranquero <lekktu@gmail.com>
1144
1145 * emacs.c (inhibit_x_resources): New variable.
1146 (main) [HAVE_NS]: Don't process --quick command line option.
1147 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1148
1149 * lisp.h (inhibit_x_resources): Declare it extern.
1150
1151 * w32reg.c (x_get_string_resource):
1152 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1153
e227ba05
EZ
11542009-09-17 Eli Zaretskii <eliz@gnu.org>
1155
362654a6
JB
1156 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1157 Add lisp/term/internal.elc.
e227ba05 1158
742d40e8
SM
11592009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1160
1161 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1162 (bug#4461).
1163
005bd5a2
DN
11642009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1165
1166 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1167
1168 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1169 (OBJECTS_MACHINE): Remove, unused.
1170
f9af9719
SM
11712009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1172
1173 * frame.c (x_get_resource_string): Remove unused.
1174
0307c7d2
JD
11752009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1176
1177 * xterm.c (x_new_font): Call change_frame_size before calling
1178 x_set_window_size, in case frame size won't change.
1179
1180 * frame.c (x_set_font): Remove dead code.
1181
428b13d6
SM
11822009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1183
1184 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1185
5766c380
SM
11862009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1187
1188 * lread.c (Fload): Don't output a message after loading an obsolete
1189 package any more (done in Lisp now).
1190
2fd0161b
CY
11912009-09-12 Chong Yidong <cyd@stupidchicken.com>
1192
1193 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1194
bc5e75b6
SM
11952009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1196
1197 * keymap.c (Fwhere_is_internal): Use nconc2.
1198
c31c985e
AM
11992009-09-11 Alan Mackenzie <acm@muc.de>
1200
1201 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1202 batch mode.
1203
78012bd2
AS
12042009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1205
1206 * xdisp.c (display_mode_element): Detect cycles.
1207
9d889332
SM
12082009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1209
1210 * keymap.c (where_is_internal): Don't erroneously return nil right after
1211 filling the cache.
1212 (where_is_internal_1): Fix up typo.
1213
7ab5d780
GM
12142009-09-11 Glenn Morris <rgm@gnu.org>
1215
1216 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1217 share a common doc-string.
1218
5238a749
SM
12192009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1220
66d77eda
SM
1221 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1222 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1223
5238a749
SM
1224 * keymap.c (QCadvertised_binding): New constant.
1225 (syms_of_keymap): Initialize it.
1226 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1227 if applicable.
1228
19f48442
SM
12292009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1230
50d4ba39
SM
1231 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1232 (parse_menu_item): Streamline since bindings are recomputed all the
1233 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1234 more and don't support lmenu's menu-alias any more either.
1235
a88a5372
SM
1236 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1237 (where_is_internal): Strip it down to only traverse the keymaps.
1238 Move the cache handling from Fwhere_is_internal to here.
1239 (Fwhere_is_internal): Move the handling of remapping and the choice of
1240 the best binding from where_is_internal to here.
1241 Unify the cached/noncached paths, so remapping is also handled
1242 correctly when the cache is used, and so the cache can be used to
1243 speed up remap-handling when applicable.
1244 Give preference to non-remapped bindings.
1245 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1246 non-remapped bindings.
1247 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1248 command remapping.
1249
19f48442
SM
1250 * xdisp.c (display_mode_element): Move list length limit from 50 to
1251 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1252
599498c3 12532009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1254
1255 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1256
f9b7b5ac
SM
12572009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1258
a53af587
JB
1259 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1260 (Bug#4334)
1261
f9b7b5ac
SM
1262 * keymap.c (where_is_internal): Filter out shadowed remappings.
1263 Assume that where_is_internal returns unshadowed bindings to simplify
1264 the code and get rid of the gotos. Use ASIZE.
1265
04f4b72d
JD
12662009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1267
4da146f2
JD
1268 * xterm.c (x_focus_changed): If we get a focusout and pointer
1269 is invisible, make it visible.
1270
04f4b72d
JD
1271 * xterm.h: Remove condition for declaration of
1272 x_*_window_to_frame.
1273
7cef7ce3
SM
12742009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1275
1276 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1277 initial terminal as well.
1278
a54fa5b7
JD
12792009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1280
1281 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1282 x_menubar_window_to_frame.
a54fa5b7
JD
1283
1284 * xterm.c: Remove declarations also in xterm.h
1285 (XTmouse_position): Do not return valid positions
1286 for clicks in the menubar and the toolbar for Gtk+.
1287
1288 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1289 if the widget for the event has the same top level as a frame,
1290 return the frame.
1291 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1292 internal windows, bug #4122.
1293 (x_non_menubar_window_to_frame): Remove.
1294
5a021dd0
GM
12952009-09-02 Glenn Morris <rgm@gnu.org>
1296
1297 * buffer.c (default-major-mode): Move most of the doc from here...
1298 (major-mode): ... to here.
1299
548fe2f3
NR
13002009-08-30 Nick Roberts <nickrob@snap.net.nz>
1301
1302 * process.c (wait_reading_process_output): Keep the descriptor
1303 when pty is used by a non-child process, e.g., in I/O buffer of
1304 GDB this allows inferior to be restarted.
1305
e0840eef
EZ
13062009-08-29 Eli Zaretskii <eliz@gnu.org>
1307
1308 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1309 both branches into one.
1310
82e98df4
SM
13112009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1312
1313 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1314 (main): Use enable-multibyte-characters rather than
1315 default-enable-multibyte-characters. Output a warning message when
1316 running a unibyte session.
1317
890617cb
YM
13182009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1319
1320 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1321 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1322 (copy_data_segment): Also copy __program_vars section.
1323 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1324 (dump_it) [LC_DYLD_INFO]: Use it.
1325
1326 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1327
e7adeadc
EZ
13282009-08-28 Eli Zaretskii <eliz@gnu.org>
1329
1330 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1331 $(SRC)/buildobj.h.
1332 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1333 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1334 $(SRC)/buildobj.h.
1335 (clean): Add buildobj.h.
1336
3ed8bbdc
TZ
13372009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1338
1339 * print.c (print_object): Set escapeflag to 1 when printing
1340 hashtable keys and values.
1341
155a6764
SM
13422009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1343
1344 * lread.c (read_integer): Use doubles (and potentially return a float
1345 number) as we do in string-to-number.
1346 (read1): Use strtol to read integers, signal errors on strtol's
1347 overflow and use floats if strtol's output is too large for
1348 Elisp integers.
1349
877610de
EZ
13502009-08-27 Eli Zaretskii <eliz@gnu.org>
1351
1352 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1353 (make-buildobj-SH): Fix last change.
1354 (SRC): Move to before where it's first used.
1355
ef73e7be
KH
13562009-08-27 Kenichi Handa <handa@m17n.org>
1357
550c8289
KH
1358 * process.c (send_process): Use encode_coding_object instead of
1359 encode_coding_string to perform eol-conversion even if the string
1360 is unibyte.
1361
60afa08d
KH
1362 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1363 character.
1364
ef73e7be 1365 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1366 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1367
7b3a82d7
DN
13682009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1369
5654bf63
DN
1370 * callproc.c (Fcall_process): Remove always true #if.
1371
7b3a82d7
DN
1372 * lisp.h: Replace #if 0 code for checking with text pointing to
1373 the --enable-checking configure flag.
1374
1375 * emacs.c (main): Mention the --enable-profiling configure flag
1376 instead of using CFLAGS.
1377
878bde49
KR
13782009-08-26 Ken Raeburn <raeburn@raeburn.org>
1379
1380 * Makefile.in (buildobj.h): New target.
1381 (doc.o): Depend on it.
1382 (temacs${EXEEXT}): Don't generate buildobj.lst.
1383 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1384 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1385 ($(BLD)/doc.$(O)): Depend on it.
1386 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1387 provided by Eli Zaretskii.)
1388 ($(TEMACS)): Don't generate buildobj.lst.
1389 * doc.c: Include buildobj.h.
1390 (buildobj): New static variable.
1391 (Fsnarf_documentation): Use it, instead of opening and reading
1392 buildobj.lst.
1393
1574224c
MA
13942009-08-25 Michael Albinus <michael.albinus@gmx.de>
1395
1396 * dbusbind.c (Fdbus_call_method)
1397 (Fdbus_call_method_asynchronously): Use English numeric format for
1398 timeout values in doc string.
1399
d9da2f45
KH
14002009-08-25 Kenichi Handa <handa@m17n.org>
1401
ef73e7be
KH
1402 * alloc.c (mark_char_table): New function.
1403 (mark_object): Use mark_char_table for a char-table.
1404
d9da2f45
KH
1405 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1406 (CHAR_TABLE_REF): Use it.
1407
c8edcc01
KR
14082009-08-23 Ken Raeburn <raeburn@raeburn.org>
1409
1410 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1411 before invoking the newly build emacs to check for load-path
1412 shadowing.
1413
7763401b
GM
14142009-08-22 Glenn Morris <rgm@gnu.org>
1415
1416 * Makefile.in (bootstrap_exe): New variable.
1417 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1418 Use ${bootstrap_exe}.
1419
729eadda
EZ
14202009-08-22 Eli Zaretskii <eliz@gnu.org>
1421
1422 * coding.h (encode_coding_string): Don't encode unibyte strings.
1423 (Bug#4047)
1424
eb4c6ace
MA
14252009-08-22 Michael Albinus <michael.albinus@gmx.de>
1426
1427 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1428
1429 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1430 intended as hotfix only.
1431 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1432
36e34d1b
AR
14332009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1434
1435 * nsterm.m (ns_get_color): Update documentation properly for last
1436 change, and clean up loose ends in the code left by it. Fix
1437 longstanding bug with 16-bit hex parsing, and add support for
1438 yet another X11 format (rgb:r/g/b) for compatibility.
1439 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1440 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1441
f983eb8a
SM
14422009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1443
1444 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1445
3f56d3c6
MA
14462009-08-20 Michael Albinus <michael.albinus@gmx.de>
1447
1448 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1449 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1450 (xd_initialize, xd_pending_messages): Check, whether
1451 $DBUS_SESSION_BUS_ADDRESS is set.
1452
fb641d68
YM
14532009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1454
1455 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1456
1457 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1458
cf59a374
GM
14592009-08-20 Glenn Morris <rgm@gnu.org>
1460
1461 * emacs.c (system-type): Doc fix.
1462
1373f3be
SM
14632009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1464
1465 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1466 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1467
058ed861
MA
14682009-08-18 Michael Albinus <michael.albinus@gmx.de>
1469
1373f3be
SM
1470 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1471 New functions.
058ed861
MA
1472 (xd_initialize): Revert change from 2009-08-16.
1473
563a866e 14742009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1475
1476 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1477 font-group vector, return nil.
5fc05db0 1478
e42bdf01
CY
14792009-08-17 Chong Yidong <cyd@stupidchicken.com>
1480
1481 * process.c (status_notify): Don't perform redisplay.
1482 (Fdelete_process, list_processes_1, process_send_signal):
1483 Expliticly perform redisplay.
1484 (wait_reading_process_output): Always check process status, but
1485 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1486
4230ab74
KR
14872009-08-17 Ken Raeburn <raeburn@raeburn.org>
1488
1373f3be 1489 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1490 (XFLOAT_INIT): New macro for storing a float value.
1491 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1492 * fns.c (sxhash): Copy out the value of a float in order to
1493 examine its bytes.
1494 * dbusbind.c (xd_append_arg): Likewise.
1495
4230ab74
KR
1496 * emacs.c (main): Don't call syms_of_data twice.
1497
a0645cdd
MA
14982009-08-16 Michael Albinus <michael.albinus@gmx.de>
1499
1500 * dbusbind.c (xd_initialize): Add connection file descriptor to
1501 input_wait_mask, in order to let select() detect, whether a new
1502 message has been arrived.
ca4f31ea 1503 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1504
485db0ba
MA
15052009-08-15 Michael Albinus <michael.albinus@gmx.de>
1506
1373f3be
SM
1507 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1508 New functions.
485db0ba
MA
1509
1510 * lisp.h (xd_pending_messages): Declare.
1511
1512 * keyboard.c (readable_events): Call xd_pending_messages.
1513
b5b98ff4
CY
15142009-08-15 Chong Yidong <cyd@stupidchicken.com>
1515
1373f3be 1516 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1517
f8354c6e
CY
1518 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1519
b5b98ff4
CY
1520 * buffer.c (set_buffer_internal_1)
1521 (swap_out_buffer_local_variables): Check for unbound local
1522 variables (Bug#4138).
1523
8b9fc636
EZ
15242009-08-14 Eli Zaretskii <eliz@gnu.org>
1525
1526 * process.c (create_pty): Fix last change.
1527
ce959360
CY
15282009-08-13 Chong Yidong <cyd@stupidchicken.com>
1529
1530 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1531 (xbm_load_image): Caller changed.
64b807c9 1532 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1533
c7baf7e9
NR
15342009-08-13 Nick Roberts <nickrob@snap.net.nz>
1535
1536 * process.c (create_pty): New function.
1537 (Fstart_process): Use it to allow Emacs to just associate a pty
1538 with the buffer. See associated change in gdb-mi.el.
1539 (list_processes_1): Deal with no program name.
1540 (start_process_unwind): Use pid == -2 to mean no process.
1541
1ac9108a
SM
15422009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1543
1544 * cmds.c (nonundocount): New global variable.
1545 (keys_of_cmds): Initialize it.
1546 (Fself_insert_command): Use it to combine upto 20 sequential chars
1547 into a single undo entry, just like the Qself_insert_command code in
1548 keyboard.c does.
1549 Call frame_make_pointer_invisible, also like the Qself_insert_command
1550 code in keyboard.c does.
1551 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1552 than its own local replacement for it.
1553
e267324c
KR
15542009-08-10 Ken Raeburn <raeburn@raeburn.org>
1555
1ac9108a 1556 * fns.c (concat): Don't re-set string length to its current value.
77437343 1557
1ac9108a
SM
1558 * coding.h (decode_coding_string, encode_coding_string):
1559 Use SBYTES macro.
f0bed503 1560
1ac9108a 1561 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1562 (doprnt): Merge with doprnt1, discarding lispstrings code.
1563 * lisp.h (doprnt_lisp): Don't declare.
1564
416e006d
JL
15652009-08-07 Juri Linkov <juri@jurta.org>
1566
1567 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1568
6f7d5780
DN
15692009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1570
1571 * print.c (syms_of_print): Undo previous change.
1572
f19a0f5b
TZ
15732009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1574
1575 * lread.c (read1, syms_of_lread): Read hashtables back from the
1576 readable format.
1577
1578 * print.c (print_preprocess, print_object): Print hashtables fully
1579 and readably.
1580 (syms_of_print): Provide 'hashtable-print-readable.
1581
b9173dc2
AR
15822009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1583
1584 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1585 no family set.
1586 (nsfont_open): Handle case when entity has no family.
1587
1586503c
AR
15882009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1589
1590 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1591 element, not a list, for match case.
1592
087048cd
KH
15932009-07-28 Kenichi Handa <handa@m17n.org>
1594
1595 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1596 rigidly.
1597
1598 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1599 font_parse_xlfd. Check font properties more rigidly.
1600
780c2506
DN
16012009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1602
31fd7c5c
JB
1603 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1604 bsd-common.h.
780c2506 1605
a8c0cc18
KH
16062009-07-27 Kenichi Handa <handa@m17n.org>
1607
1608 * xfaces.c (face_with_height): Call font_clear_prop.
1609
4fbe2306
CY
16102009-07-26 Chong Yidong <cyd@stupidchicken.com>
1611
111d9af3
CY
1612 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1613
1614 * xterm.c (x_term_init): Use Qx.
1615
4fbe2306
CY
1616 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1617
1ac9108a 1618 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1619 (ns_get_color): Revert 2009-07-16 change.
1620
beb0b7f9
EZ
16212009-07-25 Eli Zaretskii <eliz@gnu.org>
1622
1623 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1624 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1625
2baf5e76
KR
16262009-07-25 Ken Raeburn <raeburn@raeburn.org>
1627
1ac9108a
SM
1628 * coding.h (decode_coding_string, encode_coding_string):
1629 Use SCHARS macro.
8890e5f5 1630
2baf5e76 1631 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1632 (load_depth): Delete.
2baf5e76
KR
1633 (Qload_in_progress): New variable.
1634 (load_unwind): Don't reference load_depth or load_in_progress.
1635 (Fload): Likewise; specbind Qload_in_progress instead.
1636 (init_lread): Don't initialize load_depth.
1637 (syms_of_lread): Initialize and protect Qload_in_progress.
1638
1395c6f5
AR
16392009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1640
1641 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1642
4e2f36cf
AR
16432009-07-23 Yavor Doganov <yavor@gnu.org>
1644
1645 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1646
5dd9a6f7
AR
16472009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1648
1649 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1650 Bugs 3792, 3720, 2402.
1651 (ns_lookup_indexed_color): Check for bad index.
1652 (ns_index_color): Init unused slot to 0.
1653 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1654 Bug 3714, possibly 3082.
5dd9a6f7 1655
c902b920
JR
16562009-07-22 Jason Rumney <jasonr@gnu.org>
1657
1ac9108a
SM
1658 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1659 Position IME window at cursor (Bug#2570).
c902b920
JR
1660 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1661 (globals_of_w32fns): Dynamically load functions required above.
1662
1663 * w32term.c (w32_draw_window_cursor): Send message to reposition
1664 any IME window.
1665
090101cf
CY
16662009-07-21 Chong Yidong <cyd@stupidchicken.com>
1667
1668 * fileio.c: Revert 2009-07-16 changes.
1669 (Vauto_save_include_big_deletions): New variable.
1670 (Fdo_auto_save): Disable auto-save only if
1671 auto-save-include-big-deletions is nil.
1672
e6583e3d
CY
16732009-07-21 Chong Yidong <cyd@stupidchicken.com>
1674
1675 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1676 the overflowed pixels into account (Bug#3879).
1677
ece435a5
KR
16782009-07-21 Ken Raeburn <raeburn@raeburn.org>
1679
1680 * lread.c (load_depth): New variable.
1681 (Fload, load_unwind, init_lread): Set it to the load recursion
1682 depth; set load_in_progress as a simple boolean based on the
1683 current load_depth. (Bug#3892)
1684
40b2d973
AR
16852009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1686
1687 * nsfont.m (ns_has_attribute): Remove.
1688 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1689
10be7e0d
JL
16902009-07-18 Juri Linkov <juri@jurta.org>
1691
1692 * process.c (Fset_process_query_on_exit_flag): Mention killing
1693 a buffer in docstring.
1694
fa055055
KH
16952009-07-17 Kenichi Handa <handa@m17n.org>
1696
1697 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1698
042f7b69
YM
16992009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1700
1701 * nsfns.m (Fns_set_alpha): Remove function.
1702 (syms_of_nsfns): Don't defsubr it.
1703
1704 * nsterm.m (ns_get_color): Remove incompatible color formats.
1705 (ns_color_to_lisp): Generate #rrggbb color format string.
1706
4be941e3
RS
17072009-07-16 Richard Stallman <rms@gnu.org>
1708
1709 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1710 (Fset_buffer_auto_saved): Handle save_length = -2.
1711
4e6b227d
CY
17122009-07-16 Chong Yidong <cyd@stupidchicken.com>
1713
1714 * xterm.c (Qx_gtk_map_stock): New var.
1715
1716 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1717 of calling intern each time.
1718
a1856973
YM
17192009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1720
1721 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1722 does tiling.
1723
1724 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1725
497e54d8
KH
17262009-07-14 Kenichi Handa <handa@m17n.org>
1727
72d36834
KH
1728 * font.c (font_vconcat_entity_vectors): New function.
1729 (struct font_sort_data): New member font_driver_preference.
1730 (font_compare): Check font_driver_preference.
1731 (font_sort_entities): The format of the first argument changed.
1732 (font_delete_unmatched): Likewise.
1733 (font_list_entities): The return type changed.
1734 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1735 (font_find_for_lface): Adjuste for the above changes.
1736 Don't suppress the checking of C even if the repertory supports it.
1737 (Flist_fonts): Adjust for the above changes.
72d36834 1738
1ac9108a
SM
1739 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1740 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1741 Reject a font who has adstyle property that is different from a
1742 langname derived from registry property.
1ac9108a 1743 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1744
b6046155
EZ
17452009-07-13 Eli Zaretskii <eliz@gnu.org>
1746
1747 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1748 local copy of dirfilename.
1749
fb6b6049
KH
17502009-07-13 Kenichi Handa <handa@m17n.org>
1751
e2402a5e
KH
1752 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1753 against max_char.
1754
fb6b6049
KH
1755 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1756 calling XSYMBOL (sym).
1757
65156807
EZ
17582009-07-11 Eli Zaretskii <eliz@gnu.org>
1759
1ac9108a
SM
1760 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1761 New function.
1762 (directory_files_internal) [WINDOWSNT]:
1763 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1764 the filesystem of the directory is fast or slow.
1765
1766 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1767 file name.
1768 (is_slow_fs): New function.
1769 (stat): Use it to determine whether to issue more system calls to
1770 get accurate file attributes, when w32-get-true-file-attributes is
1771 `local'.
1772
e0ab5fcf
JD
17732009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1774
1775 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1776 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1777 parameter font-parameter as default to the font dialog.
1778
784ceded
KH
17792009-07-10 Kenichi Handa <handa@m17n.org>
1780
1781 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1782
fb8edc0b
EZ
17832009-07-09 Eli Zaretskii <eliz@gnu.org>
1784
1ac9108a 1785 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1786
fb8edc0b
EZ
1787 * w32.c (stat): Treat UNC file names as residing on remote
1788 drives. (Bug#3542)
1789
635c75b1
KH
17902009-07-09 Kenichi Handa <handa@m17n.org>
1791
1792 * fontset.c (fontset_find_font): Fix previous change.
1793
c1d5ce94
MA
17942009-07-08 Michael Albinus <michael.albinus@gmx.de>
1795
1796 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1797 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1798 error flag.
1799
edb61b39
KH
18002009-07-08 Kenichi Handa <handa@m17n.org>
1801
374bf7e4
KH
1802 * fontset.c (fontset_find_font): Fix the logic of handling
1803 charset_matched.
1804 (font_for_char): Delete unused var.
1805 (generate_ascii_font_name): Delete it.
1806
edb61b39
KH
1807 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1808
1809 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1810 (encode_coding_sjis): Fix the code range check.
1811
0f3f018c
CY
18122009-07-07 Chong Yidong <cyd@stupidchicken.com>
1813
1814 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1815 (Fexpand_file_name): Copy string data properly (Bug#3772).
1816
fcaf6f3a
JD
18172009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1818
1819 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1820 first MapNotify.
1821
6809ca75
KH
18222009-07-07 Kenichi Handa <handa@m17n.org>
1823
1824 * character.h (unibyte_has_multibyte_table): Delete extern.
1825 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1826
1827 * charset.c (Fset_charset_priority): Update charset_unibyte.
1828 (syms_of_charset): Initialize charset_unibyte.
1829
1830 * character.c (unibyte_has_multibyte_table): Delete it.
1831 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1832 charset_unibyte.
1833 (multibyte_char_to_unibyte_safe): Likewise.
1834 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1835
1ac9108a 1836 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1837 (x_produce_glyphs): Likewise.
1838
1839 * .gdbinit (xcharset): Fix the treating $arg0.
1840
ad9e2d54
EZ
18412009-07-04 Eli Zaretskii <eliz@gnu.org>
1842
1843 Emulation of `getloadavg' on MS-Windows.
1844 * w32.c: Include float.h
1845 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1846 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1847 (get_native_system_info, get_system_times): New functions.
1848 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1849 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1850 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1851 g_b_init_get_system_times, and num_of_processors.
1852
0a3472c7
JR
18532009-07-03 Jason Rumney <jasonr@gnu.org>
1854
1855 * w32term.c (w32_initialize): Use standard types.
1856
80904120
EZ
18572009-07-03 Eli Zaretskii <eliz@gnu.org>
1858
1859 * dired.c (Ffile_attributes): Decode user and group names by the
1860 locale's encoding. (Bug#3443)
1861
6978862d
DN
18622009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1863
f8d23104
DN
1864 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1865 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1866
1867 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1868
1869 * term.c (init_tty): Remove spurious #ifdef.
1870
6978862d
DN
1871 * m/mips.h: Mention this file is also used for netbsd.
1872 * m/pmax.h: Remove file.
1873
e044e4fc
JD
18742009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1875
1876 * xterm.h (struct x_display_info): Add invisible_cursor.
1877 (struct x_output): Add current_cursor.
1878
1879 * xterm.c (XTtoggle_invisible_pointer): New function.
1880 (x_define_frame_cursor): Don't define cursor if invisible or the
1881 same as before. Set current_cursor.
1882 (x_create_terminal): Set toggle_invisible_pointer_hook.
1883
1884 * xfns.c (make_invisible_cursor): New function.
1885 (x_set_mouse_color): Call make_invisible_cursor.
1886 Set current_cursor.
1887 (x_window): Set current_cursor.
1888
1889 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1890
1891 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1892 inserting a character.
1893 (read_avail_input): Call frame_make_pointer_visible.
1894
1895 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1896 (frame_make_pointer_invisible, frame_make_pointer_visible):
1897 New functions.
e044e4fc
JD
1898 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1899
1900 * frame.h: Declare frame_make_pointer_invisible and
1901 frame_make_pointer_visible.
1902 (struct frame): Add pointer_invisible.
1903
574c8efa
JD
19042009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1905
7b507248
JD
1906 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1907 frame isn't visible.
1908 (xg_frame_resized): If width/height is -1, get size of window
1909 from X server.
1910
1911 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1912 for MapNotify.
1913
835bdaa7 1914 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1915 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1916 (flush_and_sync): Reintroduce.
574c8efa 1917
3f1c6666 19182009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1919
31fd7c5c 1920 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1921
1922 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1923 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1924
1925 * frame.h: Declare Qsticky.
1926
cad9ef74
JD
1927 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1928
1929 * nsfns.m (ns_frame_parm_handlers): Ditto.
1930
1931 * frame.c: Declare Qsticky.
1932 (frame_parms): Add sticky.
1933
1934 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1935
1936 * xterm.h: Declare x_set_sticky.
1937
1938 * xterm.c (x_set_sticky): New function.
1939
69b16610
JD
1940 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1941 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1942 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1943
1944 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1945
1946 * frame.c: Qmaximized is new.
1947 (x_set_frame_parameters): Do not handle fullscreen specially.
1948 Only set width and height if explicitly set.
1949 (x_set_fullscreen): Handle Qmaximized.
1950 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1951 (syms_of_frame): Initialize Qmaximized.
1952
1ac9108a
SM
1953 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1954 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1955
1956 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1957 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1958 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1959 set gravity to NorthWestGravity when USE_GTK.
1960 (set_wm_state): New function.
31fd7c5c 1961 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1962 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1963 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1964 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1965 to x_real_positions and x_fullscreen_adjust.
1966
1967 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1968 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1969 flush_and_sync.
1970 (xg_height_changed): New function.
1971 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1972 and gtk_window_set_policy. Set frame gravity after parsing the
1973 geometry string.
3f1c6666
JD
1974 (xg_update_frame_menubar, free_frame_menubar)
1975 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1976 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1977 Remove calls to xg_frame_set_char_size.
1978
fd503d99
KH
19792009-07-01 Kenichi Handa <handa@m17n.org>
1980
1981 * keyboard.c (decode_keyboard_code): New function.
1982 (tty_read_avail_input): Decode the input bytes if necessary.
1983
1ac9108a
SM
1984 * coding.c (setup_coding_system):
1985 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1986 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1987 use Qno_conversion.
1988
24ed93fb
YM
19892009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1990
1991 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1992
99061dfc
CY
19932009-06-30 Chong Yidong <cyd@stupidchicken.com>
1994
1ac9108a 1995 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1996
ff90fbde
JR
19972009-06-30 Jason Rumney <jasonr@gnu.org>
1998
1999 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2000 is already loaded.
2001 Set user model ID if supported (bug#1849).
2002
5f445726
JM
20032009-06-29 Jim Meyering <meyering@redhat.com>
2004
2005 Remove useless if-before-xfree test.
2006 * nsfont.m (nsfont_close): Remove useless test.
2007 * term.c (delete_tty): Likewise.
2008 * w32.c (system_process_attributes): Likewise.
2009 * w32font.c (w32font_close): Likewise.
2010 * xfaces.c (x_free_gc): Likewise.
2011 * xselect.c (buffer): Likewise.
2012
b9607587
AS
20132009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2014
2015 * process.c (send_process): Keep decoded string in a local
2016 variable and protect it from GC. (Bug#3521)
2017
89ba96f4
EZ
20182009-06-28 Eli Zaretskii <eliz@gnu.org>
2019
2020 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2021 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2022
098a1589
CY
20232009-06-28 Chong Yidong <cyd@stupidchicken.com>
2024
485422be
CY
2025 * xdisp.c (start_display, handle_face_prop)
2026 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2027 (redisplay_window, try_window_id, produce_image_glyph):
2028 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2029
098a1589
CY
2030 * xterm.c (x_update_window_begin, x_new_focus_frame)
2031 (x_scroll_bar_handle_click, handle_one_xevent)
2032 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2033 (x_make_frame_visible, x_make_frame_invisible)
2034 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2035 code chunks that are now obsolete.
2036
78c38319
MA
20372009-06-28 Michael Albinus <michael.albinus@gmx.de>
2038
2039 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2040 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2041 for hours, when optimzation is enabled.
2042 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2043 (xd_read_message): Make them static.
2044
4189ed40
CY
20452009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2046
2047 * term.c (turn_on_face): Allow simultaneously bold and dim
2048 terminal faces (Bug#3530).
2049
cd9b5e16
CY
20502009-06-27 Chong Yidong <cyd@stupidchicken.com>
2051
4e23bedb
CY
2052 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2053
cd9b5e16
CY
2054 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2055 truncation glyphs (Bug#3686).
2056
07cc3c35
GM
20572009-06-27 Glenn Morris <rgm@gnu.org>
2058
2059 * m/pmax.h: Restore file, with only netbsd portions.
2060
31fd7c5c 20612009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2062
cd9b5e16 2063 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2064
42d4a64f
KH
20652009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2066
2067 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2068 the arg FORCE_SYMBOL.
2069
930fe55b 20702009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2071
2072 * fontset.c (fontset_find_font): When a usable rfont_def is found
2073 in a fallback font-group, make it the first element of the group.
2074
57ebc3fd
CY
20752009-06-24 Chong Yidong <cyd@stupidchicken.com>
2076
2077 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2078
f084f942
KH
20792009-06-24 Kenichi Handa <handa@m17n.org>
2080
2081 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2082 set for C.
2083 (fontset_font): Record the availability of a font for C both in
2084 the realized fontsets of the current one and the default one.
2085
2f686c87
DN
20862009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2087
2088 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2089 conditional, it is always defined on AIX.
2090
666e158e
MB
20912009-06-23 Miles Bader <miles@gnu.org>
2092
2093 * window.c (Vrecenter_redisplay): New variable.
2094 (syms_of_window): Initialize it.
2095 (Qtty): New extern declaration.
2096 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2097
c6da7cd2
JM
20982009-06-23 Jim Meyering <meyering@redhat.com>
2099
1ac9108a
SM
2100 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2101 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2102 pointer dereferences are guaranteed to be valid.
c6da7cd2 2103
678dca3d
KH
21042009-06-23 Kenichi Handa <handa@m17n.org>
2105
74d75424
KH
2106 * emacs.c (main): Call init_font ().
2107
2108 * font.h (Vfont_log): Extern it.
2109 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2110
2111 * font.c (font_sort_entities, font_list_entities)
2112 (font_matching_entity, font_open_entity)
2113 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2114 (Vfont_log): Delete static.
2115 (font_log_env_checked): Delete this variable.
2116 (font_add_log): Don't check font_log_env_checked.
2117 (font_deferred_log): Check Vfont_log.
2118 (init_font): New function.
2119
678dca3d
KH
2120 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2121
2122 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2123
2124 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2125
2126 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2127
2128 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2129 (face_for_char): Don't call font_deferred_log here.
2130 (font_for_char): Likewise.
2131
8a668709
CY
21322009-06-22 Chong Yidong <cyd@stupidchicken.com>
2133
9a01ee33
CY
2134 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2135 rather than its background_width for drawing the overline and
2136 underline (Bug#489).
2137
2138 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2139 rather than its background_width for drawing the overline and
2140 underline (Bug#489).
ec7c9926
CY
2141 (xg_default_icon_file): New variable.
2142 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2143 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2144
8a668709
CY
2145 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2146 (load_overlay_strings): Remove externs.
2147 (fast_find_position): Function deleted.
2148 (mouse_face_from_buffer_pos): New function, based on
2149 fast_find_position. Correctly handle before-strings,
2150 display-strings, and after-strings (Bug#1220).
2151 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2152
4d4c02d8
CY
21532009-06-21 Chong Yidong <cyd@stupidchicken.com>
2154
1ac9108a 2155 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2156 (move_it_in_display_line_to, move_it_in_display_line_to)
2157 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2158
70243478
CY
21592009-06-21 Chong Yidong <cyd@stupidchicken.com>
2160
2161 * Branch for 23.1.
2162
13087e59
JR
21632009-06-21 Jason Rumney <jasonr@gnu.org>
2164
2165 * w32term.c (keyboard_codepage): New static variable.
2166 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2167 (w32_read_socket) [WM_CHAR]: Use it to decode character
2168 input (bug#3237).
2169 (w32_initialize): Initialize it.
2170 (codepage_for_locale): New function.
2171
4735b74e
KR
21722009-06-20 Ken Raeburn <raeburn@raeburn.org>
2173
2174 * process.c (status_message): Pass Faset index argument as a lisp
2175 object, so as to work with USE_LISP_UNION_TYPE.
2176
0e727afa
YM
21772009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2178
2179 * coding.c (Ffind_coding_systems_region_internal):
2180 Cache checked characters.
2181
cf299835
KH
21822009-06-18 Kenichi Handa <handa@m17n.org>
2183
1ac9108a 2184 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2185
90f20d94
AS
21862009-06-18 Andreas Schwab <aschwab@redhat.com>
2187
2188 * xdisp.c (redisplay_internal): Check that the frame is still
2189 live after redisplay of its windows.
2190 (redisplay_windows): Check that the window is still live.
2191
7f1faf1c
KH
21922009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2193
2194 * coding.c (detect_coding_utf_16): Fix previous change.
2195
cc13543e
KH
21962009-06-16 Kenichi Handa <handa@m17n.org>
2197
2198 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2199 UTF-16 by checking the dispersion of Eth and Oth bytes.
2200
977b85f4
AS
22012009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2202
2203 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2204
66bd43d1
KH
22052009-06-15 Kenichi Handa <handa@m17n.org>
2206
2207 * process.c (status_message): Fix previous change. Be sure to
2208 decode a localized string.
2209
cb5ca9c5
YM
22102009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2211
2212 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2213 add comment explaining why.
2214
ec7709ba 22152009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2216
ec7709ba 2217 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2218
4b7f335c
AR
22192009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2220
2221 * nsfont.m (ns_attribute_value): Remove.
2222 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2223 (ns_has_attribute): Shrink the normal range.
2224 (ns_findfonts): Don't worry about requested spec in determining
2225 need for synthItal.
e41820ee 2226 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2227
73b26103
SZ
22282009-06-14 Seiji Zenitani <zenitani@mac.com>
2229
2230 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2231
5753e4da
KH
22322009-06-11 Kenichi Handa <handa@m17n.org>
2233
2234 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2235 overhang for the static composition case.
2236
3561b671
KH
22372009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2238
5753e4da
KH
2239 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2240 overhang for the automatic composition case.
2241
3561b671
KH
2242 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2243 composition case.
2244
852bbd41
CY
22452009-06-10 Chong Yidong <cyd@stupidchicken.com>
2246
2247 * xdisp.c (get_next_display_element): When handling wrap-prefix
2248 and line-prefix, treat \n as a control character (bug#3502).
2249
9903d1e6
KH
22502009-06-10 Kenichi Handa <handa@m17n.org>
2251
2252 * font.c (font_parse_family_registry): Fix for one-char foundry.
2253 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2254
0bcbaaaa
CY
22552009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2256
2257 * process.c (status_message): Fix handling of multibyte signal
2258 string (Bug#3499).
2259
40aa3f13
JM
22602009-06-09 Jim Meyering <meyering@redhat.com>
2261
1f80c7e2
CY
2262 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2263 color name is missing.
40aa3f13 2264
72d51285
KH
22652009-06-09 Kenichi Handa <handa@m17n.org>
2266
2267 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2268 FROM-CODE and TO-CODE are codepoints of CHARSET.
2269
c1d04d84
AR
22702009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2271
2272 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2273
22742009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2275
2276 Changes to support :script/:lang/:otf in NS font driver.
2277 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2278 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2279 indicate not part of font driver interface, and change callers.
2280 (ns_get_family): Remove pointless null check.
2281 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2282 ns_spec_to_descriptor, ns_descriptor_to_entity.
2283 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2284 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2285 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2286 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2287 (ns_get_req_script, ns_accumulate_script_ranges)
2288 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2289 New functions.
2290 (nsfont_list, nsfont_match): Use ns_findfonts.
2291 (nsfont_open): Use font descriptor instead of traits.
2292 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2293 (dump_glyphstring): Rename to ns_dump_glyphstring.
2294
c7eb9816
AR
2295 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2296
c1d04d84
AR
2297 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2298
2299 * fontset.c (fontset_from_font): Remove NS-specific code.
2300
ec7709ba 23012009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2302
2303 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2304 nonactive windows.
2305
31fd7c5c 23062009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2307
1ac9108a 2308 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2309
68852c13 23102009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2311
2312 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2313
6756cd1d
CY
23142009-06-07 Chong Yidong <cyd@stupidchicken.com>
2315
2316 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2317 account for the overflowing of newlines into the last glyph on the
2318 display line (Bug#3482).
2319
28bf482a
DR
23202009-06-05 David Reitter <david.reitter@gmail.com>
2321
ec7709ba
JB
2322 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2323 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2324 Fns_selection_exists_p, Fns_selection_owner_p.
2325
fdb55376
JR
23262009-06-03 Jason Rumney <jasonr@gnu.org>
2327
2328 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2329 available. (Bug#3379)
2330
05129fbe
KH
23312009-05-29 Kenichi Handa <handa@m17n.org>
2332
1ac9108a
SM
2333 * coding.c (get_translation_table):
2334 Check Venable_character_translation.
05129fbe 2335
ec7709ba 23362009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2337
ec7709ba
JB
2338 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2339 (x_make_frame_visible): Move frame to front rather than calling
15891144 2340 ns_raise_frame().
ec7709ba 2341 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2342 isn't key window.
ec7709ba 2343 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2344 drawRect may be called by NSView even if the frame is hidden.
2345
ec7709ba
JB
2346 * nsfns.m (Fx_create_frame): Follow other ports in
2347 determining visibility; default to t. Ensure async_visible is set.
15891144 2348
21f73755
EZ
23492009-05-23 Eli Zaretskii <eliz@gnu.org>
2350
2351 * dired.c (Ffile_attributes): Doc fix.
2352
34001e41
CY
23532009-05-22 Chong Yidong <cyd@stupidchicken.com>
2354
2355 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2356
46306a17
SM
23572009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2358
2359 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2360 and xfont_scratch_props.
2361 (syms_of_xfont): Do it here instead.
2362 (xfont_find_ccl_program): Delete, unused.
2363 (xfont_open): Delete unused var `i'.
2364
ef6e0694
KH
23652009-05-21 Kenichi Handa <handa@m17n.org>
2366
2367 * fontset.c (Qlatin): Don't make it static.
2368
46306a17
SM
2369 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2370 New functions.
ef6e0694
KH
2371 (xfont_scripts_cache, xfont_scratch_props): New variables.
2372 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2373 (xfont_list_pattern): Argument changed. Callers changed.
2374 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2375 (xfont_list): Don't reject a font spec with :script property.
2376 (xfont_has_char): Fix setting of encoding.
2377 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2378 xfont_scratch_props.
2379
23802009-05-19 Kenichi Handa <handa@m17n.org>
2381
46306a17 2382 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2383 Callers changed.
2384
23852009-05-18 Kenichi Handa <handa@m17n.org>
2386
2387 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2388
ac71ced7
SM
23892009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2390
2391 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2392 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2393
1c6d1051
YM
23942009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2395
2396 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2397 (x_delete_terminal): Dissociate resource database from display and
2398 then call XrmDestroyDatabase before closing display.
2399
9b9b779c
AR
24002009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2401
2402 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2403 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2404 whether selected frame is viable before raising it (based on patch
2405 by David Reitter), and improve commentary.
2406 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2407
cccd42d5
KH
24082009-05-15 Kenichi Handa <handa@m17n.org>
2409
2410 * font.c (Ffont_spec): Check arguments.
2411
337fbd17
CY
24122009-05-14 Chong Yidong <cyd@stupidchicken.com>
2413
2414 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2415 weight when testing attributes (Bug#3282).
2416
47a6002f
JD
24172009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2418
2419 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2420 what we expect to get in the next ConfigureNotify event.
2421
9cb363db
YM
2422 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2423 before Xft one (Bug#1696).
2424
b9126609
CY
24252009-05-07 David Reitter <david.reitter@gmail.com>
2426
2427 * nsfns.m (Fx_display_planes): Compute bitplanes using
2428 NSBitsPerPixelFromDepth (Bug#3207).
2429
27a69fd9
CY
24302009-05-10 Chong Yidong <cyd@stupidchicken.com>
2431
2432 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2433
00f37552
TTN
24342009-05-10 Ulrich Mueller <ulm@gentoo.org>
2435
2436 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2437
2d82a920
DR
24382009-05-07 David Reitter <david.reitter@gmail.com>
2439
ec7709ba
JB
2440 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2441 Respect mouse face background.
2d82a920 2442
46b0d52d
DR
24432009-05-07 David Reitter <david.reitter@gmail.com>
2444
ec7709ba
JB
2445 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2446 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2447 in ns_update_begin and ns_update_end.
2448
ce1b23bb
SM
24492009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2450
5996e1b7
SM
2451 * nsfns.m (ns_get_screen): Rewrite.
2452 Don't presume selected-frame is of type `ns'.
2453
ba98e3a0
SM
2454 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2455 all drivers.
2456
ce1b23bb
SM
2457 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2458
bcda200f
YM
24592009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2460
2461 * keyboard.h (add_user_signal): Fix typo in extern.
2462
2463 * lisp.h (add_user_signal): Remove extern.
2464
2465 * unexelf.c (unexec): Consider a section to precede the .bss section
2466 if its addresses overlap that of .bss.
2467 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2468 instead of dumping process.
2469
864660a2
SM
24702009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2471
2472 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2473
50da4e56
SM
24742009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2475
2476 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2477
51520a1a
DN
24782009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2479
2480 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2481 any statements.
2482
409ea3a1
AS
24832009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2484
59c4c60f
AS
2485 * process.c (read_process_output): Make sure the current buffer is
2486 always restored.
2487
409ea3a1
AS
2488 * coding.c (record_conversion_result): Don't modify
2489 Vlast_code_conversion_error for successful result.
2490 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2491
56f00ed2
KH
24922009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2493
2494 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2495 (load_charset_map): Remove unnecessary code.
56f00ed2 2496
4491c9d2
DR
24972009-04-30 David Reitter <david.reitter@gmail.com>
2498
35f5b128 2499 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2500 through f24.
2501
6970f632
CY
25022009-04-30 Chong Yidong <cyd@stupidchicken.com>
2503
2504 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2505
2506 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2507 face_at_buffer_position.
2508 (face_before_or_after_it_pos, get_next_display_element)
2509 (note_mouse_highlight): Update face_at_buffer_position call.
2510
2511 * term.c (term_mouse_highlight):
2512 * msdos.c (IT_note_mouse_highlight):
2513 * fontset.c (Finternal_char_font):
35f5b128 2514 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2515
2516 * dispextern.h (face_at_buffer_position): Update prototype.
2517
0c616f63
KH
25182009-04-30 Kenichi Handa <handa@m17n.org>
2519
35f5b128 2520 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2521
ad3aaf33
AS
25222009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2523
2524 * callproc.c (Fcall_process): Fix GC protection. Make sure
2525 current buffer is always restored.
2526
c3c963a0
YM
25272009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2528
2529 * atimer.c (init_atimer): Also clear stopped_atimers.
2530
2531 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2532
7e3386cb
YM
2533 * process.c (create_process): Clean up merger residues of
2534 2008-07-17 change.
2535
91f68422
CY
25362009-04-29 Ulrich Mueller <ulm@gentoo.org>
2537
2538 * lread.c (Vread_circle): New variable.
2539 (read1): Disable recursive read if Vread_circle is nil.
2540
24b34550
KH
25412009-04-29 Kenichi Handa <handa@m17n.org>
2542
2543 * fontset.h (set_default_ascii_font): Delete extern.
2544
2545 * fontset.c (set_default_ascii_font): Delete this unused function.
2546
2547 * frame.c (x_set_font): When ARG is a font-object, check if the
2548 font-object matches with the ASCII font-spec of the frame's
9c358bda 2549 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2550
77bf07e1
AS
25512009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2552
2553 * fns.c (Flocale_info): Protect vector from GC during decoding.
2554
2555 * process.c (Fstart_process): Protect argv strings from GC during
2556 encoding.
2557
2c55aacf
AS
25582009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2559
2560 * sysdep.c: Include <ctype.h>.
2561
b892d3c9
DR
25622009-04-27 David Reitter <david.reitter@gmail.com>
2563
35f5b128 2564 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2565 Remove commented-out code.
2566
9d0644c4
JB
25672009-04-26 Johan Bockgård <bojohan@gnu.org>
2568
2569 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2570
b7053016
JR
25712009-04-25 Jason Rumney <jasonr@gnu.org>
2572
2573 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2574
4e8231f3
YM
25752009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2576
2577 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2578 Swap bytes in short integer if fringe bitmap width > 8.
2579
493dcf2c
KH
25802009-04-23 Kenichi Handa <handa@m17n.org>
2581
2582 * xfaces.c (Fx_list_fonts): If a font size is specified in
2583 PATTERN, set it in returned scalable fonts.
2584
401e9e57
CY
25852009-04-22 Chong Yidong <cyd@stupidchicken.com>
2586
708e05dc
CY
2587 * keyboard.c (Fset_input_meta_mode): Doc fix.
2588
2589 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2590
1ac9108a 2591 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2592
2593 * coding.c (Fterminal_coding_system): Doc fix.
2594
2595 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2596 (Fx_display_pixel_height, Fx_display_planes)
2597 (Fx_display_color_cells, Fx_server_max_request_size)
2598 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2599 (Fx_display_mm_height, Fx_display_mm_width)
2600 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2601 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2602 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2603 (check_x_display_info): Handle terminal objects instead of
2604 terminal ids.
2605
401e9e57
CY
2606 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2607 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2608 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2609 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2610
df80c7f0
KH
26112009-04-21 Kenichi Handa <handa@m17n.org>
2612
5a8f12af 2613 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2614 (font_score): Check AVGWIDTH too.
908567ef 2615
df80c7f0
KH
2616 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2617 worst case.
1ac9108a
SM
2618 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2619 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2620
705af33f
JR
26212009-04-19 Jason Rumney <jasonr@gnu.org>
2622
2623 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2624 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2625
2626 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2627 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2628 get_phys_cursor_geometry.
2629
b71ac3dd 2630 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2631 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2632 using get_phys_cursor_geometry.
2633
2634 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2635 correctly calculated.
2636
dc2933eb
JD
26372009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2638
1ac9108a
SM
2639 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2640 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2641 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2642 is deprecated.
2643
973e7849
AS
26442009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2645
2646 * font.c (font_put_frame_data): Use xfree instead of free.
2647
314d66f4
JB
26482009-04-17 Juanma Barranquero <lekktu@gmail.com>
2649
2650 * w32font.c (Qja, Qko): Remove declarations.
2651 (syms_of_w32font): Don't DEFSYM them.
2652
cf702558
CY
26532009-04-17 Chong Yidong <cyd@stupidchicken.com>
2654
2655 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2656
2657 * font.h (Qja, Qko): Extern them.
2658
2659 * ftfont.c (Qja, Qko): Remove declarations.
2660
2661 * xfont.c (Qja, Qko): Remove declarations.
2662
b50504f5
KH
26632009-04-17 Kenichi Handa <handa@m17n.org>
2664
bde25748
KH
2665 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2666 string from a vector to handle Latin-1 characters correctly.
2667
b50504f5
KH
2668 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2669 entity even if the cache hits.
2670
f4646fff
AS
26712009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2672
2673 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2674 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2675
e7deaab0
AS
2676 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2677 * lisp.h: Adjust prototypes.
2678
0a0e7d49
CY
26792009-04-16 Chong Yidong <cyd@stupidchicken.com>
2680
2681 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2682 change (Bug#3003).
2683
3c908a57
KH
26842009-04-16 Kenichi Handa <handa@m17n.org>
2685
1ac9108a 2686 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2687
2688 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2689 adstyle.
2690
2691 * ftfont.c (Qja, Qko): Don't make them static.
2692 (enum ftfont_cache_for): New enum.
2693 (fc_charset_table): Undo the previous change.
2694 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2695 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2696 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2697 non-scarable font, try to get AVERAGE_WIDTH.
2698 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2699 Change ft_face_cache from a list of a hash-table. Don't check
2700 `ja' and `ko' adstyle here.
2701 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2702 FTFONT_CACHE_FOR_CHARET.
2703 (ftfont_get_charset): Undo the previous change.
1ac9108a 2704 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2705 (ftfont_close): Likewise.
2706 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2707
2708 * font.c (font_sort_entites): Change the meaning of the arg
2709 BEST-ONLY. Don't optimize for VEC of lenght 1.
2710 (font_select_entity): Just return the value of font_sort_entites.
2711
2712 * xfaces.c (merge_face_vectors): Reflect font properties in
2713 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2714 font_clear_prop if a face attribute doesn't change.
2715
3c908a57
KH
2716 * charset.h (charset_ksc5601): Extern it.
2717
2718 * charset.c (charset_ksc5601): New variable.
2719 (Fdefine_charset_internal): Set charset_ksc5601.
2720 (init_charset_once): Initialize charset_ksc5601 to -1.
2721
d65859c3
DN
27222009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2723
2724 * fileio.c (history_delete_duplicates): Remove unused declaration.
2725
2726 * callint.c (history_delete_duplicates): New declaration.
2727 (Fcall_interactively): Remove command history duplicates when
2728 history_delete_duplicates is true.
2729
3ba010e5
EZ
27302009-04-14 Eli Zaretskii <eliz@gnu.org>
2731
2732 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2733
06f19b91
KH
27342009-04-14 Kenichi Handa <handa@m17n.org>
2735
2736 * font.c (Ffont_info): Fix docstring. Fix the second element of
2737 the returned value (bug#2949).
2738
2cce8bfc
CY
27392009-04-14 Chong Yidong <cyd@stupidchicken.com>
2740
2741 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2742
d156542d
KH
27432009-04-14 Kenichi Handa <handa@m17n.org>
2744
2745 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2746 encoding charset is ascii_compatible.
2747
2748 * charset.c (Fdefine_charset_internal): Make charset
2749 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2750 code_offset is 0, and covers all ASCII characters.
2751
86fa089e
SM
27522009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2753
2754 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2755 (ns_string_to_pasteboard_internal):
2756 * nsmenu.m (process_dialog):
2757 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2758 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2759 * lisp.h (Fx_load_color_file): Declare.
2760
a8a3728b
KH
27612009-04-13 Kenichi Handa <handa@m17n.org>
2762
1ac9108a 2763 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2764 (font_select_entity): Suppress the code to optimize for the same
2765 kind of fonts.
2766 (font_load_for_lface): Get a font that supports at least ASCII
2767 characters.
2768
2769 * ftfont.c (Qja, Qko): New variables.
2770 (fc_charset_table): Delete uniquifier data for iso8859-1.
2771 (ftfont_get_latin1_charset): New function.
2772 (get_adstyle_property): New function.
2773 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2774 bitmap fonts.
2775 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2776 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2777 `ko' or `ja'.
2778 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2779 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2780 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2781 property.
2782 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2783 (syms_of_ftfont): DEFSYM Qja and Qko.
2784
483670b5
KH
27852009-04-09 Kenichi Handa <handa@m17n.org>
2786
12b55765
KH
2787 * charset.c (map_charset_chars): For a charset of `superset'
2788 method, fix calculation of code range.
2789
483670b5
KH
2790 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2791 from the list of extra properties.
2792 (font_clear_prop): Be sure to delete `:name' font property.
2793
57d3b93b
KH
27942009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2795
b4b2c2ca
YM
2796 * dispnew.c (redraw_overlapping_rows): Fix detection of
2797 overlapping for topmost and bottommost rows.
2798
1ac9108a 2799 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2800
472c3609
JR
28012009-04-06 Jason Rumney <jasonr@gnu.org>
2802
2803 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2804
ab193662
KH
28052009-04-06 Kenichi Handa <handa@m17n.org>
2806
2807 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2808
2809 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2810
0c26f026
KH
28112009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2812
2813 * ftfont.c (ftfont_open): Fix checking of the return value of
2814 FT_Load_Char. Fix setting font->underline_thickness.
2815
e173bbce
CY
28162009-04-04 Chong Yidong <cyd@stupidchicken.com>
2817
2818 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2819 (Fterminal_parameters, Fterminal_parameter)
2820 (Fset_terminal_parameter): In doc string, refer to terminal
2821 objects rather than terminal ids.
2822
693a2698
EZ
28232009-04-04 Eli Zaretskii <eliz@gnu.org>
2824
2825 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2826 ret_lim_data. (Bug#2867)
2827
d5221487
CY
28282009-04-03 Chong Yidong <cyd@stupidchicken.com>
2829
2830 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2831 so they don't get wider than the window, matching 2006-01-23
2832 change to the partner function in xdisp.c (Bug#2800).
2833
223509a3
KH
28342009-04-03 Kenichi Handa <handa@m17n.org>
2835
2836 * print.c (print_object): Make each lowest sub_char_table start a
2837 new line (Bug#2866).
2838
74fcd0b1
KH
28392009-04-02 Kenichi Handa <handa@m17n.org>
2840
2841 * fontset.c (fontset_font): Record no-font when a fontset
2842 explicitly tells not to try another font-specs.
2843
c542407d
SM
28442009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2845
2846 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2847
e3869731
KH
28482009-03-30 Kenichi Handa <handa@m17n.org>
2849
d8d2f142
KH
2850 * fontset.c (fontset_from_font): Specify only registry in a
2851 font-spec for all characters supported by that registry.
2852
e3869731
KH
2853 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2854 even if HAVE_M17N_FLT is not defined.
2855
5da5f805
CY
28562009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2857
2858 * ftfont.c: Conditionalize prototyping and use of
2859 ftfont_variation_glyphs.
2860
ab226c50
SM
28612009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2862
9628fed7
SM
2863 * frame.c (delete_frame): Work around compiler bug.
2864
2865 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2866 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2867 Some more EMACS_INT.
2868 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2869
2870 * xdisp.c (dump_glyph): Fix typo.
2871
ae19ba7c
SM
2872 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2873 (adjust_markers_gap_motion, adjust_markers_for_delete)
2874 (adjust_markers_for_insert, adjust_point)
2875 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2876 (make_gap, copy_text, count_size_as_multibyte, insert)
2877 (insert_and_inherit, insert_before_markers)
2878 (insert_before_markers_and_inherit, insert_1)
2879 (count_combining_before, count_combining_after, insert_1_both)
2880 (insert_from_string, insert_from_string_before_markers)
2881 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2882 (insert_from_buffer_1, adjust_after_replace)
2883 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2884 (replace_range_2, del_range, del_range_1, del_range_byte)
2885 (del_range_both, del_range_2, modify_region)
2886 (prepare_to_modify_buffer, signal_before_change)
2887 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2888 for buffer positions and sizes.
2889 * lisp.h: Adjust prototypes accordingly.
2890
2891 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2892 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2893 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2894
ab226c50
SM
2895 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2896
46dfb8fb
JD
28972009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2898
2899 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2900 lines and columns so we keep the same pixel height and width.
2901
2902 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2903 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2904 (x_handle_net_wm_state): New function to update frame parameter
2905 fullscreen.
2906 (x_term_init): Initialize atoms for _NET_WM_STATE.
2907
2908 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2909
d347e494
SM
29102009-03-27 Kevin Ryde <user42@zip.com.au>
2911
2912 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2913 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2914 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2915 (Fgpm_mouse_stop): Pass that new parameter.
2916 * termhooks.h (close_gpm): Adjust prototype.
2917
84db11d6
SM
29182009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2919
c95a5008
SM
2920 * lisp.h (Fx_focus_frame): Declare.
2921
84db11d6
SM
2922 * callint.c (Fcall_interactively): For '^' just delegate the work to
2923 handle-shift-selection.
2924 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2925
0a1958d6
CY
29262009-03-24 Chong Yidong <cyd@stupidchicken.com>
2927
0bfdff23
CY
2928 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2929
0a1958d6
CY
2930 * data.c (Qinteractive_form): New variable.
2931 (Finteractive_form): Use it.
2932
2933 * eval.c (Fcommandp): Use Qinteractive_form.
2934
58aec0d6
JR
29352009-03-24 Jason Rumney <jasonr@gnu.org>
2936
2937 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2938 Calculate total size precisely. Decode environment variables
2939 before substituting. (Bug#38)
2940
553dd618
KH
29412009-03-24 Kenichi Handa <handa@m17n.org>
2942
2943 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2944 encoding (Bug#2722).
553dd618 2945
c39ea606
JD
29462009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2947
2948 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2949 that gdpy is set.
2950
bc9b2b5e
AM
29512009-03-22 Alan Mackenzie <acm@muc.de>
2952
2953 * callint.c (Finteractive): Clarify the doc string - even
2954 promptless elements need \n separators.
2955
9f995a76
JR
29562009-03-22 Jason Rumney <jasonr@gnu.org>
2957
2958 * w32term.c (syms_of_w32term): Doc fix for
2959 x-use-underline-position-properties.
2960
22749e9a
EZ
29612009-03-21 Eli Zaretskii <eliz@gnu.org>
2962
2963 * w32.c (getpwuid): Change argument type to unsigned.
2964 (struct w32_id): Change type of `rid' member to unsigned.
2965 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2966 argument ID to unsigned. All callers changed.
2967 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2968
e00553bf
EZ
29692009-03-20 Eli Zaretskii <eliz@gnu.org>
2970
2971 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2972 negative, produce a float value.
2973
2974 * dired.c (make_uid, make_gid): New functions.
2975 (Ffile_attributes): Use them to avoid negative UID and GID.
2976
f761d6b6
JB
29772009-03-20 Juanma Barranquero <lekktu@gmail.com>
2978
2979 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2980 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2981 Fix typos in docstrings.
2982
d507f8d7
KH
29832009-03-19 Kenichi Handa <handa@m17n.org>
2984
2985 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2986 changed, use font_load_for_lface to get a new font object.
2987 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2988
2989 * frame.c (x_set_font): Handle the case that ARG is a cons.
2990
c68845e0
GM
29912009-03-19 Glenn Morris <rgm@gnu.org>
2992
2993 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2994
bfa49dd1
CY
29952009-03-19 Chong Yidong <cyd@stupidchicken.com>
2996
2997 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2998
8458d4c1
KH
29992009-03-19 Kenichi Handa <handa@m17n.org>
3000
3001 * charset.c (load_charset_map_from_file): When a mapfile can't be
3002 loaded, signal an error.
3003
78e7d1fe
EZ
30042009-03-18 Eli Zaretskii <eliz@gnu.org>
3005
3006 * dired.c (Ffile_attributes): Make sure UID and GID are always
3007 positive, even if the value is too large for a positive EMACS_INT.
3008 Doc fix.
3009
3010 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3011
5da9fdfa
YM
30122009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3013
3014 * xmenu.c (xdialog_show): Move Fredisplay call ...
3015 (Fx_popup_dialog): ... here.
3016
7519c40d
SM
30172009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3018
3019 * dired.c (file_name_completion): Disable the first optimization just
3020 installed, since it is not implemented correctly.
3021
2cd298e2
SM
30222009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3023
3024 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3025 only if the entry can affect bestmatch.
2cd298e2
SM
3026 Stop the search early, as Ftry_completion already does.
3027
48d37adf
CY
30282009-03-17 Chong Yidong <cyd@stupidchicken.com>
3029
e10c9c93 3030 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3031
9286b16a
CY
30322009-03-15 Chong Yidong <cyd@stupidchicken.com>
3033
3034 * keyboard.c (parse_menu_item): Don't display remappings as menu
3035 equivalent bindings (Bug#788).
3036
f7b146dc
JR
30372009-03-15 Jason Rumney <jasonr@gnu.org>
3038
3039 * w32term.h (WM_EMACS_PAINT): New message.
3040 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3041 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3042 before passing to lisp thread. (Bug#950)
3043
f761d6b6 30442009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3045
d93f9575
CY
3046 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3047 variable as it was never reset.
3048 (ns_term_init): Remove initialization of Lisp-settable defaults
3049 and ns_expand_space.
3050 (-setPanelFromDefaultValues): Remove ns_expand_space.
3051 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3052 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3053 i.e. no additional spacing, similar to Carbon port.
3054
d93f9575
CY
3055 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3056 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3057
305018ec
JD
30582009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3059
3060 * sound.c (alsa_configure): Remove call to deprecated
3061 snd_pcm_sw_params_set_xfer_align.
3062
f761d6b6 30632009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3064
3065 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3066 after clicking in a detached tool bar.
3067 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3068
46e722a9
SM
30692009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3070
348db3dd
SM
3071 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3072 int/Lisp_Object mixup).
46e722a9 3073
a3d16f39
KH
30742009-03-13 Kenichi Handa <handa@m17n.org>
3075
3076 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3077 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3078 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3079 (set_fontset_font): Change ARG to a vector. Handle range_list in
3080 ARG correctly.
3081 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3082 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3083 the above change.
3084 (fontset_from_font): Fix previous change.
fe24f56a 3085 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3086 entry. If FONTSET is the default fontset, don't set the extra
3087 slot of the returning char-table.
3088
b066e6b6
JB
30892009-03-12 Juanma Barranquero <lekktu@gmail.com>
3090
3091 * nsfns.m (Fx_close_connection): Doc fix.
3092 (Fns_do_applescript): Reflow docstring.
3093 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3094 (Fx_display_pixel_width, Fx_display_pixel_height)
3095 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3096 Fix typos in docstrings.
3097 (Fns_set_alpha): Fix typos in error messages.
3098
d472514e 30992009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3100
d472514e 3101 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3102 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3103 were used for such events.
3104
d472514e
JB
3105 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3106 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3107
d472514e 3108 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3109 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3110
fb930676
KH
31112009-03-11 Kenichi Handa <handa@m17n.org>
3112
ff85581a
KH
3113 * font.h (font_open_by_spec): Extern it.
3114
c50b7e98
KH
3115 * font.c (font_open_by_spec): New function.
3116 (font_open_by_name): Use font_open_by_spec.
3117
fb930676
KH
3118 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3119 fontset of the frame.
3120
3121 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3122 modify the default font of frames that use this fontset.
3123 (num_auto_fontsets): New variable.
3124 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3125 name. Be sure to set FONTSET_ASCII to the correct font name.
3126 (update_auto_fontset_alist): New function.
3127
df4e8455
JB
31282009-03-11 Juanma Barranquero <lekktu@gmail.com>
3129
3130 * makefile.w32-in: Update dependencies.
3131
0a375797
AR
31322009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3133
3134 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3135
61313fa3
SM
31362009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3137
3138 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3139
b55103fb
CY
31402009-03-10 Chong Yidong <cyd@stupidchicken.com>
3141
3142 * lread.c (Feval_buffer): Doc fix.
3143
dde2559c
KH
31442009-03-09 Kenichi Handa <handa@m17n.org>
3145
3146 * charset.c (Qfile_name_handler_alist): Extern it.
3147 (load_charset_map_from_file): Temporarily bind
3148 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3149
df4e8455 31502009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3151
47f588bb
GM
3152 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3153 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3154
4ddf94bd
AR
31552009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3156
4c9bdfc2
AR
3157 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3158 (x_set_window_size): Change back to calculated method of setting
3159 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3160 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3161 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3162
fe41ae9e
AR
3163 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3164
4c9bdfc2
AR
3165 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3166 accelerator in parens under GNUstep.
3167
825d0875
KH
31682009-03-06 Kenichi Handa <handa@m17n.org>
3169
3170 These changes are to detect incorrect composition sequence without
f3b3be74 3171 looking ahead the source. (Bug#2370)
825d0875
KH
3172
3173 * coding.h: Include "composite.h".
3174 (enum compisition_state): New enum.
3175 (struct compisition_status): New struct.
3176 (struct iso_2022_spec): New member cmp_status.
3177 (struct emacs_mule_spec): New struct.
3178 (struct coding_system): New members ctext_extended_segment_len and
3179 embedded_utf_8. Change the union member
3180 spec.emacs_mule_full_support to spec.emacs_mule.
3181
3182 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3183 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3184 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3185 (ADD_COMPOSITION_DATA): New arg nbytes.
3186 (emacs_mule_char): New arg cmp_status.
3187 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3188 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3189 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3190 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3191 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3192 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3193 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3194 (EMACS_MULE_COMPOSITION_END): New macro.
3195 (emacs_mule_finish_composition): New function.
3196 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3197 (decode_coding_emacs_mule): Avoid long looking ahead while
3198 handling composition.
3199 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3200 (ENCODE_COMPOSITION_RULE): New macro.
3201 (finish_composition): New function.
3202 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3203 (DECODE_COMPOSITION_START): New implementation.
3204 (DECODE_COMPOSITION_END): Likewise.
3205 (STORE_COMPOSITION_RULE): New macro.
3206 (decode_coding_iso_2022): Avoid long looking ahead while handling
3207 composition, CTEXT extended segment, and embedded UTF-8.
3208 (setup_coding_system): For a coding of type iso-2022, reset
3209 CODING_ISO_EXTSEGMENT_LEN (coding) and
3210 CODING_ISO_EMBEDDED_UTF_8 (coding).
3211 (get_translation): Delete arguments last_block, from_nchars,
3212 to_nchars. Callers changed.
3213 (produce_chars): Don't modify charbuf. Adjusted for the change of
3214 get_translation.
98a326f7 3215 (produce_composition): Adjust for the new annotation sequence.
825d0875 3216 (handle_composition_annotation): Likewise.
98a326f7 3217 (consume_chars): Adjust for the change of get_translation.
825d0875 3218
ccbc4452
AR
32192009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3220
4ddf94bd 3221 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3222
988a7ddb
KH
32232009-03-05 Kenichi Handa <handa@m17n.org>
3224
3225 * font.c (font_select_entity): New function.
3226 (font_find_for_lface): Use font_select_entity to select a font.
3227
3228 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3229 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3230 font with C restriction.
3231
98a326f7 32322009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3233
be1bce46 3234 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3235
10ea2b82
JR
32362009-03-04 Jason Rumney <jasonr@gnu.org>
3237
2c93b248 3238 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3239 characters that have already been read. (Bug#2569)
2c93b248 3240
10ea2b82
JR
3241 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3242 Log an error message if check_image_size failed.
3243 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3244 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3245
71a0c011
EZ
32462009-03-02 Eli Zaretskii <eliz@gnu.org>
3247
3248 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3249 when decoding process output.
3250
2f63bba8
RS
32512009-03-01 Richard M Stallman <rms@gnu.org>
3252
3253 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3254
3255 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3256
0a9564cb
EZ
32572009-02-28 Eli Zaretskii <eliz@gnu.org>
3258
3259 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3260 (decode_coding_emacs_mule, decode_coding_iso_2022)
3261 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3262 (decode_coding_raw_text, decode_coding_charset)
3263 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3264 Honor inhibit-eol-conversion. (Bug #2186)
3265
449148b3
JR
32662009-02-28 Jason Rumney <jasonr@gnu.org>
3267
3268 * coding.c (detect_coding_charset): If not checking latin extra,
3269 fail on characters between 0x80 and 0xA0. (Bug#2354)
3270
a4aee864
EZ
32712009-02-28 Eli Zaretskii <eliz@gnu.org>
3272
3273 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3274 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3275
d88bee5a
GM
32762009-02-27 Glenn Morris <rgm@gnu.org>
3277
3278 * callint.c (Finteractive): Doc fix.
3279
a808f22d
KH
32802009-02-27 Kenichi Handa <handa@m17n.org>
3281
3282 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3283
caf8d60c
CY
32842009-02-27 Chong Yidong <cyd@stupidchicken.com>
3285
3286 * font.c (font_style_to_value): Set value for unknown symbols to
3287 100 instead of 255.
b61137ea
CY
3288 (weight_table, slant_table, width_table): Treat "unspecified" as
3289 the default value.
caf8d60c 3290
1a0de25c
JB
32912009-02-26 Juanma Barranquero <lekktu@gmail.com>
3292
3293 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3294
8fc45744
JB
32952009-02-25 Juanma Barranquero <lekktu@gmail.com>
3296
107bd7d1
JB
3297 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3298 error as soon as a recursive load is detected.
8fc45744 3299
f097e223
AR
33002009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3301
3302 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3303 before caching.
3304
8810a12f
KH
33052009-02-24 Kenichi Handa <handa@m17n.org>
3306
3307 * fontset.c (fontset_find_font): Fix the condition for checking
3308 unavailable font.
3309
2c7d1565
GM
33102009-02-24 Glenn Morris <rgm@gnu.org>
3311
3312 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3313 whitespace that confuses documentation.
3314
a20878b6
MB
33152009-02-23 Miles Bader <miles@gnu.org>
3316
3317 * process.c (Flist_system_processes, Fprocess_attributes)
3318 (syms_of_process): Rename `system-process-attributes' to
3319 `process-attributes'.
3320
b3b58c01
AS
33212009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3322
1b3b981b
AS
3323 * coding.h (struct coding_system): Make safe_charsets a pointer to
3324 unsigned char.
3325 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3326 being 255.
3327 (SAFE_CHARSET_P): Likewise.
3328 (setup_iso_safe_charsets): Properly setup safe_charsets.
3329 (Fdefine_coding_system_internal): Likewise.
3330 (setup_coding_system): Likewise. Remove unneeded casts.
3331 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3332 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3333 unneeded casts.
3334
b3b58c01
AS
3335 * insdel.c (del_range_2): Don't modify gap contents when called
3336 from decode_coding_object. (Bug#1809)
3337
0b6f228c
CY
33382009-02-21 Chong Yidong <cyd@stupidchicken.com>
3339
3340 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3341 Qfont_object.
3342 (Ftype_of): Recognize font objects.
3343
3344 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3345
3346 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3347 moved to data.c.
3348
52f8870b
AR
33492009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3350
3351 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3352 async_iconified. Based on a patch by Christian Lynbech
3353 <christian.lynbech@tieto.com>.
3354 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3355
7087d5e9
GM
33562009-02-20 Glenn Morris <rgm@gnu.org>
3357
3358 * syntax.c (Fskip_chars_forward): Fix doc typo.
3359
41d2ceef
CY
33602009-02-20 Chong Yidong <cyd@stupidchicken.com>
3361
3362 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3363
1a3b7ca6
CY
33642009-02-19 Chong Yidong <cyd@stupidchicken.com>
3365
3366 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3367
73cce38d
KH
33682009-02-19 Kenichi Handa <handa@m17n.org>
3369
3370 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3371 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3372
a51092ee
DN
33732009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3374
3375 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3376
c423ecca
KH
33772009-02-18 Kenichi Handa <handa@m17n.org>
3378
3379 * font.c (font_check_otf_features): Fix handling of `nil' element.
3380 (Ffont_spec): Describe :lang and :otf in the docstring.
3381
4c1958f4
AS
33822009-02-16 Andreas Schwab <schwab@suse.de>
3383
3384 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3385 string.
3386
5704f39a
KH
33872009-02-16 Kenichi Handa <handa@m17n.org>
3388
3389 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3390 (Bug#1723)
5704f39a 3391
8f0085aa
CY
33922009-02-14 Chong Yidong <cyd@stupidchicken.com>
3393
a057d86a 3394 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3395
3396 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3397 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3398
aff01dd9
EZ
33992009-02-14 Eli Zaretskii <eliz@gnu.org>
3400
3401 * msdos.c (MAX_SCREEN_BUF): New macro.
3402 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3403 Encode the entire run of glyphs sharing the same face, instead of
3404 doing that one glyph at a time (fixes a bug with displaying
3405 double-size characters).
3406
ba301db3
AR
34072009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3408
3409 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3410
3411 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3412 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3413 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3414
3415 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3416 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3417
51d861de
SM
34182009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3419
3420 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3421 invisible areas.
3422
7fed8996
JR
34232009-02-12 Jason Rumney <jasonr@gnu.org>
3424
631ea4fb
JR
3425 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3426 (add_font_entity_to_list): Call check_face_name even when family
3427 is unspecified.
3428
cb4a3e42
JR
3429 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3430 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3431 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3432
7fed8996 3433 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3434 raster fonts. (Bug#2219)
7fed8996 3435
895416e3
KH
34362009-02-12 Kenichi Handa <handa@m17n.org>
3437
3438 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3439 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3440 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3441 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3442 (find_automatic_composition): While looking forward and backward,
3443 check static composition. Fix where to stop looking forward.
3444 (composition_adjust_point): Fix checking of static composition.
3445 (Fcomposition_get_gstring): Pay attention to
1dacf998 3446 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3447
3448 * lisp.h (fast_looking_at): Extern it.
3449
3450 * search.c (fast_looking_at): New function.
3451
51d861de 3452 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3453 <struct glyph>.u.cmp.to.
3454 (append_composite_glyph): Likewise.
3455
51d861de 3456 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3457 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3458 composition.
51d861de 3459 (append_composite_glyph): Adjust for the change of
895416e3
KH
3460 <strcut glyph>.u.cmp.to.
3461
8510724d
JB
34622009-02-11 Juanma Barranquero <lekktu@gmail.com>
3463
3464 * casetab.c (init_casetab_once):
3465 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3466 * font.c (font_update_lface):
3467 * fontset.c (Fnew_fontset):
3468 * ftfont.c (ftfont_drive_otf):
3469 * xfont.c (xfont_open):
3470 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3471
294fa707
SM
34722009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3473
3474 * fileio.c (Fwrite_region): !NILP -> CONSP.
3475
b5bfebec
AS
34762009-02-10 Andreas Schwab <schwab@suse.de>
3477
3478 * process.c (send_process): Properly relocate pointer into data
adab88bd 3479 when using encoded data. (Bug#2272)
b5bfebec 3480
cb84a2be
KH
34812009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3482
3483 * coding.c (detect_coding_charset): Fix previous change.
3484
89e09428
JR
34852009-02-08 Jason Rumney <jasonr@gnu.org>
3486
3487 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3488 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3489
4470a277
AS
34902009-02-07 Andreas Schwab <schwab@suse.de>
3491
3492 * unexelf.c (unexec): Fix error message.
3493
3175b12a
AR
34942009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3495
3496 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3497 when modal window is active. (Bug #2152)
3175b12a
AR
3498 (applicationShouldTerminate:): Remove now-unneeded while loop
3499 around NSRunAlertPanel.
3500
3501 * nsmenu.m (popupSession): New file-global variable.
3502 (pop_down_menu): End the popupSession before closing dialog.
3503 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3504 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3505 don't query NSApp for events (just sleep instead).
3506
8434d0b8
EZ
35072009-02-07 Eli Zaretskii <eliz@gnu.org>
3508
51d861de
SM
3509 * coding.c (syms_of_coding) <translation-table-for-input>:
3510 Modify doc string to discourage use for character code unification.
8434d0b8 3511
aa82edfd
CY
35122009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3513
3514 * atimer.c (run_timers): Update pending_atimers.
3515
2d283c7c
CY
35162009-02-06 Chong Yidong <cyd@stupidchicken.com>
3517
eb306cab
CY
3518 * image.c (svg_load_image): Fix last change.
3519
2d283c7c
CY
3520 * xfns.c (Fx_create_frame): Signal an error if no font is
3521 found (Bug#2147).
3522
4d8e170e
JB
35232009-02-05 Juanma Barranquero <lekktu@gmail.com>
3524
3525 * character.c (syms_of_character) <script-representative-chars>:
3526 Fix typo in docstring.
3527
c96169a0
AR
35282009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3529
3530 * nsmenu.m (pop_down_menu): New function.
3531 (ns_popup_dialog): Call it on unwind.
3532 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3533 call timer_check() (Bug#2154).
3534 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3535 handling_signal is set.
3536 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3537
31fd7c5c 3538 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3539
3540 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3541
3542 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3543
51d861de
SM
3544 * keyboard.c (poll_for_input_1, handle_async_input):
3545 Set handling_signal under HAVE_NS.
c96169a0 3546
aacd8ba1
GM
35472009-02-04 Glenn Morris <rgm@gnu.org>
3548
3549 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3550
4cb75c4b
KH
35512009-02-04 Kenichi Handa <handa@m17n.org>
3552
3553 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3554
3555 * charset.c (Fchar_charset): New optional arg restriction.
3556
3557 * coding.h (coding_system_charset_list): Extern it.
3558
3559 * coding.c (coding_system_charset_list): New function.
3560
3561 * composite.c: Include coding.h and termhooks.h.
3562 (composition_gstring_p): Fix for the terminal case.
3563 (composition_gstring_width): Likewise.
3564 (fill_gstring_body): Likewise.
3565 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3566 the frame.
3567 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3568 is within a composition.
867d4bb3 3569 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3570
3571 * term.c (encode_terminal_code): Fix handling of composition.
3572 (produce_composite_glyph): For static composition, get pixel_width
3573 from struct composition.
3574
826ba17e
AS
35752009-02-02 Andreas Schwab <schwab@suse.de>
3576
3577 * unexelf.c (unexec): Handle unaligned bss offset.
3578
8ad093db
AR
35792009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3580
3581 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3582 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3583
8ad093db
AR
3584 * keyboard.c (handle_interrupt): Don't call
3585 quit_throw_to_read_char() under NS.
d0a76a6e 3586
8ad093db
AR
3587 * blockinput.h: Remove NS-specific code.
3588
4d18a7a2
DN
35892009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3590
db878925
DN
3591 * dispnew.c (window_change_signal): Don't try to get the size of a
3592 suspended tty frame.
3593 * term.c (Fresume_tty): Resize if the size has changed while the
3594 tty was suspended.
3595
4d18a7a2
DN
3596 * alloc.c (mark_stack): Properly conditionalize previous change.
3597
8984df7c
JB
35982009-01-30 Juanma Barranquero <lekktu@gmail.com>
3599
3600 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3601 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3602 Remove; this code is not used on Windows.
3603
75f4f1ac
EZ
36042009-01-30 Eli Zaretskii <eliz@gnu.org>
3605
3606 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3607 EOLs that also has stray ^M characters.
3608
07a1e794
JB
36092009-01-30 Juanma Barranquero <lekktu@gmail.com>
3610
3611 * atimer.c (run_timers, alarm_signal_handler):
3612 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3613 * w32inevt.c (w32_console_read_socket):
3614 * w32term.c (w32_read_socket):
3615 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3616
a8b11cc9
CY
36172009-01-30 Chong Yidong <cyd@stupidchicken.com>
3618
3619 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3620 Initialize it as a relative filename pattern.
3621 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3622 (Fcall_process_region): Simplify temp file creation using
3623 temporary-file-directory.
3624
c279587b
EZ
36252009-01-29 Eli Zaretskii <eliz@gnu.org>
3626
3627 * msdos.c: Rename pending_signals to msdos_pending_signals.
3628 (sig_suspender, sigprocmask): Adjust.
3629
a8fe3242
CY
36302009-01-29 Chong Yidong <cyd@stupidchicken.com>
3631
3632 * keyboard.c (pending_signals): New var.
3633 (poll_for_input, input_available_signal, init_keyboard): Set it.
3634 (process_pending_signals): New function.
3635
3636 * lisp.h (QUIT): Check pending_signals instead of
3637 interrupt_input_pending. Use process_pending_signals.
3638
51d861de 3639 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3640
51d861de 3641 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3642
3643 * sysdep.c (emacs_write): Use process_pending_signals.
3644
3645 * xterm.c (XTread_socket): Update pending_signals.
3646
3647 * w32term.c (w32_read_socket): Update pending_signals.
3648
3649 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3650
6570a1c4
KH
36512009-01-29 Kenichi Handa <handa@m17n.org>
3652
3653 * xftfont.c (xftfont_has_char): New function.
3654 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3655
d72a4afa
AR
36562009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3657
3658 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3659 under GNUstep.
3660 (ns_query_color): New declaration.
3661
3662 * nsterm.m (ns_confirm_quit): New variable.
3663 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3664 (EmacsApp-applicationShouldTerminate:): Use it.
3665 (EmacsPrefsController): Let user set it.
3666 (ns_query_color): New function.
3667 (ns_defined_color): Use it.
3668 (ns_initialize): Drop.
3669 (ns_term_init): Add two lines from ns_initialize(), and set
3670 input_interrupt_mode to nil.
3671
3672 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3673 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3674
9fe78804
KH
36752009-01-28 Kenichi Handa <handa@m17n.org>
3676
3677 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3678 (fontset_get_font_group): Remember that no font-group is specified
3679 for C.
9fe78804 3680
fa57de36
CY
36812009-01-27 Chong Yidong <cyd@stupidchicken.com>
3682
930600e9
CY
3683 * fns.c (concat): Check for string overflow (bug#1787).
3684
fa57de36
CY
3685 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3686 Quadruple undo limits (bug#1501).
3687
7179ce7b
KH
36882009-01-27 Kenichi Handa <handa@m17n.org>
3689
3690 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3691 directly use GT_Get_Char_index.
3692
3693 * xftfont.c (struct xftfont_info): New member `index'.
3694
3695 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3696 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3697
5be8fcc0
CY
36982009-01-26 Kenichi Handa <handa@m17n.org>
3699
3700 * fontset.c (fontset_find_font): Fix handling of non-cons return
3701 value of fontset_get_font_group.
3702 (fontset_font): Revert last change.
3703
19ae3e61
JR
37042009-01-26 Jason Rumney <jasonr@gnu.org>
3705
3706 * w32font.c (w32font_list_internal): Return quickly if registry is
3707 unknown. Simplify final return.
3708 (add_font_entity_to_list): Break complex logic down into more
3709 manageable chunks. Move unknown registry check to
3710 w32font_list_internal.
3711
8612b71a
AR
37122009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3713
3714 Changes to remove Feval calls from GUI under NS.
3715
d8038940
JB
3716 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3717 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3718 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3719
3720 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3721 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3722 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3723 instead of NON_ASCII_KEYSTROKE_EVENT.
3724 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3725 (EmacsApp-applicationShouldTerminate:): Query user.
3726 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3727 instead of Feval.
3728
3729 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3730
3731 * keyboard.c (kbd_buffer_get_event): Check for it.
3732 (keys_of_keyboard): Define lispy keys for
3733 ns-put/unput-working-text.
3734
3735 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3736 versions.
3737 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3738
6288ae55
CY
37392009-01-25 Chong Yidong <cyd@stupidchicken.com>
3740
3741 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3742 setting current_buffer directly. (Bug#2044)
6288ae55 3743
289e7f8f
CY
37442009-01-24 Chong Yidong <cyd@stupidchicken.com>
3745
5ce87308 3746 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3747 any work. (Bug#1952, bug#1990).
5ce87308 3748
64cc3cf6 3749 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3750
b3243e6f
AR
37512009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3752
3753 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3754 (ns_no_defaults): New declaration.
3755 (main): Use it.
e0d2e69a 3756
d900b2af 3757 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3758
d900b2af 3759 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3760
d900b2af
AR
3761 * nsterm.m (ns_no_defaults): New variable.
3762 (ns_initialize): Don't read defaults when ns_no_defaults.
3763 (EmacsView-readSelectionFromPasteboard:)
3764 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3765 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3766 (ns_dumpglyphs_stretch): New function.
3767 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3768 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3769
e0d2e69a
AR
3770 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3771
3ac71f5d
CY
37722009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3773
3774 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3775 call for Sparc64.
3776
3fe53a83
AR
37772009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3778
3779 * nsfns.m:
3780 * nsgui.h:
3781 * nsmenu.m:
3782 * nsselect.m:
3783 * nsterm.h:
3784 * nsterm.m: Remove '23' comments that indicated code added during
3785 update from emacs-20 -> emacs-23.
3786
10f87c6f 37872009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3788
3789 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3790 ns_alternate_modifier. (Bug#1217)
a3b53a85 3791
c7cef62d
AR
3792 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3793 Display all shortcuts, including those w/o super modifier.
3794
575fb8bd
AR
3795 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3796
918b848b
CY
37972009-01-22 Chong Yidong <cyd@stupidchicken.com>
3798
3799 * fileio.c (Vwrite_region_post_annotation_function)
3800 (Vwrite_region_annotation_buffers): New vars.
3801 (build_annotations_unwind): Just reset
3802 Vwrite_region_annotation_buffers.
3803 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3804 Call write-region-post-annotation-function.
3805 (build_annotations): Add to Vwrite_region_annotation_buffers if
3806 buffer changes.
3807
a39e2539
AR
38082009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3809
3810 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3811 Tiger.
51d861de
SM
3812 * nsfns.m (ns_do_applescript):
3813 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3814
35ed44db
AR
38152009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3816
3817 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3818
cbe0b5bf
AR
38192009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3820
3821 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3822
6049d3a0
AR
3823 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3824
3825 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3826 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3827 handle Ctrl-tab. (Bug#1841)
3828 (ns_get_color): Use unsigned long long for scanned hex string value.
3829 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3830 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3831 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3832 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3833 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3834 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3835 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3836
d3810c21 3837 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3838 DPI. (Bug#1316)
d3810c21
AR
3839 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3840 values in onTiger section.
4c7077c3 3841
e301e634
CY
38422009-01-19 Chong Yidong <cyd@stupidchicken.com>
3843
7f82490b
CY
3844 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3845 Check return value of font_spec_from_name.
64cc3cf6 3846 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3847
3848 * font.c (font_spec_from_name): Return Qnil if font name could not
3849 be parsed.
3850 (font_parse_name): Treat a `?' character as part of an XLFD.
3851
e301e634
CY
3852 * fns.c (Fsubstring): Doc fix.
3853
1c0db158
KH
38542009-01-19 Kenichi Handa <handa@m17n.org>
3855
51d861de 3856 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3857 (ftfont_list): Likewise.
3858
acf20901
JB
38592009-01-18 Juanma Barranquero <lekktu@gmail.com>
3860
fff4e459
JB
3861 * dbusbind.c (Fdbus_register_signal):
3862 * process.c (conv_sockaddr_to_lisp):
3863 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3864
acf20901
JB
3865 * callproc.c (Fgetenv_internal): Doc fix.
3866
e7abcdfb
CY
38672009-01-16 Chong Yidong <cyd@stupidchicken.com>
3868
3869 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3870 it is not even used.
3871
b60861e6
GM
38722009-01-16 Glenn Morris <rgm@gnu.org>
3873
3874 * font.c (Ffont_variation_glyphs): Silence compiler.
3875
8db52afe
JB
38762009-01-15 Juanma Barranquero <lekktu@gmail.com>
3877
3878 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3879 Reported by David Robinow <drobinow@gmail.com>.
3880
4cddb209
KH
38812009-01-15 Kenichi Handa <handa@m17n.org>
3882
51d861de 3883 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3884
f247f67b
JR
38852009-01-14 Jason Rumney <jasonr@gnu.org>
3886
3887 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3888 never a fontset. (Bug#1562)
f247f67b 3889
f56a4450
KH
38902009-01-14 Kenichi Handa <handa@m17n.org>
3891
3892 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3893 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3894
4e99855e
CY
38952009-01-13 Chong Yidong <cyd@stupidchicken.com>
3896
3897 * font.c (font_clear_prop): If clearing the family, clear the font
3898 width index too.
3899
fff4e459 3900 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3901
24f01470
JB
39022009-01-12 Juanma Barranquero <lekktu@gmail.com>
3903
3904 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3905 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3906 functions, use sizeof.
3907
a41240a3
MR
39082009-01-12 Martin Rudalics <rudalics@gmx.at>
3909
3910 * keyboard.c (read_char): Fix case where last_nonmenu_event
3911 returned a bad value with submenus. (Bug#447)
3912
944636b8
CY
39132009-01-12 Chong Yidong <cyd@stupidchicken.com>
3914
3915 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3916 family, clear the font width index too.
3917
0dad7c6f
JR
39182009-01-11 Jason Rumney <jasonr@gnu.org>
3919
3920 * keyboard.c (cmd_error_internal): Exit when errors occur before
3921 frame creation and not in daemon mode. (Bug#1836)
3922
7c2363af
CY
39232009-01-10 Chong Yidong <cyd@stupidchicken.com>
3924
3925 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3926 of a display vector, backtrack.
3927 (try_window_reusing_current_matrix): Check glyph type before
3928 referencing charpos member.
3929
97b1b294
EZ
39302009-01-10 Eli Zaretskii <eliz@gnu.org>
3931
3932 Fix Bug #876:
3933
3934 * coding.c (inhibit_null_byte_detection): New variable.
3935 (detect_coding, detect_coding_system): Don't pay attention to null
3936 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3937 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3938 <inhibit-iso-escape-detection>: Doc fix.
3939
4624b6e3
JR
39402009-01-09 Jason Rumney <jasonr@gnu.org>
3941
3942 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3943 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3944 Only report Unicode Plane 2 fonts as unicode-sip.
3945
323b840c
CY
39462009-01-09 Chong Yidong <cyd@stupidchicken.com>
3947
51d861de
SM
3948 * xfaces.c (Fx_font_family_list): Delete function.
3949 Move compatibility version to faces.el.
323b840c 3950
51d861de 3951 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3952
eba7400d
MR
39532009-01-09 Martin Rudalics <rudalics@gmx.at>
3954
3955 * frame.c (x_set_frame_parameters): Remember requested value for
3956 fullscreen before it's reset by the parameter handler.
3957
4b09796d
GM
39582009-01-09 Glenn Morris <rgm@gnu.org>
3959
3960 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3961 (last_command_event): ... and update all users.
4b09796d
GM
3962 (last_input_char): For clarity, rename to...
3963 (last_input_event): ... and update all users.
3964 (last-command-char, last-input-char): Move to subr.el as aliases.
3965 * cmds.c, commands.h: Update for last_command_char rename.
3966
14ccea62
CY
39672009-01-08 Chong Yidong <cyd@stupidchicken.com>
3968
51d861de 3969 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3970
5f004711
JR
39712009-01-08 Jason Rumney <jasonr@gnu.org>
3972
3973 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3974 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3975 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3976 Don't declare.
fff4e459 3977 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3978 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3979
b71f6f73
KH
39802009-01-07 Kenichi Handa <handa@m17n.org>
3981
50b06221 3982 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3983 remember the coding system used for decoding in
50b06221
KH
3984 coding_system (Bug#1039).
3985
b71f6f73 3986 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3987 breaking the loop. (Bug#870)
b71f6f73
KH
3988 (decode_coding_utf_16, decode_coding_emacs_mule)
3989 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3990 (decode_coding_charset): Likewise.
3991
56f668f7
MR
39922009-01-05 Martin Rudalics <rudalics@gmx.at>
3993
3994 * frame.c (x_set_frame_parameters): Make sure height (width) get
3995 applied when fullwidth (fullheight) is set. (Bug#1522)
3996
5da9424d
JB
39972009-01-04 Juanma Barranquero <lekktu@gmail.com>
3998
3999 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4000 (utc_base): Declare as ULONGLONG, not long double.
4001 (convert_time_raw): Delete.
4002 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4003 (initialize_utc_base): New function.
4004 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4005 (convert_from_time_t): Use initialize_utc_base; compute result with
4006 64-bit arithmetic.
4007 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4008
c4605e09
EZ
40092009-01-03 Eli Zaretskii <eliz@gnu.org>
4010
9acef61c 4011 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4012 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4013 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4014 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4015 [!subprocesses]: Define.
4016 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4017 (Flist_system_processes, Fsystem_process_attributes)
4018 [!subprocesses]: Call list_system_processes and
4019 system_process_attributes instead of returning Qnil.
4020
9acef61c
JB
4021 * dosfns.c (system_process_attributes, list_system_processes):
4022 New functions.
c4605e09
EZ
4023
4024 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4025
4026 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4027 Don't use the default (no-op) implementation.
4028
8b7d0a16
JR
40292009-01-03 Jason Rumney <jasonr@gnu.org>
4030
a6d46bc1
JR
4031 * keyboard.c (parse_modifiers_uncached): Wheel events are
4032 clicks (bug#687).
4033
8b7d0a16
JR
4034 * w32term.c (x_query_colors, x_query_color): New functions.
4035
4036 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4037 (svg_load_image): Cast returned pointers from dynamically loaded
4038 functions. Eliminate W32 specific code.
4039
bfe11752
DN
40402009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4041
89e2438a
DN
4042 * nsfns.m (x_set_foreground_color, x_set_background_color)
4043 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4044 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4045 x_ prefix instead of ns_. Update references.
4046 (syms_of_nsfns): Add a FIXME comment.
4047
4048 * nsterm.m (x_set_cursor_type): New prototype.
4049 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4050
bfe11752
DN
4051 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4052 for Solaris instead of incorrectly providing Qutime and Qcutime.
4053
031da700
EZ
40542009-01-02 Eli Zaretskii <eliz@gnu.org>
4055
4056 * w32.c (process_times): Compute sum of utime and stime.
4057 (system_process_attributes): Add Qtime to the alist.
4058
4059 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4060 and add them to the alist.
4061
4062 * process.c (top level) <Qtime, Qctime>: New variables.
4063 (syms_of_process): staticpro them.
4064 (Fsystem_process_attributes): Add their documentation to the doc
4065 string.
4066
4067 * process.h: Declare Qtime and Qctime.
4068
df23bf08
JR
40692009-01-02 Jason Rumney <jasonr@gnu.org>
4070
9acef61c 4071 * image.c (Qgobject): New symbol.
df23bf08
JR
4072 (syms_of_image): Initialize it.
4073 (init_svg_functions): Load some functions from gobject library.
4074
5bbdf7aa
DN
40752009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4076
4077 * frame.c (make_terminal_frame): Remove redundant code and useless
4078 block.
4079
63136da6
AS
40802009-01-01 Andreas Schwab <schwab@suse.de>
4081
4082 * process.c (conv_sockaddr_to_lisp): Add workaround for
4083 getsockname bug on BSD.
4084
9ef69046
CY
40852009-01-01 Chong Yidong <cyd@stupidchicken.com>
4086
d6fafbe0
CY
4087 * xfns.c (x_create_tip_frame): Set border width of the X window.
4088
51d861de 4089 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4090
f9c34147
JR
40912009-01-01 Jason Rumney <jasonr@gnu.org>
4092
9acef61c 4093 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4094 Don't block input, as per earlier xterm.c changes.
4095
f5497e45
AR
40962008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4097
4098 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4099 (ns_appkit_version_int): New function.
4100 (x-server-version): Use ns_appkit_version_int and follow 21+
4101 convention of returning 3 integers.
4102
c19cab20
KH
41032008-12-30 Kenichi Handa <handa@m17n.org>
4104
4105 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4106 (CHAR_SURROGATE_PAIR_P): New macro.
4107
4108 * font.h (struct font_driver): New member get_variation_glyphs.
4109
9acef61c 4110 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4111 (Ffont_variation_glyphs): New function.
4112 (syms_of_font): Defsubr it.
4113
4114 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4115 ftfont_variation_glyphs.
4116 (setup_otf_gstring): New function.
4117 (ftfont_drive_otf): Use it.
4118 (ftfont_shape_by_flt): Handle variation selector.
4119 (ftfont_variation_glyphs): New function.
4120
28cd591f
MR
41212008-12-30 Martin Rudalics <rudalics@gmx.at>
4122
4123 * frame.c (Vemacs_iconified): Remove.
4124
7f714baf
JR
41252008-12-30 Jason Rumney <jasonr@gnu.org>
4126
4127 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4128 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4129
9d2d22ab
CY
41302008-12-30 Chong Yidong <cyd@stupidchicken.com>
4131
4132 * indent.c (Fvertical_motion): Don't advance iterator if we have
4133 reseated to the desired position.
4134
4135 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4136 checking for pos match.
4137
545312c2
KH
41382008-12-30 Kenichi Handa <handa@m17n.org>
4139
1ede3eb6
KH
4140 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4141 just get the low 8-bit of the code.
4142
545312c2
KH
4143 * font.c (font_intern_prop): Validate str as multibyte.
4144
bd7bbf29
DN
41452008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4146
31e0750e
DN
4147 * dispextern.h (struct face): Move lface and hash from the middle
4148 of bitfields.
4149
bd7bbf29
DN
4150 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4151
b5672e7c
DN
41522008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4153
4154 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4155 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4156 instead of intervals.h.
4157
d704470f
AS
41582008-12-26 Andreas Schwab <schwab@suse.de>
4159
4160 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4161 cons.
4162
54b33868
MR
41632008-12-26 Martin Rudalics <rudalics@gmx.at>
4164
4165 * textprop.c (Qminibuffer_prompt): New variable.
4166 (syms_of_textprop): Initialize it.
4167 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4168 in minibuffer-prompt face. (Bug#1662)
4169
40b615d6
JR
41702008-12-25 Jason Rumney <jasonr@gnu.org>
4171
4172 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4173
baae5c2d
JR
41742008-12-24 Jason Rumney <jasonr@gnu.org>
4175
4176 * ralloc.c (r_alloc_reset_variable): New function.
4177
4178 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4179 record of what points where. (Bug#716)
baae5c2d 4180
a9051c88
DN
41812008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4182
4183 * minibuf.c (read_minibuf): Follow the non-interactive case when
4184 running as a daemon, before detaching.
4185
8b146312
AS
41862008-12-22 Andreas Schwab <schwab@suse.de>
4187
4188 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4189 * gtkutil.c (free_widget_value): Use xfree instead of free.
4190
56f2de10
MR
41912008-12-22 Martin Rudalics <rudalics@gmx.at>
4192
4193 * frame.c (delete_frame): New function derived from
4194 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4195 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4196 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4197 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4198 * frame.h: Extern delete_frame.
4199 * window.c (window_loop):
4200 * terminal.c (delete_terminal):
4201 * xterm.c (x_connection_closed):
4202 * xfns.c (Fx_hide_tip):
9acef61c 4203 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4204
1fc200d6
JR
42052008-12-21 Jason Rumney <jasonr@gnu.org>
4206
4207 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4208 when character maps to .notdef character.
4209
5e252df2
SM
42102008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4211
4212 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4213
99b72cc4
JR
42142008-12-20 Jason Rumney <jasonr@gnu.org>
4215
4216 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4217 a graphical frame on Windows. (Bug#1325)
99b72cc4 4218
acc49a52
JD
42192008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4220
4221 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4222
6ea15123
CY
42232008-12-20 Chong Yidong <cyd@stupidchicken.com>
4224
4225 * minibuf.c (Fread_buffer): Doc fix.
4226
b2dab6c8
JR
42272008-12-20 Jason Rumney <jasonr@gnu.org>
4228
54ea0c87 4229 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4230 server name in UNC paths. (Bug#719)
54ea0c87 4231
b2dab6c8 4232 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4233 charbuf. (Bug#1035)
b2dab6c8 4234
6d1921be
DN
42352008-12-19 Daniel Engeler <engeler@gmail.com>
4236
4237 * sysdep.c (serial_configure): Fix typo.
4238
53934c98
DN
42392008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4240
4241 * sysdep.c: Include alloca.h.
f4f634e8
DN
4242 (system_process_attributes): Add implementation for Solaris.
4243
4244 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4245
06e111a6
DN
42462008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4247
4248 Reorganize implementation of Flist_system_processes and
4249 Fsystem_process_attributes. No functional changes.
4250 * process.c: Don't #include pwd.h, grp.h and limits.h.
4251 (Flist_system_processes): Just call list_system_processes.
4252 (Fsystem_process_attributes): Just call system_process_attributes.
4253 (procfs_list_system_processes, time_from_jiffies)
4254 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4255 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4256
4257 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4258 (list_system_processes): Rename from
4259 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4260 Provide a do nothing implementation.
4261 (system_process_attributes): Rename from
4262 procfs_list_system_processes.
4263 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4264 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4265
4266 * w32.c (list_system_processes): Rename from
4267 w32_list_system_processes.
4268 (system_process_attributes): Rename from
4269 w32_system_process_attributes.
4270
4271 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4272
4273 * process.h (w32_list_system_processes)
4274 (w32_system_process_attributes): Remove.
362654a6
JB
4275 (list_system_processes, system_process_attributes):
4276 New prototypes.
06e111a6 4277
6a705b23
KH
42782008-12-19 Kenichi Handa <handa@m17n.org>
4279
4280 * xfont.c (xfont_decode_coding_xlfd): New function.
4281 (xfont_encode_coding_xlfd): New function.
4282 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4283 (xfont_list): Decode and encode XLFD by iso-8859-1.
4284 (xfont_match): Likewise.
4285 (xfont_list_family): Likewise.
4286 (xfont_open): Likewise.
4287
d66c0241 4288 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4289 names are utf-8.
4290
d66c0241 4291 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4292 names are utf-8.
4293
5a130941
JD
42942008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4295
4296 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4297 changed.
bfd20325
JD
4298 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4299 clicked on a detached tool bar button.
5a130941 4300
fd95644b
DN
43012008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4302
4303 * emacs.c (main): Print and error and exit when no data is read
4304 from the pipe.
4305
e6eee6ae
JR
43062008-12-17 Jason Rumney <jasonr@gnu.org>
4307
4308 * w32font.c (w32font_has_char): Always return -1.
4309
a35dd56b
KH
43102008-12-16 Kenichi Handa <handa@m17n.org>
4311
4312 * font.c (font_open_entity): Fix previous change.
4313
0e3635c2
DN
43142008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4315
4316 * process.c: Include <limits.h>.
4317
d4835507 43182008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4319
4320 * font.c (font_update_drivers): Fix mistake in reconstructing the
4321 driver list.
4322
43232008-12-16 Chong Yidong <cyd@stupidchicken.com>
4324
4325 * font.c (font_clear_cache): Fix format of font cache data.
4326
e2cbc401
CY
43272008-12-15 Chong Yidong <cyd@stupidchicken.com>
4328
4329 * xftfont.c (xftfont_open): Free Xft font pattern if
4330 XftFontOpenPattern fails.
4331
4332 * xterm.c (x_free_frame_resources): Remove extraneous call to
4333 free_frame_faces.
4334
b131d535
CY
43352008-12-13 Chong Yidong <cyd@stupidchicken.com>
4336
4337 * xterm.c (x_delete_display): Move xim_close_dpy call to
4338 x_delete_terminal.
4339 (x_delete_terminal): Call xim_close_dpy.
4340
e6df5336
JR
43412008-12-13 Jason Rumney <jasonr@gnu.org>
4342
4343 * w32font.c (intern_font_name): New function.
4344 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4345 (w32font_open_internal, Fx_select_font): Decode font name.
4346 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4347
4348 * w32font.h (intern_font_name): Declare new function.
4349
4350 * w32uniscribe.c (add_opentype_font_name_to_list):
4351 Use intern_font_name.
4352
20d68145
CY
43532008-12-13 Chong Yidong <cyd@stupidchicken.com>
4354
9f2554de
CY
4355 * frame.c (Fdelete_frame): Call free_font_driver_list.
4356
3d9bec9a
CY
4357 * font.c (free_font_driver_list): Implement missing function.
4358
20d68145
CY
4359 * w32term.c (w32_term_init): Don't initialize the image cache
4360 here; it will be done in init_frame_faces.
4361
4362 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4363 (struct x_display_info): Remove unused member null_pixel. New
4364 member xim_callback_data.
4365
4366 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4367 (xim_initialize): Save pointer to callback function data.
4368 (xim_close_dpy): Free callback function data. Call XCloseIM,
4369 reverting 2008-11-04 change by David Smith.
4370 (x_term_init): Don't initialize the image cache here; it will be
4371 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4372 (x_delete_display): Free x_dnd_atoms member.
4373
96f9306b
KH
43742008-12-13 Kenichi Handa <handa@m17n.org>
4375
6dec9044
JB
4376 * font.c (font_rescale_ratio): Moved from xfaces.c.
4377 Argument type changed. Handle a font-spec too.
96f9306b 4378 (font_score): Check Vface_font_rescale_alist.
6dec9044 4379 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4380
4381 * xfaces.c (font_rescale_ratio): Moved to font.c.
4382
8d5b4964
CY
43832008-12-13 Chong Yidong <cyd@stupidchicken.com>
4384
4385 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4386
e6df5336
JR
43872008-12-12 Jason Rumney <jasonr@gnu.org>
4388
4389 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4390 Vwindow_system_version to the real w32 major version.
4391
97c6058a
DN
43922008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4393
4394 * term.c (init_tty): Move setting the terminal name before the
4395 potential user: maybe_fatal.
4396
ec4e88d7
CY
43972008-12-11 Chong Yidong <cyd@stupidchicken.com>
4398
d4835507
JB
4399 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4400 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4401
b4233ec9
JR
44022008-12-11 Jason Rumney <jasonr@gnu.org>
4403
8ec71e23 4404 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4405 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4406
b4233ec9 4407 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4408 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4409
011a0143
JB
44102008-12-11 Juanma Barranquero <lekktu@gmail.com>
4411
4412 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4413
3c309f34
JB
44142008-12-11 Juanma Barranquero <lekktu@gmail.com>
4415
4416 * process.c (Fsystem_process_attributes, syms_of_process):
4417 Fix typo in name of Ssystem_process_attributes.
4418 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4419
fedc6ab5
JB
44202008-12-11 Juanma Barranquero <lekktu@gmail.com>
4421
4422 * syntax.c (Fmodify_syntax_entry): Doc fix.
4423
ba3de0e8
JB
44242008-12-10 Juanma Barranquero <lekktu@gmail.com>
4425
4426 * font.c (Ffont_spec): Move usage to end of docstring.
4427
174f1c74
JR
44282008-12-10 Jason Rumney <jasonr@gnu.org>
4429
4430 * w32font.c (Qcham): New symbol.
4431 (font_supported_scripts): Add cham, and comments for other new
4432 scripts in bitfield from OpenType spec.
9d32f818
JR
4433 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4434 contain characters beyond the bmp.
174f1c74 4435
7b649478
KH
44362008-12-10 Kenichi Handa <handa@m17n.org>
4437
4438 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4439 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4440 Qunicode_sip.
4441
2133e2d1
JB
44422008-12-10 Juanma Barranquero <lekktu@gmail.com>
4443
4444 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4445 (Fcoding_system_put): Use QCdefault_char.
4446 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4447
9af886ee
CY
44482008-12-09 Chong Yidong <cyd@stupidchicken.com>
4449
74d819eb
CY
4450 * xftfont.c (syms_of_xftfont): Fix typo.
4451
4ccfa1c0 4452 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4453
7c19d3ae
DN
44542008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4455
4456 * emacs.c (main): Close daemon_pipe on exec.
4457
567826bb
CY
44582008-12-08 Chong Yidong <cyd@stupidchicken.com>
4459
4460 * termchar.h (struct tty): New members termcap_term_buffer and
4461 termcap_strings_buffer.
4462
4463 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4464 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4465 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4466 All callers changed.
4467 (init_tty): Store termcap data and string buffers in new struct
4468 tty members termcap_term_buffer and termcap_strings_buffer.
4469 (delete_tty): Free them.
4ccfa1c0 4470 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4471
aa96c42b
SZ
44722008-12-07 Seiji Zenitani <zenitani@mac.com>
4473
4474 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4475 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4476
b7e1d896
CY
44772008-12-06 Chong Yidong <cyd@stupidchicken.com>
4478
4479 * coding.c (make_conversion_work_buffer): Disable buffer
4480 modification hooks in the work buffer.
4481
b5ec91a5
EZ
44822008-12-05 Eli Zaretskii <eliz@gnu.org>
4483
4484 * process.c (procfs_system_process_attributes): If `nread' has a
4485 negative value, assign zero to it.
4486
a5d2a52b
CY
44872008-12-05 Chong Yidong <cyd@stupidchicken.com>
4488
68c5540b 4489 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4490
7bf1bb21
KH
44912008-12-05 Kenichi Handa <handa@m17n.org>
4492
4493 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4494 second character is a combining character.
4495
2fdc7d00
EZ
44962008-12-05 Eli Zaretskii <eliz@gnu.org>
4497
4498 * process.c (procfs_system_process_attributes): Don't use cmd,
4499 cmdsize, and q without initializing them first.
4500
bf6bfba8
JR
45012008-12-04 Jason Rumney <jasonr@gnu.org>
4502
4503 * w32font.c (w32font_draw): Initialize orig_clip before getting
4504 it, and delete it when finished.
4505
a3b1a468
DN
45062008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4507
4508 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4509 case when running as a daemon before detaching.
4510
8b8be8eb
JB
45112008-12-03 Juanma Barranquero <lekktu@gmail.com>
4512
805f2638 4513 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4514
b1bde622
KH
45152008-12-03 Kenichi Handa <handa@m17n.org>
4516
e500c47d
KH
4517 * font.c (font_at): Set `multibyte' at first.
4518
ca516334
KH
4519 * coding.c (decode_coding_charset): Check type of an element of
4520 vector VALIDS.
7bf1bb21 4521 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4522
4ccfa1c0 4523 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4524 (font_for_char): Likewise.
4525
1e5ecd37
CY
45262008-12-03 Chong Yidong <cyd@stupidchicken.com>
4527
d5b01609 4528 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4529 (font_update_lface): Handle fonts with corrupted size specs,
4530 i.e. non-int and non-float.
d5b01609 4531
11e3a6e4 4532 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4533 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4534 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4535
ab06788b
CY
4536 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4537
1e5ecd37 4538 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4539 underline_minimum_offset for underline position.
1e5ecd37 4540
63c125ab
DN
45412008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4542
4543 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4544
4545 * character.c (c_string_width): Specify the type for LEN.
4546
3a8406e1
KH
45472008-12-03 Kenichi Handa <handa@m17n.org>
4548
4ccfa1c0 4549 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4550 (decode_coding_utf_8): Likewise.
4ccfa1c0 4551 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4552 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4553
651df7d9
CY
45542008-12-02 Chong Yidong <cyd@stupidchicken.com>
4555
4556 * keyboard.c (make_lispy_position): Only use PT if the selected
4557 window is current.
4558
1f625c6c
AS
45592008-12-02 Andreas Schwab <schwab@suse.de>
4560
f7741ce9
AS
4561 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4562
1f625c6c
AS
4563 * doprnt.c (doprnt1): Fix size of charbuf.
4564
92bc2678
CY
45652008-12-02 Chong Yidong <cyd@stupidchicken.com>
4566
4567 * keyboard.c (timer_check): Revert last change.
4568
93b9e8cc
JB
45692008-12-02 Juanma Barranquero <lekktu@gmail.com>
4570
4571 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4572
fd7a37d5
JB
45732008-12-01 Juanma Barranquero <lekktu@gmail.com>
4574
4575 * makefile.w32-in: Update dependencies.
4576 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4577
c115043b
AS
45782008-12-01 Andreas Schwab <schwab@suse.de>
4579
4580 * font.c (register_font_driver): Use xmalloc.
4581 (font_put_frame_data): Likewise.
4582
f5668d2a
CY
45832008-12-01 Chong Yidong <cyd@stupidchicken.com>
4584
860d96be
CY
4585 * xfaces.c (realize_x_face): Make abort condition clearer.
4586
f5668d2a
CY
4587 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4588
379c17e7
CY
45892008-11-30 Chong Yidong <cyd@stupidchicken.com>
4590
4591 * keyboard.c (timer_check): After a timer runs, ensure that the
4592 selected window's buffer is current.
4593
35f36d65
JB
45942008-11-30 Juanma Barranquero <lekktu@gmail.com>
4595
f952c61c
JB
4596 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4597 It was accidentally restored by the Unicode merge.
4598
35f36d65
JB
4599 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4600
b23077df
JB
46012008-11-29 Juanma Barranquero <lekktu@gmail.com>
4602
4603 * w32proc.c: Include "coding.h".
4604 (Fw32_short_file_name): Encode filename passed to Windows API.
4605 (Fw32_long_file_name): Encode filename passed to Windows API and
4606 decode back the result. (Bug#1433)
4607
b8ebe9dd
KH
46082008-11-29 Kenichi Handa <handa@m17n.org>
4609
8cc53f96
KH
4610 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4611 not before accessing it.
4612
b8ebe9dd
KH
4613 * charset.c (Fdefine_charset_internal): After calculating
4614 min_char, max_char, and fastmap, copy the charset structure again.
4615 (encode_char): Fix the previous change.
4616
59bc82c0
SZ
46172008-11-28 Seiji Zenitani <zenitani@mac.com>
4618
4619 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4620
4621 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4622
4623 * nsterm.m (x_set_frame_alpha): New function.
4624
32247e3d
EZ
46252008-11-27 Eli Zaretskii <eliz@gnu.org>
4626
4627 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4628
b003e5ff
JB
46292008-11-27 Juanma Barranquero <lekktu@gmail.com>
4630
4631 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4632 pointer to check_face_name.
4633
708550f5
KH
46342008-11-27 Kenichi Handa <handa@m17n.org>
4635
4636 * category.h (SET_CATEGORY_SET): Call set_category_set.
4637 (set_category_set): Extern it.
4638
4639 * category.c (hash_get_category_set): New function.
4640 (Fmodify_category_entry): Adjusted for the change of
4641 char_table_ref_and_range. Call hash_get_category_set to get a
4642 category set to store in the table.
4643
4644 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4645 Funify_charset.
4646
2ae37cf0 4647 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4648 (DECODE_CHAR): Check if the decoder vector is ready.
4649 (ENCODE_CHAR): Check if the encoder char-table is ready.
4650 (maybe_unify_char): Extern it.
4651
4652 * charset.c (Vchar_unified_charset_table): Delete it.
4653 (inhibit_load_charset_map): New variable.
4654 (temp_charset_work): New variable.
4655 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4656 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4657 New macros.
4658 (load_charset_map): Meaning of control_flag changed. If
4659 inhibit_load_charset_map is nonzero, setup a table in
4660 temp_charset_work.
4661 (load_charset): New argument control_flag.
4662 (map_charset_for_dump): New function.
4663 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4664 map_charset_for_dump.
4665 (Fdefine_charset_internal): If the charset method is MAP, load
4666 mapping tables by calling load_charset.
4667 (Funify_charset): Don't load a mapping table but directly set
4668 Vchar_unify_table.
4669 (maybe_unify_char): New function.
4670 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4671 Handle the case of inhibit_load_charset_map being nonzero.
4672 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4673 Handle the case of inhibit_load_charset_map being nonzero.
4674 (Fclear_charset_maps): Just free temp_charset_work.
4675 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4676 variable.
4677
4678 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4679 change of char_table_ref_and_range.
4680 (char_table_ref_and_range): Change the meaning of argument FROM
4681 and TO. Now the caller must provide initial values for *FROM
4682 and *TO.
4683
4684 * fontset.c (fontset_add): Adjusted for the change of
4685 char_table_ref_and_range.
4686 (fontset_get_font_group): Likewise.
4687 (Ffontset_info): Likewise.
4688
4689 * keymap.c (describe_vector): Adjusted for the change of
4690 char_table_ref_and_range. For char-table, put boundary between
4691 non-ASCII and 8-bit characters.
4692
4693 * print.c (print_object): For bool-vector, delete unnecessary
4694 check of ASCII_BYTE_P.
4695
9196133b
JR
46962008-11-26 Jason Rumney <jasonr@gnu.org>
4697
4698 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4699 leading in font height. (Bug#879)
9196133b 4700
9f688acf
GM
47012008-11-26 Glenn Morris <rgm@gnu.org>
4702
4703 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4704 redefinition with ifdef. (Bug#1383)
4705
90d19aff
AR
47062008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4707
4708 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4709
4ccfa1c0 47102008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4711
4712 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4713 New EmacsView methods.
4714 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4715 Fixes bug #1048,1357,1414.
4716
47172008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4718
4719 Fix bug #1362.
4720 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4721 is not an indexed color.
4722 * nsterm.m (free_indexed_color): Add argument checking.
4723 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4724
e7d5ecb3
CY
47252008-11-24 Chong Yidong <cyd@stupidchicken.com>
4726
4727 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4728 Document confirm-after-completion value for
4729 minibuffer-completion-confirm.
4730
c285743c
JR
47312008-11-24 Jason Rumney <jasonr@gnu.org>
4732
4733 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4734 warning.
4735
b0857706
JR
47362008-11-23 Jason Rumney <jasonr@gnu.org>
4737
4738 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4739 restored before returning.
4740
4741 * w32font.c (check_face_name): New function.
4742 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4743 fonts. (Bug#642)
b0857706 4744
ee50ff07
MR
47452008-11-22 Martin Rudalics <rudalics@gmx.at>
4746
4747 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4748 confirm-nonexistent-file-or-buffer in doc-string.
4749
b8ff72fa
SM
47502008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4751
4752 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4753 Fix copy/paste typo. Add checks.
4754
cee53ed4
KH
47552008-11-21 Kenichi Handa <handa@m17n.org>
4756
4757 * coding.c (detect_coding_iso_2022): Reject invalid composition
4758 sequence.
4759 (DECODE_COMPOSITION_START): If the current source is the last
4760 block, and the current composition doesn't end, regard this
4761 sequence as invalid.
4762 (decode_coding_iso_2022): Handle invalid composition sequence.
4763
f6ef1e65
MR
47642008-11-20 Martin Rudalics <rudalics@gmx.at>
4765
4766 * window.c (coordinates_in_window): Don't return
4767 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4768 line when the window is not the rightmost one. (Bug#1372)
4769
e08b1705
MR
47702008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4771
4772 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4773
ad98e89f
EZ
47742008-11-15 Eli Zaretskii <eliz@gnu.org>
4775
4776 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4777 and bright_bg if noninteractive is non-zero.
4778
fb098a4b
CY
47792008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4780
4781 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4782 x_draw_glyph_string_background.
4783
4784 * w32term.c (x_draw_glyph_string): Likewise.
4785
ce952b6e
CY
47862008-11-15 Chong Yidong <cyd@stupidchicken.com>
4787
4788 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4789 the next glyph string once past the overhang width.
4790
4791 * nsterm.m (ns_draw_glyph_string): Likewise.
4792
4793 * w32term.c (x_draw_glyph_string): Likewise.
4794
26ea7079
CY
47952008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4796
4797 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4798 double file close.
4799
1c33c906
MR
48002008-11-14 Martin Rudalics <rudalics@gmx.at>
4801
4802 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4803 dedicated status of window before attempting to display another
4804 buffer in it.
4805
8fc29035
JB
48062008-11-14 Juanma Barranquero <lekktu@gmail.com>
4807
4808 * msdos.c (Fmsdos_long_file_names):
4809 (syms_of_msdos) <dos-unsupported-char-glyph>:
4810 * dosfns.c (Fint86): Fix typos in docstrings.
4811
55fb4286
EZ
48122008-11-14 Eli Zaretskii <eliz@gnu.org>
4813
4814 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4815
3fda0315
KY
48162008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4817
4818 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4819
7e849c17
CY
48202008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4821
4822 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4823
4824 * frame.h: Negative alpha means "don't touch".
4825
4826 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4827
4828 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4829
b9fd67bd
DN
48302008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4831
4832 * hftctl.c:
4833 * chpdef.h:
4834 * acldef.h: Remove files used only for systems no longer supported.
4835
4836 * Makefile.in: Fix .o alphabetical ordering.
4837 (hftctl.o): Remove dependency, file removed.
4838 (keymap.o, print.o): Depend on charset.h.
4839
d5998e03
KH
48402008-11-10 Kenichi Handa <handa@m17n.org>
4841
2ae37cf0 4842 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4843
be70e183
CY
48442008-11-08 Chong Yidong <cyd@stupidchicken.com>
4845
4846 * dired.c (file_name_completion): If completion_ignore_case is
4847 enabled, ignore case when checking completion-regexp-list.
4848
7cf94eac
EZ
48492008-11-08 Eli Zaretskii <eliz@gnu.org>
4850
4851 * vm-limit.c (get_lim_data): Fix last change.
4852
ee107a89
KH
48532008-11-08 Kenichi Handa <handa@m17n.org>
4854
4855 * character.c (Fget_byte): New function.
4856 (syms_of_character): Defsubr Fget_byte.
4857
5fd15622
CY
48582008-11-07 Chong Yidong <cyd@stupidchicken.com>
4859
4860 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4861 cursor position is valid after scrolling.
4862
13d62fad
JB
48632008-11-06 Juanma Barranquero <lekktu@gmail.com>
4864
4865 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4866
a1dd2936
GM
48672008-11-06 Glenn Morris <rgm@gnu.org>
4868
4869 * xterm.c (handle_one_xevent): Don't let popup menus cause
4870 mouse-autoselect-window related window switching. (Bug#1261)
4871
860cd236
CY
48722008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4873
4874 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4875
653a3150
AS
48762008-11-04 Andreas Schwab <schwab@suse.de>
4877
4878 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4879
870f5cac
CY
48802008-11-03 Chong Yidong <cyd@stupidchicken.com>
4881
4882 * xfns.c (Fx_wm_set_size_hint): New function.
4883
1e02f3cb
MR
48842008-11-03 Martin Rudalics <rudalics@gmx.at>
4885
4886 * textprop.c (Fprevious_single_char_property_change): Return 0
4887 when there's no change in a string. (Bug#1301)
4888
e630dfc6
MR
48892008-11-02 Martin Rudalics <rudalics@gmx.at>
4890
4891 * frame.c (do_switch_frame): New argument NORECORD passed to
4892 Fselect_window.
4893 (Fselect_frame): New argument NORECORD passed to
4894 do_switch_frame.
4895 (Fset_frame_selected_window): New argument NORECORD passed to
4896 Fselect_frame.
4897 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4898 in call of do_switch_frame.
4899 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4900 Handle NORECORD argument in call of Fselect_frame.
4901 * lisp.h (do_switch_frame, Fselect_frame)
4902 (Fset_frame_selected_window): Adjust declarations.
4903 * window.c (select_frame_norecord): New function.
4904 (run_window_configuration_change_hook): Use it and call
4905 Fselect_frame with NORECORD set.
4906 (Fselect_window): Pass NORECORD to Fselect_frame.
4907 (Fset_window_configuration): Handle NORECORD argument in call of
4908 do_switch_frame.
4909 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4910 Fset_frame_selected_window.
4911 * keyboard.c (command_loop_1): Handle NORECORD in call of
4912 Fselect_frame (currently ifdefd).
4913
9020b223
GM
49142008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4915
4916 * emacs.c (USAGE2): Untabify.
4917
793ffee8
SM
49182008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4919
4920 * composite.c (fill_gstring_header): Fix copy/paste typo.
4921
ab6d1131
MR
49222008-10-31 Martin Rudalics <rudalics@gmx.at>
4923
4924 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4925 (Fother_window): Rename argument and rewrite doc-string.
4926 (select_window_norecord): Fix return value. (Bug#1276)
4927
601a9cf1
JB
49282008-10-30 Juanma Barranquero <lekktu@gmail.com>
4929
4930 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4931 new frames overriding foreground for tooltips. Based on similar patch
4932 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4933
813b0652
CY
49342008-10-29 Chong Yidong <cyd@stupidchicken.com>
4935
4936 * emacs.c (Fdaemon_initialized): Initialize nfd.
4937
4414f58f
MR
49382008-10-29 Martin Rudalics <rudalics@gmx.at>
4939
4940 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4941 (Fwindow_text_height): Clarify doc-strings.
4942 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4943 doc-string of window-scroll-functions.
4944
ecdcaa09
RS
49452008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4946
4947 * category.c (syms_of_category): Fix typo in docstring.
4948
23fe745a
JB
49492008-10-28 Juanma Barranquero <lekktu@gmail.com>
4950
4951 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4952 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4953 Fix typos in docstrings.
4954
ff808935
DN
49552008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4956
4957 * emacs.c (daemon_pipe): Make non-static.
4958 (IS_DAEMON): Move definition ...
4959 * lisp.h (IS_DAEMON): ... here.
4960 (daemon_pipe): Declare.
4961 (is_daemon): Remove.
4962 * dispnew.c (init_display): Use IS_DAEMON.
4963
fc012771
SM
49642008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4965
4966 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4967 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4968
4969 * emacs.c (is_daemon): Remove.
4970 (main): Don't set is_daemon.
4971 (IS_DAEMON): New macro.
4972 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4973 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4974 parent exits.
4975 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4976
d8bdbe6f
CY
49772008-10-27 Chong Yidong <cyd@stupidchicken.com>
4978
d1a072bf
CY
4979 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4980 over-sized glyph, draw it with the default glyph width.
4981
e2e325aa
CY
4982 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4983 glyph, draw it with the default glyph width.
4984
4985 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4986 glyph, draw it with the default glyph width.
4987
d8bdbe6f
CY
4988 * xdisp.c (try_scrolling): When computing the distance from the
4989 scroll margin to PT, try moving some distance past the window
4990 bottom before giving up.
4991
7bfac547
MR
49922008-10-27 Martin Rudalics <rudalics@gmx.at>
4993
4994 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4995 (Fset_window_buffer): Explain in doc-string that a window can be
4996 "strongly" dedicated to its buffer.
4997
4ff029f6
DN
49982008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4999
5000 * emacs.c (daemon_name): New variable.
5001 (main): Deal with --daemon=SERVER_NAME.
5002 (Fdaemonp): Return a name if one was passed to --daemon.
5003
5790ef40
DN
50042008-10-26 Romain Francoise <romain@orebokech.com>
5005
f9bd0df9 5006 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5007 (main): Create a pipe before forking, make the parent exit only after
5008 the child has closed its end of the pipe. Move closing the
5009 descriptors ...
5010 (Fdaemon_initialized): ... here. New function.
5011
f5385255
SM
50122008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5013
4d632321
SM
5014 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5015 the previous unoptimized table.
5016
f5385255
SM
5017 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5018 the distinction between non-nil and non-t value of `dedicated'.
5019
6c56a0f3
CY
50202008-10-25 Chong Yidong <cyd@stupidchicken.com>
5021
5022 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5023 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5024
fec89261
MR
50252008-10-25 Martin Rudalics <rudalics@gmx.at>
5026
5027 * window.c (Fget_buffer_window, Fdelete_windows_on)
5028 (Freplace_buffer_in_windows): Make buffer argument optional and
5029 rename to buffer_or_name.
5030
34fcddd0
CY
50312008-10-24 Chong Yidong <cyd@stupidchicken.com>
5032
f5385255
SM
5033 * xdisp.c (handle_single_display_spec, handle_display_prop):
5034 Undo 2005-05-16 change.
34fcddd0
CY
5035 (handle_stop): Pop iterator if it's loaded with an empty string.
5036 (get_overlay_strings_1): Don't save iterator if it's loaded with
5037 an empty string (bug#1201).
5038
064766f2
KH
50392008-10-24 Kenichi Handa <handa@m17n.org>
5040
5041 * ftfont.c (ftfont_otf_features): Fix previous change.
5042 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5043 calling ftfont_otf_features.
5044
f9bd0df9 50452008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5046
5047 * font.c (font_match_p): Fix for the case that a vector of
5048 characters is in script-representative-chars.
5049
1dae9197
MA
50502008-10-24 Michael Albinus <michael.albinus@gmx.de>
5051
5052 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5053 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5054 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5055 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
5056 macro. (Bug#1186).
5057
f9bd0df9 50582008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5059
5060 * s/sol2-10.h: New file.
5061
878a4584
JB
50622008-10-23 Juanma Barranquero <lekktu@gmail.com>
5063
5064 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5065 poor beast has survived 9+ years and the jump from xterm.c!).
5066
cd265ca6
MR
50672008-10-23 Martin Rudalics <rudalics@gmx.at>
5068
5069 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5070 Reword doc-string.
f5385255 5071 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5072
472a4dc9
JB
50732008-10-23 Juanma Barranquero <lekktu@gmail.com>
5074
5075 * character.c (syms_of_character) <script-representative-chars>:
5076 <unicode-category-table>: Doc fixes.
5077
159bd5a2
NF
50782008-10-23 Noah Friedman <friedman@splode.com>
5079
5080 * coding.c (make_conversion_work_buffer): Check that
5081 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5082 Fget_buffer_create.
5083
49f9c344
KH
50842008-10-23 Kenichi Handa <handa@m17n.org>
5085
5086 * font.c (font_add_log): Check the values of extra properties.
5087
12bb3111
MR
50882008-10-22 Martin Rudalics <rudalics@gmx.at>
5089
5090 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5091 Reword doc-string.
5092 (Fset_window_parameter): Use NILP.
5093 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5094 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5095
bbeb4e99
JB
50962008-10-22 Juanma Barranquero <lekktu@gmail.com>
5097
5098 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5099
51002008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5101
5102 * nsfns.m (ns_appkit_version): New function.
5103 (x-server-version): Use it.
5104 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5105 (x-server-vendor): Don't check_ns().
5106
5107 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5108
a9b555d3
JB
51092008-10-22 Juanma Barranquero <lekktu@gmail.com>
5110
5111 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5112 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5113
4626499f
KH
51142008-10-22 Kenichi Handa <handa@m17n.org>
5115
e3681952
KH
5116 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5117 scripts.
5118
4626499f
KH
5119 * category.c (word_boundary_p): Check scripts instead of charset.
5120 Handle nil value in word-separating-categories and
5121 word-combining-categories.
5122 (syms_of_category): Fix docstrings of word-separating-categories
5123 and word-combining-categories.
5124
1560f91a
EZ
51252008-10-21 Eli Zaretskii <eliz@gnu.org>
5126
5127 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5128 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5129
f4668441
MR
51302008-10-21 Martin Rudalics <rudalics@gmx.at>
5131
5132 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5133 Rename arg "buffer" to "buffer_or_name".
5134 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5135 it optional.
5136 (no_switch_window): Remove since the return value is not used.
a9b555d3 5137 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5138 Consider window as dedicated when Fwindow_dedicated_p returns a
5139 non-nil value.
5140 * lisp.h: Remove prototype for no_switch_window.
5141
fd75ddb2
JD
51422008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5143
5144 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5145 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5146
07295713
KH
51472008-10-21 Kenichi Handa <handa@m17n.org>
5148
5149 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5150 check Vlatin_extra_code_table.
5151
712adc82
EZ
51522008-10-20 Eli Zaretskii <eliz@gnu.org>
5153
5154 * fileio.c (Fset_file_modes): Doc fix.
5155
f549eb0b
MA
51562008-10-19 Michael Albinus <michael.albinus@gmx.de>
5157
5158 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5159 in arrays.
5160
aac0c6e3
MR
51612008-10-19 Martin Rudalics <rudalics@gmx.at>
5162
5163 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5164 Mention kill-buffer in doc-string.
5165 (Fset_window_buffer): Reinsert tem check removed in last commit.
5166 (Fenlarge_window, Fshrink_window): Have argument names and
5167 doc-string follow Elisp manual more closely.
5168
51692008-10-18 Eli Zaretskii <eliz@gnu.org>
5170
5171 * fileio.c (Fset_file_modes): Doc fix.
5172
51732008-10-18 Martin Rudalics <rudalics@gmx.at>
5174
5175 * window.c (Fwindow_width, Fset_window_start)
5176 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5177 (Fdelete_windows_on, Freplace_buffer_in_windows):
5178 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5179 (Fwindow_dedicated_p): Make window argument optional.
5180 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5181 (Fset_window_buffer): Respect any non-nil dedicated value for
5182 window. Rename "buffer" argument to "buffer_or_name".
5183
51842008-10-18 Ulrich Mueller <ulm@gentoo.org>
5185
5186 * m/sh3.h: New file, machine description for SuperH.
5187
51882008-10-17 Martin Rudalics <rudalics@gmx.at>
5189
5190 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5191
51922008-10-17 Kenichi Handa <handa@m17n.org>
5193
5194 * ftfont.c (ftfont_otf_features): Fix indexing
5195 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5196
51972008-10-16 Magnus Henoch <mange@freemail.hu>
5198
5199 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5200 (Fdbus_call_method_asynchronously): Ditto.
5201 This change makes C-h f display the argument list.
5202
52032008-10-16 Chong Yidong <cyd@stupidchicken.com>
5204
5205 * fileio.c (Fexpand_file_name): Doc fix.
5206
5207 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5208 of :foreground and :background equivalent to unspecified (20.x
5209 compatibility).
5210
52112008-10-15 Eli Zaretskii <eliz@gnu.org>
5212
5213 * buffer.c (syms_of_buffer): Doc fix.
5214
52152008-10-14 Kenichi Handa <handa@m17n.org>
5216
5217 * font.c (font_clear_prop): When clearing font width, clear the
5218 average width field too.
5219
52202008-10-12 Andreas Schwab <schwab@suse.de>
5221
5222 * ftfont.c (ftfont_shape_by_flt): Make static.
5223 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5224
5225 * font.c: Don't include <m17n-flt.h>.
5226
52272008-10-10 Eli Zaretskii <eliz@gnu.org>
5228
5229 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5230
52312008-10-09 Eli Zaretskii <eliz@gnu.org>
5232
5233 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5234 away code.
5235
52362008-10-09 Chong Yidong <cyd@stupidchicken.com>
5237
5238 * dispnew.c (update_text_area): Avoid looping due to large glyph
5239 overhangs (bug#1070).
5240
52412008-10-09 Kenichi Handa <handa@m17n.org>
5242
5243 * fontset.c (face_for_char): If face->fontset is negative, just
5244 return ascii_face.
5245
f5385255
SM
5246 * font.c (font_delete_unmatched): Fix previous change.
5247 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5248
52492008-10-09 Martin Rudalics <rudalics@gmx.at>
5250
5251 * frame.c (Fraise_frame): On text-only terminals select frame in
5252 order to make it visible. (Bug#1061)
5253
52542008-10-08 Chong Yidong <cyd@stupidchicken.com>
5255
5256 * fontset.c (fontset_find_font): Check frame validity.
5257
52582008-10-07 Chong Yidong <cyd@stupidchicken.com>
5259
a9b555d3 5260 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5261 (xg_display_close): Allow Emacs to close all displays (bug#985).
5262
52632008-10-06 Andreas Schwab <schwab@suse.de>
5264
f5385255 5265 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5266
52672008-10-06 Chong Yidong <cyd@stupidchicken.com>
5268
f5385255 5269 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5270
a9b555d3 5271 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5272
5273 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5274 during initialization.
5275
52762008-10-04 Eli Zaretskii <eliz@gnu.org>
5277
5278 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5279 whole thing on MSDOS frames as well as on a TTY.
5280
5281 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5282 well as for TTY.
5283 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5284 well as on a TTY.
5285
5286 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5287 as well as for TTY.
5288
5289 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5290
5291 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5292 MSDOS frames as well.
5293
52942008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5295
5296 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5297 correct arguments.
b71ac3dd 5298 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5299
53002008-10-03 Glenn Morris <rgm@gnu.org>
5301
5302 * emacs.c (USAGE1): Add --daemon.
5303
53042008-10-02 Eli Zaretskii <eliz@gnu.org>
5305
5306 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5307 100, so it's in percents as advertised.
5308
53092008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5310
5311 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5312 (ns_output.current_cursor, ns_output.desired_cursor)
5313 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5314 (FRAME_NEW_CURSOR_COLOR): Remove.
5315
5316 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5317 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5318 enumeration (HOLLOW_BOX_CURSOR, etc.).
5319
5320 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5321 (draw_window_cursor): Simplify code.
f5385255
SM
5322 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5323 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5324 updates manually.
a9b555d3
JB
5325 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5326 Use core Emacs cursor types.
aac0c6e3 5327
b8ff72fa 5328 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5329
53302008-10-02 Martin Rudalics <rudalics@gmx.at>
5331
5332 * process.c (Faccept_process_output): Fix doc-string.
5333
53342008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5335
5336 * gmalloc.c (__sbrk): Also define for uClibc.
5337
5338 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5339 for uClibc.
5340
53412008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5342
5343 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5344 styles.
5345 (nsfont_open): Reenable the cache.
5346
53472008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5348
5349 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5350 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5351
53522008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5353
5354 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5355 a suspended terminal.
5356
53572008-09-30 Michael Albinus <michael.albinus@gmx.de>
5358
5359 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5360
53612008-09-30 Eli Zaretskii <eliz@gnu.org>
5362
5363 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5364
53652008-09-30 Chong Yidong <cyd@stupidchicken.com>
5366
5367 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5368 in a continued line coincides with a line beginning.
5369
53702008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5371
5372 * nsfont.m (nsfont_trait_distance): Fix bug.
5373 (nsfont_list): Return a list rather than a vector (syncs with Handa
5374 changes of 2008-05-14).
5375 (nsfont_open): Improve logging.
5376
53772008-09-29 Andreas Schwab <schwab@suse.de>
5378
5379 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5380
53812008-09-28 Martin Rudalics <rudalics@gmx.at>
5382
5383 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5384 name as char-resolve-modifiers.
5385 Reported by: Markus Triska <markus.triska@gmx.at>
5386
53872008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5388
5389 * dispnew.c (init_display): Return earlier when running as a daemon.
5390
53912008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5392
5393 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5394
53952008-09-27 Eli Zaretskii <eliz@gnu.org>
5396
5397 * composite.c (Fcomposition_get_gstring)
5398 (Fcompose_region_internal, Fcompose_string_internal)
5399 (Ffind_composition_internal): Doc fix.
5400 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5401 (syms_of_composite) <auto-composition-function>: Doc fix.
5402 (syms_of_composite) <composition-function-table>: Doc fix.
5403
54042008-09-25 Chong Yidong <cyd@stupidchicken.com>
5405
5406 * search.c (wordify): New argument for lax word-ends.
5407 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5408
54092008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5410
5411 * lisp.h (is_daemon): Declare.
5412 * dispnew.c (init_display): Do not try to initialize the terminal
5413 when running as a daemon.
5414
54152008-09-22 Chong Yidong <cyd@stupidchicken.com>
5416
5417 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5418 x_display_pixel_height.
5419
54202008-09-22 Martin Rudalics <rudalics@gmx.at>
5421
5422 * undo.c (record_point): Don't call Fundo_boundary for first
5423 change. (Bug#731)
5424
54252008-09-22 Juanma Barranquero <lekktu@gmail.com>
5426
5427 * emacs.c (Fdaemonp): Doc fix.
5428
54292008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5430
5431 * emacs.c (main): Place #ifdef in the proper place.
5432
54332008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5434
5435 * emacs.c (standard_args): Add --daemon.
5436 (main): Disconnect from the terminal when --daemon is passed.
5437 (is_daemon): New variable.
5438 (Fdaemonp): New function.
5439 (syms_of_emacs): Defsubr it.
5440
54412008-09-20 Chong Yidong <cyd@stupidchicken.com>
5442
5443 * xdisp.c (get_next_display_element): Handle string display
5444 correctly when checking for the end of a box run.
5445
54462008-09-20 Glenn Morris <rgm@gnu.org>
5447
5448 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5449 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5450 (Frename_file): Avoid copying to trash if a rename involves
5451 a delete. (Bug#964).
5452
54532008-09-20 Eli Zaretskii <eliz@gnu.org>
5454
5455 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5456 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5457 frames as well as termcap frames.
5458 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5459 get_named_tty.
5460
54612008-09-19 Eli Zaretskii <eliz@gnu.org>
5462
5463 * process.c (procfs_system_process_attributes): Fix cmdline in
5464 case /proc/PID/cmdline is empty.
5465
5466 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5467 x_display_pixel_height.
5468
54692008-09-19 Juanma Barranquero <lekktu@gmail.com>
5470
5471 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5472
5473 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5474 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5475
54762008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5477
5478 * dispextern.h (struct it): Move line_wrap away from the middle of
5479 bitfields. Move voffset in struct iterator_stack_entry after the
5480 bitfields. Move tab_width near after another short.
5481
54822008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5483
5484 * frame.h (struct frame): Move alpha from the middle of bitfields.
5485
5486 * window.h (struct window): Move frozen_window_start_p after the
5487 rest of the bitfields to reduce padding.
5488
54892008-09-18 Chong Yidong <cyd@stupidchicken.com>
5490
5491 * xterm.h (x_display_info): Remove `height' and `width' members.
5492
5493 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5494
5495 * w32term.h (w32_display_info): Remove `height', `width',
5496 `height_in', and `width_in' members.
5497
b8ff72fa
SM
5498 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5499 New functions.
aac0c6e3
MR
5500 (x_calc_absolute_position): Use them.
5501 (x_term_init): Omit removed `height' and `width' members.
5502
b8ff72fa
SM
5503 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5504 New functions.
aac0c6e3
MR
5505 (w32_read_socket, x_calc_absolute_position): Use them.
5506 (w32_initialize_display_info, w32_term_init): Omit removed members
5507 of w32_display_info.
5508
b8ff72fa
SM
5509 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5510 New functions.
5511 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5512
b8ff72fa
SM
5513 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5514 New functions.
aac0c6e3
MR
5515 (x_calc_absolute_position): Use them.
5516 (x_term_init): Omit removed `height' and `width' members.
5517
5518 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5519 (compute_tip_xy):
5520 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5521 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5522 x_display_pixel_width.
5523
55242008-09-18 Kenichi Handa <handa@m17n.org>
5525
5526 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5527 (composition_compute_stop_pos): Fix handling of static composition.
5528 (Fcomposition_get_gstring): Check FROM and TO at first.
5529
55302008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5531
46e722a9 5532 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5533 mixup (YAILOM).
5534
55352008-09-17 Chong Yidong <cyd@stupidchicken.com>
5536
5537 * indent.c (Fvertical_motion): Use position reported by iterator
5538 instead of PT for determining screen motion (bug#943).
5539
55402008-09-17 Romain Francoise <romain@orebokech.com>
5541
5542 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5543
55442008-09-17 Kenichi Handa <handa@m17n.org>
5545
5546 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5547
5548 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5549 if necessary.
5550
55512008-09-16 Kenichi Handa <handa@m17n.org>
5552
5553 * coding.c (make_conversion_work_buffer): Avoid calling
5554 Fget_buffer_create if it is not necessary.
5555
55562008-09-15 Martin Rudalics <rudalics@gmx.at>
5557
5558 * window.c (Fselect_window): Don't update window_select_count and
5559 use_time when norecord is not nil.
5560
55612008-09-14 Kenichi Handa <handa@m17n.org>
5562
5563 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5564 specpdl_ptr.
5565
55662008-09-12 Kenichi Handa <handa@m17n.org>
5567
5568 * indent.c (scan_for_column): Don't handle automatic composition
5569 if the current buffer is not associated with a window.
5570
5571 * composite.c (composition_reseat_it): If the current buffer is
5572 not associated with a window, ignore the automatic composition.
5573 (find_automatic_composition): Likewise.
5574
55752008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5576
5577 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5578 (Fgpm_mouse_stop): Use it.
5579 * termhooks.h (close_gpm): Declare.
5580 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5581 connection if Gpm_GetEvent fails.
5582
5583 * window.c (set_window_buffer): Always preserve current-buffer.
5584
55852008-09-12 Glenn Morris <rgm@gnu.org>
5586
5587 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5588
55892008-09-11 Glenn Morris <rgm@gnu.org>
5590
5591 * charset.c (charset-map-path): Doc fix.
5592
55932008-09-10 Kenichi Handa <handa@m17n.org>
5594
5595 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5596
5597 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5598 compose a grapheme cluster with the preceding base glyph.
5599
5600 * composite.c (composition_compute_stop_pos): Fix previous change.
5601 Reset cmp_it->id to -1 at first.
5602
56032008-09-10 Glenn Morris <rgm@gnu.org>
5604
5605 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5606
56072008-09-09 Chong Yidong <cyd@stupidchicken.com>
5608
5609 * keyboard.c (read_key_sequence): Reapply translation maps when
5610 switching keyboards.
5611
56122008-09-09 Kenichi Handa <handa@m17n.org>
5613
5614 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5615 characters.
5616
5617 * composite.c (FORWARD_CHAR): Fix calculation
5618 of (POSITION).pos_byte.
5619 (composition_compute_stop_pos): Limit the search of composition to
5620 at most 500 characters ahead. If we reach the limit or find a
5621 newline, set cmp_it->ch to -2 and return 0.
5622 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5623
56242008-09-08 Kenichi Handa <handa@m17n.org>
5625
5626 * indent.c (Fvertical_motion): Be sure to set
5627 it_overshoot_expected if it.cmp_it.id is non-negative.
5628
56292008-09-07 Andreas Schwab <schwab@suse.de>
5630
5631 * callproc.c (Fcall_process): Don't hold references to string data
5632 across garbage collection. Move initialisation of new_argv down
5633 to avoid compiler bug.
5634
56352008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5636
5637 * process.c (Fsystem_process_attributes): Doc fix.
5638
56392008-09-07 Chong Yidong <cyd@stupidchicken.com>
5640
5641 * callproc.c (Fcall_process): Canonicalize current directory name.
5642
5643 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5644 iterator advances to the next line if the current line ends in a
5645 continued tab.
5646
56472008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5648
5649 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5650 member to point to cmp_from.
5651
5652 * xdisp.c: Doc fix for references to gidx data member.
5653
56542008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5655
5656 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5657
56582008-09-07 Kenichi Handa <handa@m17n.org>
5659
5660 * composite.c (FORWARD_CHAR): Check STOP after
5661 incrementing (POSITION).pos.
5662
56632008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5664
5665 * process.c (Fsystem_process_attributes): Doc fix.
5666
56672008-09-06 Chong Yidong <cyd@stupidchicken.com>
5668
5669 * keyboard.c (Ftop_level): Doc fix.
5670
56712008-09-06 Eli Zaretskii <eliz@gnu.org>
5672
5673 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5674 minibuffer, don't let lower part of menu invade the echo area.
5675
5676 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5677 "char *q" to access menu text and advance through it. Revert the
5678 change that displayed ">" instead of ASCII character 0x10.
5679
56802008-09-05 Eli Zaretskii <eliz@gnu.org>
5681
5682 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5683 toggle boxes and radio buttons on MS-DOS as well.
5684
56852008-09-05 Kenichi Handa <handa@m17n.org>
5686
5687 * composite.c (autocmp_chars): Check lookback count.
5688 (composition_compute_stop_pos): Set cmp_it->lookback.
5689 (composition_reseat_it): Check lookback count.
5690 (struct position_record): New struct.
5691 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5692 (find_automatic_composition): New function.
5693 (composition_adjust_point): Use find_automatic_composition.
5694
5695 * dispextern.h (struct composition_it): New member lookback.
5696
56972008-09-02 Chong Yidong <cyd@stupidchicken.com>
5698
5699 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5700 if moving by a single line.
5701
57022008-09-02 Andreas Schwab <schwab@suse.de>
5703
5704 * xterm.c (x_delete_display): Fix merge error.
5705
5706 * fileio.c (Fexpand_file_name): Remove unused variables.
5707
57082008-09-02 Eli Zaretskii <eliz@gnu.org>
5709
5710 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5711 storage on all platforms, not just on DOS_NT.
5712
57132008-09-02 Jason Rumney <jasonr@gnu.org>
5714
b8ff72fa
SM
5715 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5716 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5717
57182008-09-01 Chong Yidong <cyd@stupidchicken.com>
5719
5720 * xfaces.c (Finternal_set_alternative_font_family_alist)
5721 (Finternal_set_alternative_font_registry_alist): Properly copy
5722 entire alist structure.
5723
57242008-09-01 Kenichi Handa <handa@m17n.org>
5725
d66c0241 5726 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5727 representative chars of the script is a vector.
d66c0241
JB
5728 (ftfont_list): Handle the case where the representative chars of
5729 the script is a vector.
aac0c6e3
MR
5730
5731 * character.c (syms_of_character): Docstring of
5732 script-representative-chars fixed.
5733
57342008-08-31 Eli Zaretskii <eliz@gnu.org>
5735
5736 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5737 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5738 the menu. Allocate larger buffer for `text', to account for
5739 possible ^C characters.
5740
57412008-08-31 Martin Rudalics <rudalics@gmx.at>
5742
5743 * xdisp.c (prepare_menu_bars): Don't call
5744 Vwindow_size_change_functions with arg Qt.
5745
57462008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5747
5748 * font.h (font_range):
5749 * fileio.c (report_file_error):
46e722a9
SM
5750 * composite.c (composition_update_it): Yet another int/Lisp_Object
5751 mixup (YAILOM).
aac0c6e3
MR
5752
57532008-08-30 Glenn Morris <rgm@gnu.org>
5754
5755 * data.c (Fmake_variable_frame_local): Doc fix.
5756
5757 * frame.c (Fmodify_frame_parameters): Doc fix.
5758
57592008-08-30 Eli Zaretskii <eliz@gnu.org>
5760
5761 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5762 needed by GetTokenInformation.
5763 (w32_system_process_attributes): Check return values of all system
5764 APIs.
5765
5766 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5767 only when the state changes.
5768 (IT_update_begin, IT_update_end): Add termscript trace.
5769
5770 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5771 clipboard is unavailable. Set dst to NULL if it doesn't point to
5772 malloc'ed data.
5773 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5774 passing random values to xfree.
5775
5776 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5777 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5778
57792008-08-29 Jason Rumney <jasonr@gnu.org>
5780
5781 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5782
57832008-08-29 Eli Zaretskii <eliz@gnu.org>
5784
5785 * composite.c (fill_gstring_body): Avoid compiler warnings.
5786
5787 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5788 LGLYPH_SET_CODE to avoid compiler warnings.
5789
2ae37cf0 5790 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5791
5792 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5793
5794 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5795 LGLYPH_SET_CODE.
5796
57972008-08-29 Kenichi Handa <handa@m17n.org>
5798
5799 * fileio.c (report_file_error): Don't downcase the first character
5800 of errstring if it is still unibyte.
5801
58022008-08-29 Kenichi Handa <handa@m17n.org>
5803
5804 These changes are to re-implement the automatic composition so
5805 that it doesn't use text properties.
5806
5807 * Makefile.in (ftfont.o): Depend on composite.h.
5808 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5809
5810 * character.h (Vunicode_category_table): Extern it.
5811
5812 * character.c (Vunicode_category_table): New variable.
5813 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5814
5815 * chartab.c (optimize_sub_char_table): Perform more greedy
5816 optimization.
5817
b8ff72fa
SM
5818 * composite.h (enum composition_method):
5819 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5820 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5821 (Vcomposition_function_table): Extern it.
5822 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5823 (composition_gstring_put_cache, composition_gstring_from_id)
5824 (composition_gstring_p, composition_gstring_width)
5825 (composition_compute_stop_pos, composition_reseat_it)
5826 (composition_update_it, composition_adjust_point): Extern them.
5827 (Fcomposition_get_gstring): EXFUN it.
5828
d66c0241 5829 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5830 (Vcomposition_function_table)
5831 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5832 (gstring_hash_table, gstring_work, gstring_work_headers):
5833 New variables.
aac0c6e3
MR
5834 (gstring_lookup_cache, composition_gstring_put_cache)
5835 (composition_gstring_from_id, composition_gstring_p)
5836 (composition_gstring_width, fill_gstring_header)
5837 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5838 (composition_reseat_it, composition_update_it)
b8ff72fa 5839 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5840 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5841 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5842 Defsubr compostion_get_gstring.
5843
5844 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5845 cmp_id.
5846 (struct glyph_string): Delete the member gidx. New members
5847 cmp_id, cmp_from, and cmp_to.
5848 (enum it_method): Delete GET_FROM_COMPOSITION.
5849 (struct composition_it): New struct.
5850 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5851 Delete c, len, cmp_id, cmp_len in u.comp.
5852
5853 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5854 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5855 (enum lglyph_indices): Likewise.
b8ff72fa 5856 (font_range): Adjust extern.
aac0c6e3
MR
5857 (font_fill_lglyph_metrics): Extern it.
5858
5859 * font.c (QCf): New variable.
5860 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5861 (font_prepare_composition): Delete this function.
5862 (font_range): Type and arguments changed.
5863 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5864 (font_fill_lglyph_metrics): New function.
b8ff72fa 5865 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5866 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5867 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5868 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5869
5870 * fontset.h (font_for_char): Extern it.
5871
5872 * fontset.c (font_for_char): New function.
5873
5874 * ftfont.c: Include composite.h.
5875 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5876 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5877
5878 * indent.c: Include composite.h and dispextern.h.
5879 (check_composition): Delete this function.
5880 (scan_for_column): Handle composition by
5881 composition_compute_stop_pos, composition_reseat_it, and
5882 composition_update_it.
5883 (compute_motion): Likewise.
5884 (Fvertical_motion): Fix checking of composition.
5885
5886 * keyboard.c (adjust_point_for_property): Check composition by
5887 composition_adjust_point.
5888
b8ff72fa 5889 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5890 struct glyph_string.
5891
b8ff72fa
SM
5892 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5893 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5894 struct glyph.
5895 (produce_composite_glyph): Likewise.
5896
b8ff72fa
SM
5897 * w32term.c (x_draw_composite_glyph_string_foreground):
5898 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5899 (x_draw_glyph_string): Likewise.
5900
5901 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5902 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5903
5904 * xdisp.c: Include font.h.
5905 (it_props): Delete the entry for Qauto_composed.
5906 (init_iterator): Initialize it->cmp_it.id to -1.
5907 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5908 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5909 (handle_auto_composed_prop): Delete it.
5910 (handle_composition_prop): Handle only static composition.
5911 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5912 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5913 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5914 (pop_it): Likewise.
5915 (get_next_element): Delete next_element_from_composition.
5916 (CHAR_COMPOSED_P): New macro.
5917 (get_next_display_element): For automatic composition, get a face
5918 from the font in the glyph-string.
5919 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5920 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5921 (next_element_from_string): Check if the character at the current
5922 position is composed by CHAR_COMPOSED_P.
5923 (next_element_from_buffer): Likewise.
d66c0241
JB
5924 (next_element_from_composition): Adjust for the change of struct it.
5925 Update it->cmp_it.
b8ff72fa
SM
5926 (dump_glyph): Adjust for the change of struct glyph.
5927 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5928 it and struct glyph. Don't handle automatic composition here.
5929 (fill_gstring_glyph_string): New function.
5930 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5931 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5932 (BUILD_GSTRING_GLYPH_STRING): New macro.
5933 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5934 automatic composition.
b8ff72fa 5935 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5936 struct glyph.
b8ff72fa 5937 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5938
b8ff72fa 5939 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5940 the change of struct glyph_string.
5941 (x_draw_glyph_string): Likewise.
5942
59432008-08-29 Glenn Morris <rgm@gnu.org>
5944
5945 * buffer.c (word-wrap): Doc fix.
5946 * xdisp.c (truncate-partial-width-windows): Doc fix.
5947 Increase default to 50.
5948
59492008-08-29 Chong Yidong <cyd@stupidchicken.com>
5950
5951 * xdisp.c (update_tool_bar_unwind): New function.
5952 (update_tool_bar): Temporarily set selected frame before building
5953 tool-bar items.
5954
59552008-08-28 Michael Albinus <michael.albinus@gmx.de>
5956
5957 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5958 snprintf, respectively.
5959 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5960
59612008-08-28 Chong Yidong <cyd@stupidchicken.com>
5962
5963 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5964 LDFLAGS to GNUstep CC invocation.
5965
59662008-08-27 Chong Yidong <cyd@stupidchicken.com>
5967
5968 * indent.c (Fvertical_motion): Revert last change. Handle the
5969 general case where we are moving forward, and PT spans multiple
5970 screen lines.
5971
5972 * eval.c (find_handler_clause): Temporarily increase
5973 max-lisp-eval-depth while printing the backtrace buffer, to
5974 guarantee that help-mode code can run.
5975
59762008-08-27 Eli Zaretskii <eliz@gnu.org>
5977
5978 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5979 colors under -rv.
5980 (IT_set_frame_parameters): Don't swap foreground and background
5981 colors if `(reverse . t)' is present in the frame properties.
5982 (internal_terminal_init): Call init_frame_faces only for the
5983 initial frame.
5984
59852008-08-27 Andreas Schwab <schwab@suse.de>
5986
5987 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5988
59892008-08-27 Andreas Schwab <schwab@suse.de>
5990
5991 * search.c (search_buffer): Set char_base to zero only at the end.
5992
59932008-08-27 Kenichi Handa <handa@m17n.org>
5994
b8ff72fa 5995 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5996
59972008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5998
5999 * xterm.c (x_term_init): Temporarily hide the partially
6000 initialized terminal while calling vendor-specific-keysyms.
6001
60022008-08-26 Eli Zaretskii <eliz@gnu.org>
6003
6004 * msdos.c (internal_terminal_init): Most initializations done only
6005 once, especially initial_screen_colors[] and termscript open.
6006
60072008-08-26 Chong Yidong <cyd@stupidchicken.com>
6008
6009 * eval.c (Fcondition_case): Doc fix.
6010
6011 * widgetprv.h (EmacsFramePart): Change font member to the new font
6012 struct.
6013
6014 * widget.c: Include character.h and font.h for XSETFONT.
6015 (setup_frame_gcs): Compute X font id from font struct, just once.
6016
60172008-08-26 Eli Zaretskii <eliz@gnu.org>
6018
6019 * term.c (get_named_tty): Fix last change.
6020
60212008-08-26 Chong Yidong <cyd@stupidchicken.com>
6022
6023 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6024 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6025
60262008-08-25 Eli Zaretskii <eliz@gnu.org>
6027
6028 * frame.c (do_switch_frame): Mark previously displayed frame as
6029 obscured for FRAME_MSDOS_P frames as well.
6030
60312008-08-24 Eli Zaretskii <eliz@gnu.org>
6032
6033 * frame.c (make_terminal_frame): Initialize f->terminal,
6034 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6035 Set the top frame to newly created frame.
6036 (Fmake_terminal_frame): Reuse the_only_display_info.
6037
6038 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6039 estimating available memory.
6040
b97439ce 60412008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6042
6043 * nsterm.m (ns_draw_window_cursor): Don't call
6044 NSDisableScreenUpdates and NSEnableScreenUpdates on
6045 non-NS_IMPL_COCOA systems.
6046
60472008-08-23 Andreas Schwab <schwab@suse.de>
6048
6049 * process.c (procfs_system_process_attributes): Fix use of
6050 uninitialized variables.
6051
60522008-08-23 Eli Zaretskii <eliz@gnu.org>
6053
6054 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6055
6056 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6057 calling tty-set-up-initial-frame-faces.
6058
b8ff72fa
SM
6059 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6060 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6061
6062 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6063 addition to output_termcap.
6064
6065 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6066
6067 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6068 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6069 highlight.
6070
6071 * process.c [!subprocesses]: Define QCname.
6072 (syms_of_process): Intern and staticpro it.
6073
6074 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6075 Adjust for changes in encoding/decoding routines.
6076 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6077 encode_coding and decode_coding.
6078
b8ff72fa 6079 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6080
6081 * dosfns.c: Include frame.h before termhooks.h.
6082 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6083 variable termscript.
6084
6085 * s/msdos.h (USER_FULL_NAME): Define.
6086 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6087
6088 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6089 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6090 pw->pw_gecos.
6091
6092 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6093 SELECTED_FRAME as additional (1st) argument.
6094 (tty_read_avail_input): Handle output_msdos_raw in
6095 addition to output_termcap.
6096
6097 * msdos.c: Include frame.h before termhooks.h.
6098 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6099 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6100 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6101 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6102 (IT_set_terminal_modes, IT_reset_terminal_modes)
6103 (IT_set_frame_parameters): Use tty->termscript instead of a global
6104 variable termscript.
6105 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6106 global variable terminal_coding. Don't refer to
6107 Vnonascii_translation_table.
6108 (internal_terminal_init): Set Vwindow_system in current_kboard.
6109 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6110 Announce date and time of session start, if termscript is open.
6111 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6112 term.c:init_tty). Open termscript only of not already open.
6113 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6114 here instead of dos_ttraw. Don't initialize display if this is an
6115 initial tty. Don't set FRAME_FONT.
6116 (Vwindow_system_version): Bump to 23.
6117 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6118 is available, set up mouse_position_hook.
6119 (dos_ttraw, IT_set_terminal_modes): If called with initial
6120 terminal, do nothing.
6121 (IT_set_frame_parameters): Handle the Qtty_type frame
6122 parameter by calling internal_terminal_init.
6123 (dos_set_window_size, show_mouse_face)
6124 (clear_mouse_face, IT_note_mode_line_highlight)
6125 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6126 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6127 (initialize_msdos_display): New function.
6128 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6129 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6130 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6131 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6132 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6133 (request_sigio, unrequest_sigio): Don't define, now defined on
6134 sysdep.c.
6135 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6136
6137 * term.c [MSDOS]: Include msdos.h.
6138 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6139 conditional to DOS_NT. Allow only one call to this function in a
6140 session. Don't allocate a new struct tty_display_info; instead,
6141 reuse the_only_display_info. Call get_tty_size to get screen
6142 dimensions. Call init_baud_rate to set bad_rate.
6143 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6144 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6145 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6146 (get_tty_terminal, get_named_tty, Ftty_type)
6147 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6148 output_termcap.
b8ff72fa
SM
6149 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6150 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6151 only when subprocesses are supported.
aac0c6e3
MR
6152
6153 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6154 f->output_data.x.
6155 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6156 terminal devices.
6157
5582fbc7 6158 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6159 x_output.
6160 (FRAME_FONT): Use output_data.tty.
6161 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6162 (struct x_display_info): Rename from display_info. Update all users in
6163 msdos.c.
aac0c6e3 6164 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6165 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6166 (dos_ttraw): Update prototype.
6167
6168 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6169 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6170
61712008-08-23 Jason Rumney <jasonr@gnu.org>
6172
6173 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6174 (fn_TIFFSetDirectory): New library function used.
6175 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6176 (tiff_load): Use :index to select among multiple images. Set count
6177 property when multiple images exist.
6178 (gif_format): Use :index, not :image.
6179
61802008-08-23 Chong Yidong <cyd@stupidchicken.com>
6181
6182 * xdisp.c (try_scrolling): Check INT_MAX instead of
6183 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6184 to obtain INT_MAX.
6185
61862008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6187
6188 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6189
61902008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6191
6192 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6193 GNUstep library location.
6194
61952008-08-21 Chong Yidong <cyd@stupidchicken.com>
6196
6197 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6198 before using it.
6199
6200 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6201
62022008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6203
6204 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6205 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6206 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6207 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6208 (EmacsApp-cursor_blink_handler): Remove declaration.
6209 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6210 match 01 Feb 2008 changes in xterm.c.
6211 (ns_read_socket): Add cast to avoid warning.
6212 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6213 GNUstep.
6214
62152008-08-20 Chong Yidong <cyd@stupidchicken.com>
6216
6217 * xselect.c (x_get_foreign_selection): Return nil if desired
6218 selection could not be obtained, instead of signalling an error.
6219
62202008-08-20 David Reitter <david.reitter@gmail.com>
6221
6222 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6223 * nsterm.m: Remove ns-specific code for cursor blinking.
6224 (ns_draw_window_cursor): Clear cursor properly rather than
6225 redrawing the area. Respect width of bar cursors.
6226 These changes enable the use of generic blink-cursor-mode and
6227 generic cursor types in NS and support smooth cursor movements (do
6228 not blink off after command).
6229 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6230 Nextstep, too.
6231
62322008-08-19 Kenichi Handa <handa@m17n.org>
6233
6234 * font.c (Vfont_log_deferred): New variable.
6235 (font_add_log): Check Vfont_log_deferred.
6236 (font_deferred_log): New function.
6237
6238 * font.h (font_deferred_log): Extern it.
6239
6240 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6241 for sorting.
6242 (face_for_char): Use deferred log.
6243
62442008-08-18 Kenichi Handa <handa@m17n.org>
6245
6246 * fontset.c (face_for_char): Add font log.
6247
6248 * font.c (font_add_log): Add the font properties :script, :lang,
6249 and :otf in the log.
6250
62512008-08-17 Chong Yidong <cyd@stupidchicken.com>
6252
6253 * xdisp.c: Remove dead code.
6254 (handle_invisible_prop, next_overlay_string): Defer call to
6255 setup_for_ellipsis.
6256 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6257
62582008-08-15 Chong Yidong <cyd@stupidchicken.com>
6259
6260 * xfaces.c (lookup_derived_face): Properly handle possible zero
6261 return value of get_lface_attributes.
6262 (merge_faces): Don't tell lookup_derived_face to signal an error
6263 if face is not found.
6264
6265 * dired.c (Fdirectory_files): Doc fix.
6266
6267 * process.c (make_process): Initialize kill_without_query struct
6268 member.
6269
62702008-08-15 Eli Zaretskii <eliz@gnu.org>
6271
6272 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6273 Alternative calculation of totphys for Visual Studio 6.
6274
6275 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6276
6277 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6278 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6279 All users changed.
6280 (stat): Only root directory passed to GetDriveType. Allow RAM
6281 disk as well as local fixed disk when w32-get-true-file-attributes
6282 is set to `local'.
6283 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6284 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6285 (w32_cached_id, w32_add_to_cache): New functions.
6286 (get_name_and_id): Look account names in the cache before calling
6287 lookup_account_sid.
6288 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6289 New initialization flags.
6290 (globals_of_w32): Initialize them to zero.
6291 (w32_system_process_attributes): Use w32_cached_id and
6292 w32_add_to_cache.
6293
62942008-08-14 Lawrence Mitchell <wence@gmx.li>
6295
6296 * lread.c (Fread_char, Fread_char_exclusive): If no character
6297 event is read before timeout is reached, return nil, rather than
6298 converting to a number.
6299
63002008-08-14 Chong Yidong <cyd@stupidchicken.com>
6301
6302 * fns.c (use_dialog_box): Doc fix.
6303
6304 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6305 on OS X.
6306
63072008-08-13 Chong Yidong <cyd@stupidchicken.com>
6308
6309 * frame.c (Qns_parse_geometry): New var.
6310 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6311
63122008-08-11 Chong Yidong <cyd@stupidchicken.com>
6313
6314 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6315 space character in calculating tabs.
6316
63172008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6318
6319 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6320
63212008-08-10 Glenn Morris <rgm@gnu.org>
6322
6323 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6324 silence gcc "limited range of data type" warnings in some
6325 make_fixnum_or_float calls.
6326
63272008-08-09 Eli Zaretskii <eliz@gnu.org>
6328
6329 * w32.c (w32_system_process_attributes): If the process does not
6330 exist, return nil.
6331
6332 * w32.c: Include thelp32.h, psapi.h and coding.h.
6333 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6334 declarations.
6335 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6336 (Process32Next_Proc): New typedefs.
6337 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6338 (g_b_init_process32_next, g_b_init_open_thread_token)
6339 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6340 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6341 (g_b_init_get_process_working_set_size)
6342 (g_b_init_global_memory_status_ex): New static variables.
6343 (globals_of_w32): Initialize them.
6344 (create_toolhelp32_snapshot, process32_first, process32_next)
6345 (open_thread_token, impersonate_self, revert_to_self)
6346 (get_process_memory_info, get_process_working_set_size)
6347 (global_memory_status, global_memory_status_ex): New wrapper
6348 functions.
6349 (w32_list_system_processes, w32_system_process_attributes)
6350 (enable_privilege, restore_privilege, ltime, process_times):
6351 New functions.
6352 (convert_time_raw): New function.
6353 (convert_time): Remove conversion of FILETIME into time in 100
6354 nsec units, call convert_time_raw instead.
6355
6356 * process.h (w32_list_system_processes, w32_system_process_attributes):
6357 Add prototypes.
6358 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6359 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6360 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6361 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6362
6363 * process.c (Fsystem_process_attributes): Doc fix.
6364
63652008-08-08 Chong Yidong <cyd@stupidchicken.com>
6366
6367 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6368 a continued multi-char glyph; if so, advance to the actual glyph.
6369
63702008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6371
6372 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6373
6374 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6375 (.m.o): Use it.
6376 * config.in: Regenerate.
6377
63782008-08-07 Chong Yidong <cyd@stupidchicken.com>
6379
6380 * xdisp.c (redisplay_window): Revert last change.
6381 (try_window): Check bottom scroll margin too.
6382
63832008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6384
6385 * config.in: Regenerate.
6386
6387 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6388 -list-load-path-shadows'.
6389 (nsgui.h): Reduce number of things depending on it.
6390
63912008-08-06 Chong Yidong <cyd@stupidchicken.com>
6392
6393 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6394 instead of window-end which does the wrong thing at eob.
6395 (try_cursor_movement): Minor optimization.
6396 (redisplay_window): If scroll margin is defined, don't assume
6397 window doesn't need scrolling.
6398
63992008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6400
6401 * config.in: Regenerate.
6402
6403 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6404 (mostlyclean): Don't delete *.d under NS.
6405
6406 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6407
64082008-08-06 Kenichi Handa <handa@m17n.org>
6409
6410 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6411
64122008-08-06 Andreas Schwab <schwab@suse.de>
6413
6414 * config.in: Regenerate.
6415
64162008-08-05 Chong Yidong <cyd@stupidchicken.com>
6417
6418 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6419 forcing a window start.
6420
6421 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6422 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6423
64242008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6425
6426 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6427 argument.
6428
64292008-08-05 Juanma Barranquero <lekktu@gmail.com>
6430
6431 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6432 <scroll-down-aggressively, before-change-functions>:
6433 <after-change-functions>: Reflow docstrings.
6434
64352008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6436 Ken Raeburn <raeburn@gnu.org>
6437
6438 Dock menu customization, based on a patch by Ken Raeburn, plus some
6439 other fixes.
6440 * nsmenu.m (dockMenu): New variable.
6441 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6442
6443 * nsterm.h (dockMenu): Declare.
6444
6445 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6446 (ns_term_init): Initialize dockMenu.
6447 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6448 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6449 left.
6450
6451 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6452
64532008-08-04 Chong Yidong <cyd@stupidchicken.com>
6454
6455 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6456
6457 * config.in: Regenerate.
6458
64592008-08-04 Seiji Zenitani <zenitani@mac.com>
6460
6461 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6462
64632008-08-04 Chong Yidong <cyd@stupidchicken.com>
6464
6465 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6466
64672008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6468
6469 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6470
6471 * keyboard.h: Comment an #endif.
6472
6473 * lisp.h (have_menus_p): Adjust comment.
6474
6475 * menu.c (find_and_return_menu_selection): Fix comparison with
6476 client_data.
6477
6478 * nsmenu.m (popup_activated_flag): New variable.
6479 (popup_activated): New function.
6480 (menu-or-popup-active-p): New exported lisp definition.
6481 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6482 when popup done.
6483 (ns_popup_dialog): Set popup_activated_flag.
6484
6485 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6486 version for GNUstep (handled by conditional typedef in nsterm.m).
6487 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6488 in rgb.txt).
6489
6490 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6491
6492 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6493
6494 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6495
6496 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6497 shortcircuit if popup_activated like GTK and X toolkit.
6498
6499 * m/inter386.h: Change DARWIN to DARWIN_OS.
6500
6501 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6502 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6503 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6504 comment on NO_SOCK_SIGIO.
6505
65062008-08-03 Chong Yidong <cyd@stupidchicken.com>
6507
6508 * nsterm.m (windowDidResize): Remove stopModal call.
6509
65102008-08-03 Andreas Schwab <schwab@suse.de>
6511
6512 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6513 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6514
65152008-08-02 Chong Yidong <cyd@stupidchicken.com>
6516
6517 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6518 Don't use uninitialized pointer variable when using getrlimit.
6519
65202008-08-02 Jason Rumney <jasonr@gnu.org>
6521
6522 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6523
65242008-08-02 Eli Zaretskii <eliz@gnu.org>
6525
6526 * alloc.c (NSTATICS): Bump to 0x640.
6527
6528 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6529
6530 * lisp.h: Add prototype for directory_files_internal.
6531
6532 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6533 New functions.
6534 (syms_of_process): Defsubr them. Add initializations for various
6535 Q* symbols used in procfs_system_process_attributes.
6536 (procfs_list_system_processes, procfs_system_process_attributes)
6537 [HAVE_PROCFS]: New functions.
6538 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6539 (procfs_get_total_memory): New functions.
6540
65412008-08-01 Juanma Barranquero <lekktu@gmail.com>
6542
6543 * xfaces.c (Fx_load_color_file): Fix previous change;
6544 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6545
65462008-08-01 Michael Albinus <michael.albinus@gmx.de>
6547
6548 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6549
65502008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6551
6552 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6553
65542008-08-01 Chong Yidong <cyd@stupidchicken.com>
6555
6556 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6557
6558 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6559 define NSApplicationDelegateReplySuccess.
6560 (EmacsView -converstationIdentifier): Use long instead of
6561 NSInteger for GNUstep, since it doesn't have NSInteger.
6562
6563 * xmenu.c: Revert last change.
6564
6565 * keyboard.h: Fix last change.
6566
65672008-08-01 Juanma Barranquero <lekktu@gmail.com>
6568
6569 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6570 on Windows.
6571
65722008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6573
6574 Warning clearing and clean-up in NS port.
6575 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6576 Add prototypes.
6577 * nsgui.h (FACE_DEFAULT): Remove, unused.
6578 (XGCValues): Change colors to unsigned long.
6579 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6580 nsterm.m.
6581 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6582 (ns_list_fonts): Remove, unused.
6583 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6584 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6585 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6586 (nsfont_draw): Compare face colors to 0, not nil.
6587 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6588 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6589 (-addSubmenuWithTitle:): Use NSMenuItem class.
6590 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6591 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6592 (ns_clip_to_row): Make gc arg a BOOL.
6593 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6594 ns_clip_to_row() call.
6595 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6596 used). Cast FRAME_FONT assignments.
6597 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6598 (ns_string_to_lispmod): Change arg to const char.
6599 (ns_term_init): Use NSMenuItem class.
6600 (EmacsApp -openFile:): Move to different section of file.
6601 (EmacsApp -application:openFiles:): Don't return a value, call
6602 -replyToOpenOrPrint:.
6603 (EmacsView -keyDown:): Fix up cast.
6604 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6605 (EmacsView -menuDown:): Cast tag in call to
6606 find_and_call_menu_selection().
6607 (ns_list_fonts): Remove, unused.
6608 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6609 (ns_fontname_to_xlfd): Make static.
6610 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6611 Remove prototypes (now in keyboard.h).
6612 (next_menubar_widget_id): Remove, unused.
6613 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6614 Remove prototypes (now in keyboard.h).
6615 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6616
66172008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6618
6619 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6620 (floatfns.o): Depend on syssignal.h.
6621 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6622
6623 * systty.h: Fix previous change that removed BSD_TERMIOS.
6624 Add comments to #ifdefs.
6625
66262008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6627
6628 * w32fns.c (w32-load-color-file): Remove.
6629 (x-open-connection): Use renamed Fx_load_color_file.
6630 * xfaces.c (x-load-color-file): Add.
6631 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6632 Emacs.clr.
6633 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6634
66352008-07-31 Michael Albinus <michael.albinus@gmx.de>
6636
6637 * dbusbind.c (Fdbus_call_method_asynchronously)
6638 (Fdbus_method_error_internal): New defuns.
6639 (xd_read_message): Handle also reply messages.
6640 (Vdbus_registered_functions_table): Extend docstring.
6641
66422008-07-31 Juanma Barranquero <lekktu@gmail.com>
6643
6644 * keyboard.c (gobble_input): Fix previous change.
6645
66462008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6647
6648 * bitmaps/README:
6649 * xfns.c:
6650 * termcap.c:
6651 * term.c:
6652 * syswait.h:
6653 * systty.h:
6654 * systime.h:
6655 * syssignal.h:
6656 * sysdep.c:
6657 * process.h:
6658 * process.c:
6659 * print.c:
6660 * ndir.h:
6661 * lread.c:
6662 * keyboard.c:
6663 * getpagesize.h:
6664 * floatfns.c:
6665 * fileio.c:
6666 * emacs.c:
6667 * doc.c:
6668 * dispnew.c:
6669 * dired.c:
6670 * data.c:
6671 * callproc.c:
6672 * buffer.c:
6673 * README:
6674 * Makefile.in:
6675 * s/template.h:
6676 * s/msdos.h:
6677 * m/vax.h: Remove VMS support.
6678 * s/vms.h:
6679 * vlimit.h:
6680 * uaf.h:
6681 * temacs.opt:
6682 * param.h:
6683 * ioctl.h: Remove file.
6684
66852008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6686
6687 * s/ms-w32.h (MULTI_KBOARD): Remove.
6688 * xterm.c:
6689 * xselect.c:
6690 * xfns.c:
6691 * window.c:
6692 * w32term.c:
6693 * w32fns.c:
6694 * terminal.c:
6695 * termhooks.h:
6696 * term.c:
6697 * sysdep.c:
6698 * keyboard.h:
6699 * keyboard.c:
6700 * frame.h:
6701 * frame.c:
6702 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6703 * config.in: Regenerate.
6704
67052008-07-30 Jason Rumney <jasonr@gnu.org>
6706
6707 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6708
6709 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6710 (w32font_open_internal): Get unicode version of textmetrics.
6711 Don't enable or disable glyph indices here.
6712 (w32font_open): Disable use of glyph indices.
6713
6714 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6715
67162008-07-30 Chong Yidong <cyd@stupidchicken.com>
6717
6718 * minibuf.c (Vread_buffer_function): Doc fix.
6719
67202008-07-30 John Paul Wallington <jpw@pobox.com>
6721
6722 * minibuf.c (read_buffer_completion_ignore_case): New var.
6723 (Fread_buffer): Use it.
6724
67252008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6726
6727 * systty.h (sensemode): Remove empty #if. Remove reference to
6728 BSD_TERMIOS, unused.
6729
6730 * sysdep.c: Remove reference to DGUX.
6731 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6732
6733 * config.in: Regenerate.
6734
67352008-07-30 Jason Rumney <jasonr@gnu.org>
6736
6737 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6738
67392008-07-29 Jason Rumney <jasonr@gnu.org>
6740
6741 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6742 is populated.
6743 (uniscribe_encode_char): Always use uniscribe.
6744 Avoid using context if cache is populated.
6745
67462008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6747
6748 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6749 open menu.
6750
6751 * gtkutil.c (menu_nav_ended): Remove.
6752 (create_menus): Remove signal connect for menu_nav_ended.
6753
67542008-07-28 Chong Yidong <cyd@stupidchicken.com>
6755
6756 * xdisp.c (redisplay_window): Check return value of
6757 compute_window_start_on_continuation_line before forcing a window
6758 start.
6759
67602008-07-28 Jason Rumney <jasonr@gnu.org>
6761
6762 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6763
6764 * w32term.c (w32_enable_unicode_output, cleartype_active):
6765 Remove obsolete display options.
6766 (x_draw_glyph_string_background): Don't use old cleartype_active
6767 workaround.
6768 (w32_initialize): Remove cleartype_active initialization.
6769 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6770
67712008-07-28 Andreas Schwab <schwab@suse.de>
6772
6773 * lisp.h (init_weak_hash_tables, syms_of_font)
6774 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6775 (remove_hash_entry): Don't declare.
6776 * eval.c (maybe_call_debugger): Make static and move before use.
6777 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6778 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6779 * xterm.h (x_set_frame_alpha): Declare.
6780
67812008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6782
6783 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6784 (create_menus): Connect selection-done to menu_nav_ended.
6785
67862008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6787
6788 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6789 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6790 parameter with read of 'alpha' one.
6791 (Qns_frame_parameter): Remove.
5582fbc7 6792 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6793 (next-selection-coding-system, Vselection_coding_system)
6794 (Vnext_selection_coding_system): Drop.
6795
67962008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6797
6798 * nsfns.m (do-applescript, do_applescript): Rename to
6799 ns-do-applescript, ns_do_applescript, and move within file.
6800
68012008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6802
6803 Remove support for Mac Carbon.
6804 * mactoolbox.c:
6805 * macterm.h:
6806 * macterm.c:
6807 * macselect.c:
6808 * macmenu.c:
6809 * macgui.h:
6810 * macfns.c:
6811 * mac.c: Remove file.
6812 * s/darwin.h:
6813 * m/intel386.h:
6814 * xfaces.c:
6815 * xdisp.c:
6816 * window.c:
6817 * tparam.c:
6818 * termhooks.h:
6819 * termcap.c:
6820 * term.c:
6821 * syssignal.h:
6822 * sysselect.h:
6823 * sysdep.c:
6824 * process.c:
6825 * lread.c:
6826 * lisp.h:
6827 * keyboard.c:
6828 * image.c:
6829 * fringe.c:
6830 * frame.h:
6831 * frame.c:
6832 * fontset.c:
6833 * font.h:
6834 * font.c:
6835 * fns.c:
6836 * fileio.c:
6837 * emacs.c:
6838 * dispnew.c:
6839 * dispextern.h:
6840 * config.in:
6841 * atimer.c:
2ae37cf0 6842 * Makefile.in: Remove code for Carbon.
aac0c6e3 6843
f0131492 68442008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6845
6846 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6847
68482008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6849
6850 * macterm.h (kCGBitmapByteOrder32Host): New define for
6851 non-universal SDKs.
6852
6853 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6854 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6855
6856 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6857 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6858
68592008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6860
6861 * w32inevt.c: Include dispextern.h.
6862
68632008-07-26 Andreas Schwab <schwab@suse.de>
6864
6865 * print.c (print_object): Fix off-by-one in last change.
6866
68672008-07-25 Juanma Barranquero <lekktu@gmail.com>
6868
6869 * term.c (syms_of_term): Don't initialize default_orig_pair,
6870 default_set_foreground and default_set_background on Windows.
6871
68722008-07-25 Jason Rumney <jasonr@gnu.org>
6873
6874 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6875 ScriptItemize. Clean up return value checking. Remove unused
6876 variables.
6877 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6878 shaping engine.
6879
6880 * w32font.c (w32font_has_char): Handle the case where we can't
6881 determine the script for a character.
6882
68832008-07-25 Chong Yidong <cyd@stupidchicken.com>
6884
6885 * term.c (syms_of_term): Initialize default_orig_pair,
6886 default_set_foreground, and default_set_background.
6887
6888 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6889 clash (bug#86).
6890 (getloadavg): Callers changed.
6891
6892 * image.c (svg_load_image): Fix last change.
6893 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6894 image size is valid. Use g_object_unref instead of deprecated
6895 rsvg_handle_free to free rsvg handle.
6896 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6897
68982008-07-25 Jason Rumney <jasonr@gnu.org>
6899
6900 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6901 surrogates before looking up glyph index.
6902 (w32font_text_extents): Encode as surrogates if falling back to
6903 functions that need UTF-16 wide chars.
6904
6905 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6906 BMP as surrogates before looking up glyph index.
6907
69082008-07-25 Chong Yidong <cyd@stupidchicken.com>
6909
6910 * image.c (svg_load_image): Check for failure in return value of
6911 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6912
69132008-07-25 Jason Rumney <jasonr@gnu.org>
6914
6915 * w32font.c (Fx_select_font): Reverse sense of second arg.
6916
69172008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6918
6919 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6920 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6921
6922 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6923 (PURESIZE): Use it.
6924
69252008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6926
6927 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6928 * m/alpha.h (TEXT_END):
6929 * m/ibmrs6000.h (TEXT_END):
6930 * m/macppc.h (TEXT_END):
6931 * s/darwin.h (TEXT_END):
6932 * s/msdos.h (TEXT_END): Remove, unused.
6933 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6934 * s/cygwin.h: Remove comment.
6935
6936 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6937 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6938 * m/intel386.h (DOT_GLOBAL_START):
6939 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6940 (USG): Remove, file not used on USG platforms.
6941
6942 * Makefile.in (HAVE_X11): Remove empty #else.
6943
69442008-07-24 Andreas Schwab <schwab@suse.de>
6945
6946 * fileio.c (Finsert_file_contents): Properly adjust undo list
6947 after format conversion.
6948
69492008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6950
6951 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6952 (menu_nav_ended): Remove.
6953 (create_menus): Remove signal connect for menu_nav_ended.
6954 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6955 create_menus.
6956 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6957
69582008-07-23 Jason Rumney <jasonr@gnu.org>
6959
6960 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6961 with opened font.
6962 (w32font_open): Set font type to gdi.
6963
6964 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6965
69662008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6967
6968 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6969 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6970 defines it.
6971 * unexec.c (ADDR_CORRECT): Define unconditionally.
6972
6973 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6974
6975 * unexec.c: Remove code depending on !COFF and USG, the file is
6976 not used for such systems.
6977
6978 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6979 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6980 (LD_SWITCH_SYSTEM_1): Remove, update users.
6981
6982 * s/darwin.h (DATA_END):
6983 * m/intel386.h (DATA_END):
6984 * m/ibmrs6000.h (DATA_END):
6985 * m/alpha.h (DATA_END): Remove, unused.
6986
6987 * config.in: Regenerate.
6988 * s/ms-w32.h (subprocesses): Define unconditionally.
6989 * s/template.h (subprocesses): Update comment.
6990 * s/vms.h (subprocesses):
6991 * s/usg5-4.h (subprocesses):
6992 * s/hpux10-20.h (subprocesses):
6993 * s/gnu-linux.h (subprocesses):
6994 * s/cygwin.h (subprocesses):
6995 * s/bsd-common.h (subprocesses):
6996 * s/aix4-2.h (subprocesses):
6997 * s/darwin.h (subprocesses): Do not define, defined by default now.
6998
6999 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7000 Remove all references.
7001 (temacs): Add GNUstep specific ld flags.
7002
7003 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7004 similarly to what X does.
7005
70062008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7007
7008 * nsfns.m (x-list-fonts): Remove.
7009 (syms_of_nsfns): Drop the x-list-fonts declaration.
7010 * nsterm.m: Get rid of remaining "//" comments.
7011
70122008-07-22 Chong Yidong <cyd@stupidchicken.com>
7013
7014 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7015
7016 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7017 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7018 (Fns_own_selection_internal, Fx_disown_selection_internal)
7019 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7020
7021 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7022 ... */' style of docstrings. Doc fixes.
7023
70242008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7025
7026 * terminfo.c (UP, BC, PC): Undo previous change.
7027
7028 * nsfns.m: Rename ns prefixed functions/variables to the
7029 corresponding x versions. Update references.
7030
70312008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7032
7033 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7034
70352008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7036
7037 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7038 Remove forwarding functions.
7039 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7040 non-static.
7041 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7042 non-static.
7043 (ns_frame_parm_handlers): Use the new names.
7044 (syms_of_nsfns): Move to the end of file.
7045
7046 * nsterm.m (syms_of_nsterm): Move to the end of file.
7047
7048 * dispnew.c (init_display): Remove code for X10.
7049
70502008-07-22 Jason Rumney <jasonr@gnu.org>
7051
7052 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7053 bare drive.
7054
70552008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7056
7057 * nsterm.m (syms_of_nsterm): Remove debugging println.
7058
70592008-07-22 David Reitter <david.reitter@gmail.com>
7060
7061 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7062 Carbon implementation of the same functionality: execute arbitrary
7063 AppleScript code.
7064
70652008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7066
7067 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7068 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7069 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7070 (Fx_display_mm_height, Fx_display_mm_width)
7071 (Fx_display_backing_store, Fx_display_visual_class)
7072 (Fx_display_save_under, Fx_open_connection)
7073 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7074 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7075 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7076 (Fx_display_pixel_width, Fx_display_pixel_height)
7077 (Fx_display_usable_bounds, Fx_display_planes)
7078 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7079 ... */' style of docstrings.
7080
70812008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7082
7083 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7084 on this platform.
7085 (mips):
7086 * m/iris4d.h (mips): Do not define.
7087 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7088
7089 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7090
7091 * image.c:
7092 * nsfns.m:
7093 * nsselect.m:
7094 * nsterm.h:
7095 * nsterm.m: Rename ns prefixed functions/variables to the
7096 corresponding x versions. Update references.
7097
7098 * m/ibms390x.h (NO_REMAP): Do not undefine.
7099
7100 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7101
71022008-07-21 Chong Yidong <cyd@stupidchicken.com>
7103
7104 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7105 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7106 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7107 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7108 (Fns_display_mm_height, Fns_display_mm_width)
7109 (Fns_display_backing_store, Fns_display_visual_class)
7110 (Fns_display_save_under, Fns_open_connection)
7111 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7112 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7113 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7114 (Fns_display_pixel_width, Fns_display_pixel_height)
7115 (Fns_display_usable_bounds, Fx_display_planes)
7116 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7117
71182008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7119
7120 * print.c (print_object): Check print_depth before searching for
7121 circularities.
7122
71232008-07-21 Michael Albinus <michael.albinus@gmx.de>
7124
7125 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7126 only sprintf.
7127
71282008-07-21 Kenichi Handa <handa@m17n.org>
7129
7130 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7131
71322008-07-20 Andreas Schwab <schwab@suse.de>
7133
7134 * syntax.c (find_start_pos, find_start_value)
7135 (find_start_value_byte, find_start_begv, find_defun_start)
7136 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7137
71382008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7139
7140 * s/sol2-3.h: Insert contents of s/sol2.h.
7141 (LD_SWITCH_SYSTEM): Remove redundant definition.
7142 * s/sol2.h: Remove, unused.
7143
71442008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7145
7146 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7147
71482008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7149
7150 * Makefile.in (ns_appdir): Fix typo in find command.
7151
71522008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7153
7154 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7155
7156 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7157 added not supported anymore.
7158
7159 * s/usg5-4-2.h (LIBS_SYSTEM):
7160 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7161
7162 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7163 * s/lynxos.h (GETPGRP_NO_ARG):
7164 * s/hpux10-20.h (NO_SIOCTL_H):
7165 * s/gnu.h (GETPGRP_NO_ARG):
7166 * s/gnu-linux.h (NO_SIOCTL_H):
7167 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7168 * s/cygwin.h (GETPGRP_NO_ARG):
7169 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7170 (C_DEBUG_SWITCH): Remove duplicate definition.
7171
7172 * m/ibms390.h: Remove boilerplate comments.
7173
7174 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7175
7176 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7177 (wait_reading_process_output): Remove code for SunOS, platform not
7178 supported anymore. Use SOLARIS2 instead of sun.
7179
71802008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7181
7182 * font.c (font_open_by_name): Under NS, default lface height to zero.
7183 (font_open_for_lface): Under NS, set size based on frame fontsize.
7184 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7185 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7186
71872008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7188
7189 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7190 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7191 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7192 YES/NO.
7193 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7194 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7195 * Makefile.in (clean): Clear out build destination dir.
7196
71972008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7198
7199 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7200 xterm, xselect.
7201 * lisp.h: Remove declaration of hash_remove.
7202 * nsgui.h: Remove redefinitions of hash_remove.
7203 * fns.c (hash_remove): Rename to hash_remove_from_table.
7204
72052008-07-19 Seiji Zenitani <zenitani@mac.com>
7206
7207 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7208 strdup() the family UTF8String before modifying it.
7209
72102008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7211
7212 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7213 NS_FACE_BACKGROUND with 0 instead of nil.
7214 * nsfont.m (nsfont_draw): Same.
7215
72162008-07-19 Chong Yidong <cyd@stupidchicken.com>
7217
7218 * nsfns.m (ns_set_background_color): Fix crash.
7219
72202008-07-18 Chong Yidong <cyd@stupidchicken.com>
7221
7222 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7223
72242008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7225
7226 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7227
72282008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7229
7230 * gtkutil.c: Include <config.h> instead of "config.h".
7231
7232 * lisp.h (Foverlay_buffer): Add EXFUN.
7233
7234 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7235 child process to complete child_setup. Undo 2005-09-21 change.
7236
7237 * s/darwin.h: Mention setsid after vfork.
7238
72392008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7240
7241 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7242 Depend on macgui.h.
7243
7244 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7245 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7246
7247 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7248 and f19.
7249 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7250
7251 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7252 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7253 Remove enumerators.
7254
7255 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7256 Check if FACE_FROM_ID returns NULL.
7257
72582008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7259
7260 * w32inevt.c (change_frame_size): Remove extern declaration.
7261 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7262 change_frame_size.
7263
72642008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7265
7266 * getloadavg.c: Revert last change (2008-07-15).
7267
72682008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7269
7270 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7271 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7272 from configure.
7273
72742008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7275
7276 * s/sol2.h:
7277 * s/sol2-4.h: Reorganize conditionals.
7278
7279 * ecrt0.c: Remove code depending on m68000, not used anymore.
7280
7281 * fns.c (hash_remove): Make static.
7282 * lisp.h (hash_remove): Don't prototype.
7283
7284 * m/ibmrs6000.h:
7285 * m/ibms390x.h:
7286 * m/macppc.h: Remove boilerplate comments.
7287
7288 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7289 Solaris, which does not need them.
7290
7291 * m/vax.h: Remove comments about unsupported systems.
7292
7293 * s/darwin.h: Reorganize ifdefs.
7294
72952008-07-17 Andreas Schwab <schwab@suse.de>
7296
7297 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7298
72992008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7300
7301 Use SDATA. Follow coding convention of placing operators at
7302 beginning of next line rather than end of previous line, and placing
7303 spaces around infix operators.
7304
7305 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7306 in case it was defined already.
7307 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7308 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7309 ns_default.
7310 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7311 Lisp_Objects.
7312 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7313 (ns_defined_color, ns_color_to_lisp): Declare.
7314 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7315 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7316 it's accepted even with USE_LISP_UNION_TYPE.
7317 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7318 (update_frame_tool_bar): Remove apparently obsolete tests for
7319 non-integerness of f->tool_bar_lines.
7320 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7321 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7322 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7323 (nsfont_open): Don't confuse NULL for Qnil.
7324 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7325 * menu.h (find_and_call_menu_selection):
7326 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7327 (find_and_return_menu_selection): Always return something.
7328 * frame.h: Include dispextern.h for Display_Info.
7329 (display_x_get_resource): Declare.
7330
73312008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7332
7333 * syntax.c: Remove stdio.h include accidentally introduced in
7334 Emacs.app commit.
7335 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7336 NS_IMPL_COCOA.
7337 * keyboard.c (handle_async_input, input_available_signal): Remove
7338 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7339
73402008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7341
7342 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7343 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7344 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7345 Use SDATA.
7346
7347 * keymap.c: Remove all NS-specific code.
7348 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7349 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7350 where_is_preferred_modifier, return a different value depending on how
7351 preferred is the binding.
7352 (where_is_internal): Adjust accordingly.
7353 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7354 Adjust to new preferred_sequence_p.
7355 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7356 * keyboard.c (parse_solitary_modifier): Not static any more.
7357 * keyboard.h (parse_solitary_modifier): Declare.
7358
73592008-07-16 Andreas Schwab <schwab@suse.de>
7360
7361 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7362 of easymenu.
7363
73642008-07-16 Chong Yidong <cyd@stupidchicken.com>
7365
7366 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7367 that we don't move off the line.
7368
73692008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7370
7371 * keyboard.c (Qsuper): Remove.
7372 (parse_menu_item): Don't call where_is_internal specially for NS.
7373
73742008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7375
7376 * s/gnu-linux.h: Remove boilerplate comments.
7377
7378 * m/alpha.h (__ELF__): Consolidate conditions.
7379
7380 * m/m68k.h (linux): Use GNU_LINUX instead.
7381 Remove boilerplate comments.
7382
7383 * m/intel386.h: Undo refactoring from previous change.
7384 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7385 too, remove dead code.
7386 (linux): Use GNU_LINUX instead.
7387
73882008-07-16 Jason Rumney <jasonr@gnu.org>
7389
7390 * w32gui.h: Repeat 26 June changes lost by last change.
7391
73922008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7393
7394 * systty.h: Remove code for Aix on 386, unsupported platform.
7395
7396 * s/ms-w32.h: Remove boilerplate comments.
7397 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7398
7399 * s/gnu-linux.h (TERM): Remove support.
7400 (HAVE_SYSVIPC): Remove, unused.
7401 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7402 for this system.
7403
7404 * process.c: Remove support for IRIS, unused.
7405 Remove support for TERM, not relevant anymore.
7406
7407 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7408 used with the definition.
7409
7410 * s/aix4-2.h (static): Do not undef.
7411
7412 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7413 only used on Aix.
7414 (HAVE_SYSVIPC): Remove, unused.
7415
7416 * m/hp800.h (CANNOT_DUMP): Do not undef.
7417
7418 * m/alpha.h: Fix comment.
7419
7420 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7421 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7422 used by this configuration.
7423 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7424 * unexec.c: Remove code depending on HPUX and
7425 USG_SHARED_LIBRARIES, not used with this file. Remove code
7426 depending on IRIS, unused. Remove if 0-ed code.
7427
7428 * s/template.h: Remove comments about static.
7429
7430 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7431 Remove if 0-ed code.
7432 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7433 were the same as the default.
7434 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7435 Remove boilerplate comments.
7436 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7437 (HAVE_SYSVIPC): Remove, unused.
7438 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7439
7440 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7441 Remove boilerplate comments.
7442 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7443 Remove boilerplate comments.
7444 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7445 Remove boilerplate comments.
7446 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7447
7448 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7449 USG systems which do not use DATA_SEG_BITS.
7450 Refactor code. Remove boilerplate comments.
7451
7452 * m/ibms390.h:
7453 * m/m68k.h:
7454 * s/bsd-common.h:
7455 * s/cygwin.h:
7456 * s/darwin.h:
7457 * s/freebsd.h:
7458 * s/gnu.h:
7459 * s/msdos.h: Remove boilerplate comments.
7460
7461 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7462 do not use this file.
aac0c6e3
MR
7463 (IRIS_4D): Remove, unused.
7464
7465 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7466 do not use this file.
aac0c6e3
MR
7467 (SIGN_EXTEND_CHAR):
7468 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7469 * unexmips.c: Remove file, unused.
7470
7471 * editfns.c (Fuser_full_name): Replace the only use of
7472 USER_FULL_NAME with its value.
7473 * config.in: Regenerate.
7474
74752008-07-16 David Reitter <david.reitter@gmail.com>
7476
7477 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7478 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7479
74802008-07-16 Glenn Morris <rgm@gnu.org>
7481
7482 * emacs.c (system-type): Doc fix.
7483
74842008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7485
7486 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7487 If the cache doesn't work, let's fix it, rather than work around it.
7488
74892008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7490
7491 * Makefile.in: Correct additions for nsfont.o in last commit.
7492 * nsfont.m: New file (forgot last commit).
7493
74942008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7495
7496 * callproc.c (set_initial_environment): Initialize
7497 Vprocess_environment under CANNOT_DUMP (fixes crash when
7498 batch-compiling for bootstrap).
7499
75002008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7501 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7502
7503 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7504 fix crash due to different init order.
7505
75062008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7507
7508 Changes and additions for NeXTstep windowing system (Cocoa and
7509 GNUstep) support.
7510
7511 * Makefile.in:
7512 * config.in: Support defines and build commands for NS port.
7513 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7514 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7515 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7516 windowing.
7517 (struct face): Add synth_ital field.
7518 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7519 (init_display): Initialize Vinitial_window_system to "ns" when so
7520 compiled.
7521 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7522 (display_arg): Use under NS.
7523 (main): Under NS, allocate autorelease pool and handle command line
7524 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7525 (standard_args): Add NS-specific args.
7526 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7527 * font.c (DEFAULT_ENCODING): New variable.
7528 (font_find_for_lface): Use it.
7529 (syms_of_font): Load syms_of_nsfont under NS.
7530 * font.h: Declare nsfont_driver when compiled under NS.
7531 * fontset.c: When compiling under NS, include nsterm.h.
7532 (fontset_from_font): Autoconstruct fontset under NS.
7533 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7534 symbol, document and use it.
7535 (do_switch_frame): When for_deletion under Cocoa, add
7536 Fraise_frame(Qnil).
7537 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7538 (x_get_arg): Allow "yes" and "no" as boolean values.
7539 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7540 Qright under Cocoa.
7541 (focus-follows-mouse): Default to 0 under NS.
7542 * frame.h (enum output_method): Add output_ns.
7543 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7544 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7545 (FRAME_WINDOW_P): NS-specific definition.
7546 * fringe.c (max_used_fringe_bitmap): Make public.
7547 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7548 (getloadavg): Use NeXT code under descendant OS's.
7549 * image.c (includes and header section, x_create_bitmap_from_data)
7550 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7551 (image_background_transparent, x_clear_image_1)
7552 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7553 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7554 (x_to_xcolors, x_from_xcolors, x_disable_image)
7555 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7556 other GUIs, including XPM support using code originally written for
7557 Carbon GUI.
7558 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7559 using NS API.
7560 (image_ascent): Use font metrics macros instead of direct struct field
7561 access.
7562 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7563 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7564 Also, handle NS as GTK for menu bar purposes.
7565 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7566 toolkit where they differ.
7567 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7568 use cachelist, still needed under NS.
7569 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7570 (struct widget_value): Define it here for menu.c.
7571 * keymap.c (includes): Include modifier internals.
7572 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7573 NS.
7574 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7575 support for preferring sequences using certain modifiers, specified by
7576 the FIRSTONLY argument.
7577 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7578 under NS GNUstep implementation.
7579 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7580 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7581 * menu.c: Include nsterm.h under NS.
7582 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7583 (free_menubar_widget_tree_value, update_submenu_strings)
7584 (find_and_call_menu_selection): Treat NS as X and NT.
7585 (find_and_return_menu_selection): New function, used for popup menus.
7586 * nsgui.h:
7587 * nsterm.h:
7588 * nsfns.m:
7589 * nsimage.m:
7590 * nsmenu.m:
7591 * nsselect.m:
7592 * nsterm.m: New files.
7593 * process.c (wait_reading_process_output): Under NS, call ns_select()
7594 instead of plain select().
7595 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7596 beginning of buffer.
7597 * sysselect.h (init_process): Rename when compiling under Cocoa to
7598 avoid name conflict.
7599 * termhooks.h (display_info): Add ns_display_info to union.
7600 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7601 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7602 COCOA environment.
7603 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7604 unexec() signature. (Note, this will dump, but the resulting file
7605 crashes; unexosx is used instead; keeping around for reference and
7606 possible aid in getting dump working under GNUstep.)
7607 * w32gui.h (button_type, widget_value): Remove definitions (now in
7608 keyboard.h).
7609 * window.c: Include nsterm.h when compiling under NS.
7610 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7611 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7612 other GUI windowing systems.
7613 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7614 GTK.
7615 (x_consider_frame_title): Under NS, set icon type and frame
7616 modified-state indicator; use ns_set_name_as_filename() when using
7617 formatted title.
7618 (update_window_cursor): Make public when compiling under NS.
7619 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7620 (hourglass_atimer, Vhourglass_delay
7621 * xfaces.c (header section, init_frame_faces, clear_font_table)
7622 (defined_color, unload_color, x_face_list_fonts)
7623 (prepare_face_for_display): Add NS support parallel to other GUIs.
7624 Emulate GCs like other non-X GUIs.
7625 (split_font_name): Don't lowercase font name under NS.
7626 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7627 under NS.
7628 * s/darwin.h: Add support for compilation under NS.
7629
76302008-07-15 Jason Rumney <jasonr@gnu.org>
7631
7632 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7633 (w32_show_hourglass): Rename from show_hourglass.
7634 (w32_hide_hourglass): Rename from hide_hourglass.
7635 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7636 (Vhourglass_delay): Declare extern.
7637 (hourglass_started): Remove.
7638
7639 * xdisp.c (Vhourglass_delay): Remove static.
7640 (hourglass_started, start_hourglass, cancel_hourglass):
7641 Don't include these versions on WINDOWSNT.
7642
76432008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7644
7645 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7646 variables (formerly in xfns.c).
7647 (show_hourglass, hide_hourglass): New prototypes (same).
7648 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7649 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7650 in xfns.c).
7651 (syms_of_xdisp): Declare/initialize display-hourglass,
7652 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7653 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7654 formerly in xfns.c.
7655 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7656 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7657 (start_hourglass, cancel_hourglass): Remove.
7658 (show_hourglass, hide_hourglass): Remove prototypes and static
7659 modifiers.
7660 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7661 hourglass_atimer, hourglass_shown_p declaration/initialization.
7662 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7663 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7664 (start_hourglass, cancel_hourglass): Remove.
7665 (show_hourglass, hide_hourglass): Remove prototypes and static
7666 modifiers.
7667 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7668 hourglass_atimer, hourglass_shown_p declaration/initialization.
7669 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7670 (DEFAULT_HOURGLASS_DELAY): Remove.
7671 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7672 hourglass_shown_p declaration/initialization.
7673
76742008-07-14 Jason Rumney <jasonr@gnu.org>
7675
7676 * w32fns.c (w32_get_arg): Remove wrapper function.
7677 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7678 directly.
7679 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7680
76812008-07-14 Kenichi Handa <handa@m17n.org>
7682
7683 * xfont.c (xfont_open): Add workaround for X's bug.
7684
76852008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7686
7687 * fontset.c: Include <stdio.h> unconditionally.
7688
76892008-07-13 Michael Albinus <michael.albinus@gmx.de>
7690
7691 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7692 for filtering.
7693
76942008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7695
7696 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7697
7698 * m/macppc.h:
7699 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7700
7701 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7702 (SPECIAL_EMACS_INT):
7703 * m/ia64.h (SPECIAL_EMACS_INT):
7704 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7705 * s/gnu.h (NLIST_STRUCT):
7706 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7707 * s/gnu-linux.h (LINUX):
7708 * s/msdos.h (HAVE_FACES):
7709 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7710
7711 * systty.h:
7712 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7713 anymore.
7714
77152008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7716
7717 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7718 always defined as int.
7719
7720 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7721 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7722 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7723 * s/freebsd.h (HAVE_WAIT_HEADER):
7724 * s/bsd-common.h (HAVE_UNION_WAIT):
7725 * s/aix4-2.h (HAVE_WAIT_HEADER):
7726 * m/mips.h (HAVE_UNION_WAIT):
7727 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7728 (COFF, static): Do not define, they are undefined later in the file.
7729
7730 * process.c (update_status): Don't use a union.
7731 (status_convert):
7732 (sigchld_handler): Use int instead of WAITTYPE.
7733
77342008-07-12 Chong Yidong <cyd@stupidchicken.com>
7735
7736 * indent.c (Fvertical_motion): Restore hscroll before moving to
7737 goal column.
7738
77392008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7740
7741 * lisp.h: Remove left over code.
7742
77432008-07-11 Andreas Schwab <schwab@suse.de>
7744
7745 * lisp.h: Fix logic in last change.
7746
7747 * menu.h: New file.
7748 * menu.c: Include it.
7749 * xmenu.c: Likewise.
7750 * Makefile.in: Update dependencies.
7751
77522008-07-11 Kenichi Handa <handa@m17n.org>
7753
7754 * fontset.c (fontset_from_font): Cancel the previous change.
7755
77562008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7757
7758 * lisp.h:
7759 * w32heap.c:
7760 * emacs.c:
7761 * alloc.c: Replace all references of NO_UNION_TYPE with
7762 USE_LISP_UNION_TYPE.
7763
7764 * m/xtensa.h (NO_UNION_TYPE):
7765 * m/vax.h (NO_UNION_TYPE):
7766 * m/template.h (NO_UNION_TYPE):
7767 * m/sparc.h (NO_UNION_TYPE):
7768 * m/mips.h (NO_UNION_TYPE):
7769 * m/macppc.h (NO_UNION_TYPE):
7770 * m/m68k.h (NO_UNION_TYPE):
7771 * m/iris4d.h (NO_UNION_TYPE):
7772 * m/intel386.h (NO_UNION_TYPE):
7773 * m/ibms390x.h (NO_UNION_TYPE):
7774 * m/ibms390.h (NO_UNION_TYPE):
7775 * m/ibmrs6000.h (NO_UNION_TYPE):
7776 * m/ia64.h (NO_UNION_TYPE):
7777 * m/hp800.h (NO_UNION_TYPE):
7778 * m/arm.h (NO_UNION_TYPE):
7779 * m/amdx86-64.h (NO_UNION_TYPE):
7780 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7781 defining it the same.
7782
77832008-07-10 Chong Yidong <cyd@stupidchicken.com>
7784
7785 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7786
77872008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7788
7789 * fileio.c:
7790 * sysdep.c
7791 * systty.h:
7792 * m/ibmrs6000.h:
7793 * m/iris4d.h:
7794 * s/aix4-2.h:
7795 * s/freebsd.h:
7796 * s/gnu-linux.h:
7797 * s/hpux10-20.h:
7798 * s/hpux11.h:
7799 * s/netbsd.h:
7800 * s/sol2-3.h:
7801 * s/sol2-4.h:
7802 * s/sol2.h:
7803 * s/usg5-4.h:
7804 * s/vms.h: Remove references to unused variables.
7805
78062008-07-10 Andreas Schwab <schwab@suse.de>
7807
7808 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7809 pattern before matching the generic family.
7810
78112008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7812
7813 * unexec.c:
7814 * s/vms.h:
7815 * s/usg5-4-2.h:
7816 * s/sol2-5.h:
7817 * s/freebsd.h:
7818 * s/darwin.h: Remove dead code.
7819
7820 * m/template.h:
7821 * m/sparc.h:
7822 * m/mips.h:
7823 * m/m68k.h:
7824 * m/iris4d.h:
7825 * m/intel386.h:
7826 * m/ibms390x.h:
7827 * m/ibms390.h:
7828 * m/ia64.h:
7829 * m/hp800.h:
7830 * m/arm.h:
7831 * m/amdx86-64.h: Remove dead code and references to unused
7832 and compiler defined symbols.
7833
7834 * unexmips.c:
7835 * unexelf.c: Remove references to desupported systems.
7836
7837 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7838
7839 * m/powermac.h: Remove boilerplate comments.
7840 (NO_REMAP): Remove unused definition.
7841
7842 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7843 define them.
7844
78452008-07-10 Kenichi Handa <handa@m17n.org>
7846
7847 * xfont.c (xfont_open): Log the reason of failure.
7848
78492008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7850
7851 * fontset.c (fontset_get_font_group):
7852 * font.c (font_check_otf): Specify argument types.
7853
78542008-07-09 Kenichi Handa <handa@m17n.org>
7855
7856 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7857 non-ASCII char is found.
7858
7859 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7860 (reorder_font_vector): Change the arg preferred_family to font.
7861 Prefer the spec matching with font.
7862 (fontset_get_font_group): New function.
7863 (fontset_find_font): Change the format of an element of a realized
7864 fontset. Use fontset_get_font_group.
7865 (fontset_font): Try the current fontset, the default fontset, the
7866 fallbacks of the current fontset, and the fallbacks of the default
7867 fontset in this order.
7868 (face_for_char): Delete the shortcut to use the current font.
7869 (fontset_from_font): Don't set fonts for Latin in the fontset.
7870
7871 * font.h (font_make_object, font_match_p): Adjust prototypes.
7872
7873 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7874
7875 * font.c (font_make_object): New arg entity and pixelsize.
7876 (font_check_otf_features, font_check_otf): New functions.
7877 (font_match_p): Check :lang, :script, and :otf properties.
7878
7879 * xfont.c (xfont_open): Adjust it for the change of
7880 font_make_object.
7881 (xfont_text_extents): Fix initial setting of metrics.
7882
7883 * ftfont.c (struct ftfont_info): New member index, delete member
7884 fc_charset_idx. Make the member order compatible with struct
7885 xftfont_info.
7886 (fc_charset_table): Change charset names to registry names.
7887 (ftfont_pattern_entity): Delete the args registry and
7888 fc_charset_idx. Change the value of :font-entity property
7889 to (FONTNAME . INDEX). Always set :registry property to
7890 `iso10646-1'.
7891 (struct ftfont_cache_data): New struct.
7892 (ftfont_lookup_cache): New arg for_face.
7893 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7894 (ftfont_driver): Set the member otf_capability.
7895 (ftfont_get_charset): Adjust it for the change of
7896 fc_charset_table.
7897 (OTF_TAG_SYM): New macro.
7898 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7899 for the change of fc_charset_table.
7900 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7901 ftfont_pattern_entity. Add FC_INDEX to objset.
7902 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7903 and ftfont_pattern_entity.
7904 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7905 font_make_object, struct ftfont_info.
7906 (ftfont_has_char): Use ftfont_get_fc_charset.
7907 (ftfont_otf_features, ftfont_otf_capability): New functions.
7908 (ftfont_shape): Use ftfont_get_otf.
7909 (ftfont_text_extents): Fix initial setting of metrics.
7910
7911 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7912 member order compatible with struct ftfont_info.
7913 (xftfont_open): Add FC_CHARSET to the pattern. Set
7914 xftfont_info->ft_size. Don't unlock the face. Check BDF
7915 properties if appropriate.
7916 (xftfont_close): Unlock the face.
7917 (xftfont_anchor_point, xftfont_shape): Deleted.
7918 (syms_of_xftfont): Don't set members anchor_point and shape of
7919 xftfont_driver.
7920
7921 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7922 font_make_object.
7923
7924 * w32font.c (w32font_open): Adjust it for the change of
7925 font_make_object.
7926 (w32font_open_internal): Don't set properties of font_object here.
7927
79282008-07-08 Chong Yidong <cyd@stupidchicken.com>
7929
7930 * macfns.c (x_create_tip_frame):
7931 * w32fns.c (x_create_tip_frame):
7932 * xfns.c (x_create_tip_frame): Pass parameter argument to
7933 face-set-after-frame-default.
7934
7935 * xfaces.c (Finternal_merge_in_global_face): Save merged
7936 attributes for the default face back into the face vector.
7937
79382008-07-08 Andreas Schwab <schwab@suse.de>
7939
7940 * fontset.h: Declare fontset_from_font. Don't declare
7941 new_fontset_from_font and fontset_from_font_name.
7942 * xterm.c: Include "fontset.h".
7943 * Makefile.in (xterm.o): Update dependencies.
7944
79452008-07-08 Glenn Morris <rgm@gnu.org>
7946
7947 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7948 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7949
79502008-07-07 Chong Yidong <cyd@stupidchicken.com>
7951
7952 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7953 (x_set_frame_parameters): Don't bind it.
7954
79552008-07-07 Juanma Barranquero <lekktu@gmail.com>
7956
7957 * w32fns.c (map_w32_filename): Declare extern.
7958
79592008-07-07 Jason Rumney <jasonr@gnu.org>
7960
7961 * w32term.c (WS_EX_LAYERED): Define if not already.
7962
79632008-07-06 Chong Yidong <cyd@stupidchicken.com>
7964
7965 * xfaces.c (set_font_frame_param): Don't try to set the font
7966 parameter if it is still unspecified in the lface.
7967
79682008-07-05 Chong Yidong <cyd@stupidchicken.com>
7969
7970 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7971 face if it didn't already exist.
7972
7973 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7974
79752008-07-05 Andreas Schwab <schwab@suse.de>
7976
7977 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7978
79792008-07-05 Chong Yidong <cyd@stupidchicken.com>
7980
7981 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7982 word-wrapping.
7983 (IT_DISPLAYING_WHITESPACE): New macro.
7984 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7985 when word-wrapping. Simplify word-wrapping logic. Use correct
7986 pixel positions when saving copies of the iterator.
7987 (display_line): Use proper wrap point if the last character on a
7988 line was preceded by whitespace.
7989
79902008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7991
7992 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7993
79942008-07-04 Kenichi Handa <handa@m17n.org>
7995
7996 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7997
7998 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7999
80002008-07-02 Jason Rumney <jasonr@gnu.org>
8001
8002 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8003 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8004
8005 * xdisp.c (next_element_from_display_vector): Move assignment out
8006 of if statement.
8007
80082008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8009
8010 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8011
8012 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8013 (syms_of_fileio): Initialize and export them.
8014 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8015
8016 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8017 (Fsystem_move_file_to_trash): New function.
8018 (syms_of_w32fns): Export it to lisp.
8019
80202008-07-01 Jason Rumney <jasonr@gnu.org>
8021
8022 * w32font.c (w32font_text_extents): Don't count overhang as part
8023 of width.
8024
80252008-06-30 Miles Bader <miles@gnu.org>
8026
8027 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8028 Add `avoid_cursor_p' field.
8029
8030 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8031 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8032 (append_glyph, append_composite_glyph, produce_image_glyph)
8033 (append_stretch_glyph): Initialize avoid_cursor_p.
8034 (get_it_property): Rename from `get_line_height_property'.
8035 (x_produce_glyphs): Use get_it_property.
8036 (handle_line_prefix, push_display_prop): New functions.
8037 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8038 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8039 New variables.
8040 (syms_of_xdisp): Initialize them.
8041
80422008-06-30 Kenichi Handa <handa@m17n.org>
8043
8044 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8045 XftDefaultSubstitute (they are called in XftFontMatch).
8046 (xftfont_open): Fix args to ftfont_font_format.
8047
8048 * ftfont.c (fc_charset_table): New member lang.
8049 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8050 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8051 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8052 (ftfont_open): Fix args to ftfont_font_format.
8053 (ftfont_font_format): New arg filename.
8054
80552008-06-30 Chong Yidong <cyd@stupidchicken.com>
8056
8057 * xfaces.c (Finternal_merge_in_global_face): If default face was
8058 modified, realize it again. Update the font face attribute.
8059
80602008-06-29 Jason Rumney <jasonr@gnu.org>
8061
8062 * w32term.c (x_set_frame_alpha): Fix logic.
8063
80642008-06-29 Kenichi Handa <handa@m17n.org>
8065
8066 * fontset.c (Finternal_char_font): Return font-object instead of
8067 font-name.
8068
8069 * composite.c (get_composition_id): Fix the width calculation for TAB.
8070
80712008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8072
8073 * indent.c (Fvertical_motion): Properly handle float column arg.
8074
80752008-06-28 Jason Rumney <jasonr@gnu.org>
8076
8077 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8078 (pfnSetLayeredWindowAttributes): New function pointer.
8079 (w32_initialize): Initialize it when supported.
8080 (x_set_frame_alpha): New function.
8081
8082 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8083 (w32_frame_parm_handlers): Set alpha handler.
8084
8085 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8086
80872008-06-27 Jason Rumney <jasonr@gnu.org>
8088
8089 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8090 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8091 (w32_to_x_charset, x_to_w32_charset)
8092 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8093 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8094 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8095 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8096 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8097 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8098 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8099 (Qw32_charset_unicode): Remove.
8100 (syms_of_w32fns): Update for above changes.
8101
8102 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8103 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8104 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8105 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8106 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8107 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8108 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8109 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8110 (syms_of_w32font): Update for above changes.
8111
81122008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8113
8114 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8115 removed #if.
8116 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8117
81182008-06-26 Juanma Barranquero <lekktu@gmail.com>
8119 Eli Zaretskii <eliz@gnu.org>
8120
8121 * makefile.w32-in (LOCAL_FLAGS):
8122 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8123
8124 * sysdep.c (_spawnlp, _getpid):
8125 Declare with explicit _cdecl instead of _CRTAPI1.
8126
8127 * editfns.c (Fget_internal_run_time):
8128 Check for WINDOWSNT with #ifdef, not #if.
8129
81302008-06-26 Jason Rumney <jasonr@gnu.org>
8131
8132 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8133
8134 * w32term.c (x_draw_glyph_string_foreground)
8135 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8136 Use FONT_HANDLE macro.
8137 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8138
8139 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8140 (uniscribe_encode_char): Use FONT_HANDLE macro.
8141
8142 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8143 (w32font_text_extents): Use precast w32_font.
8144 (w32font_close): Free cached metrics.
8145 (w32font_open_internal): Allocate space for name on stack.
8146
81472008-06-26 Chong Yidong <cyd@stupidchicken.com>
8148
8149 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8150
81512008-06-26 Jason Rumney <jasonr@gnu.org>
8152
8153 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8154 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8155
81562008-06-26 Juanma Barranquero <lekktu@gmail.com>
8157
8158 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8159
81602008-06-26 Jason Rumney <jasonr@gnu.org>
8161
8162 * w32bdf.c, w32bdf.h: Remove obsolete files.
8163
8164 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8165
8166 * w32gui.h: Don't include w32bdf.h.
8167 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8168 Remove obsolete font support.
8169
8170 * w32font.h (struct w32font_info): Remove compat_w32_font.
8171 Add hfont member.
8172 (FONT_COMPAT): Remove obsolete macro.
8173
8174 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8175 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8176 (w32font_open_internal): Remove compat code. Set new hfont member.
8177 (Fx_select_font): Use new hfont member.
8178
8179 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8180 (uniscribe_encode_char): Use new hfont member.
8181
8182 * w32term.c (x_draw_glyph_string_foreground)
8183 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8184 (x_draw_glyph_string): Use metrics in w32font_info.
8185
81862008-06-26 Kenichi Handa <handa@m17n.org>
8187
8188 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8189
81902008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8191
8192 * unexnext.c:
8193 * m/ews4800.h:
8194 * m/hp9000s300.h:
8195 * m/ibm370aix.h:
8196 * m/mips-siemens.h:
8197 * m/ncr386.h:
8198 * m/next.h:
8199 * m/pmax.h:
8200 * m/powerpcle.h:
8201 * m/tandem-s2.h:
8202 * s/386bsd.h:
8203 * s/bsd386.h:
8204 * s/bsd4-1.h:
8205 * s/bsd4-2.h:
8206 * s/bsdos2-1.h:
8207 * s/bsdos2.h:
8208 * s/bsdos3.h:
8209 * s/bsdos4.h:
8210 * s/nextstep.h:
8211 * s/ultrix4-3.h:
8212 * s/usg5-0.h:
8213 * s/usg5-2-2.h:
8214 * s/usg5-2.h:
8215 * s/usg5-4-3.h:
8216 * s/ux4800.h:
8217 * s/uxpds.h:
8218 * s/uxpv.h: Remove support for obsolete systems.
8219 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8220 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8221 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8222 Remove, insert contents in s/aix4-2.h.
8223 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8224 * s/bsd4-3.h: Rename to ...
8225 * s/bsd-common.h: ... this.
8226 * data.c:
8227 * doc.c:
8228 * ecrt0.c:
8229 * emacs.c:
8230 * fileio.c:
8231 * floatfns.c:
8232 * keyboard.c:
8233 * mem-limits.h:
8234 * print.c:
8235 * process.c:
8236 * sysdep.c:
8237 * syssignal.h:
8238 * systty.h:
8239 * syswait.h:
8240 * term.c:
8241 * unexec.c:
8242 * unexelf.c:
8243 * unexhp9k800.c:
8244 * m/hp800.h:
8245 * m/ibmrs6000.h:
8246 * m/mips.h:
8247 * m/vax.h:
8248 * s/darwin.h:
8249 * s/freebsd.h:
8250 * s/gnu.h:
8251 * s/ms-w32.h:
8252 * s/msdos.h:
8253 * s/netbsd.h:
8254 * s/template.h: Remove references to obsolete variables.
8255
8256 * Makefile.in: Add dependencies for all unexec files.
8257 (admindir): Remove unused variable.
8258 (UNEXEC_SRC): Remove references.
8259
82602008-06-25 Chong Yidong <cyd@stupidchicken.com>
8261
8262 * xfns.c (x_default_font_parameter): If Xft is available, first
8263 try Monospace-12 for the default font.
8264
82652008-06-25 Jason Rumney <jasonr@gnu.org>
8266
8267 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8268
82692008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8270
8271 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8272
8273 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8274
82752008-06-25 Juanma Barranquero <lekktu@gmail.com>
8276
8277 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8278 <scroll-conservatively>: Fix typo in docstring.
8279
8280 * xselect.c (Fx_send_client_event): Doc fix.
8281
82822008-06-25 Kenichi Handa <handa@m17n.org>
8283
8284 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8285
8286 * font.c (font_parse_fcname): Remove unused variables.
8287 (font_sort_entites): Delete the arg SPEC. Caller changed.
8288 Fix for the case of ! best_only.
8289 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8290
8291 * lisp.h (Fstring_to_unibyte): EXFUN it.
8292
8293 * character.h (str_to_unibyte): Extern it.
8294
8295 * character.c (str_to_unibyte): New function.
8296
8297 * fns.c (Fstring_to_unibyte): New function.
8298 (syms_of_fns): Defsubr it.
8299
83002008-06-24 Kenichi Handa <handa@m17n.org>
8301
8302 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8303 DPI too.
8304 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8305
83062008-06-24 Andreas Schwab <schwab@suse.de>
8307
8308 * Makefile.in (${lispsource}loaddefs.el): Rename from
8309 ../lisp/loaddefs.el.
8310 (bootstrap-clean): Do what distclean does but don't remove
8311 Makefile.
8312 (distclean): Depend on bootstrap-clean and remove Makefile.
8313
83142008-06-24 Chong Yidong <cyd@stupidchicken.com>
8315
8316 * buffer.h (struct buffer): New member word_wrap.
8317
8318 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8319 word-wrap.
8320 (init_buffer_once): Initialize them.
8321
8322 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8323 line_wrap enum possessing three possible values.
8324
8325 * termopts.h: Replace truncate_partial_width_windows with
8326 Vtruncate_partial_width_windows.
8327
8328 * dispnew.c (direct_output_for_insert): Avoid direct output when
8329 inserting a space with word wrap on.
8330
8331 * indent.c (compute_motion): Obey integer values of
8332 truncate-partial-width-windows.
8333
8334 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8335 replacing truncate_partial_width_windows.
8336 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8337 truncate only if the window width is below that integer.
8338 (start_display, resize_mini_window, produce_stretch_glyph)
8339 (display_string, move_it_in_display_line_to): Use line_wrap.
8340 (back_to_previous_visible_line_start, reseat_1): Reset
8341 string_from_display_prop_p.
8342 (display_line): Extend default face to end of line when wrapping.
8343
83442008-06-24 Kim F. Storm <storm@cua.dk>
8345
8346 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8347 to wrap continued lines at word boundaries.
8348
83492008-06-24 Jason Rumney <jasonr@gnu.org>
8350
8351 * font.c (Ffont_face_attributes): Multiply pixel size before point
8352 conversion to avoid multiplying rounding error.
8353
83542008-06-23 Jason Rumney <jasonr@gnu.org>
8355
8356 * w32term.c (x_draw_glyph_string_background)
8357 (x_draw_glyph_string): Remove old bdf font code.
8358
8359 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8360
83612008-06-22 Kenichi Handa <handa@m17n.org>
8362
8363 * font.c (font_find_for_lface): Try the adstyle specified in
8364 the property of LFACE_FONT of LFACE (if any).
8365
83662008-06-21 Seiji Zenitani <zenitani@mac.com>
8367 Ryo Yoshitake <ryo@shiftmode.net>
8368
8369 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8370
83712008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8372
8373 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8374 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8375 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8376 (witness-emacs): Remove.
8377 (lisp, shortlisp): Move loaddefs.el earlier.
8378 (mostlyclean): Forget about witness-emacs.
8379
83802008-06-22 Glenn Morris <rgm@gnu.org>
8381
8382 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8383 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8384
83852008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8386
8387 * Makefile.in (PRECOMP): Remove.
8388 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8389 (witness-emacs): Run `compile-first'.
8390 (.el.elc): Use the new compile-onefile target.
8391
83922008-06-21 Kenichi Handa <handa@m17n.org>
8393
8394 * xftfont.c (xftfont_open): Handle QCembolden only when
8395 FC_EMBOLDEN is defined.
8396
83972008-06-21 Andreas Schwab <schwab@suse.de>
8398
8399 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8400 (.el.elc): Likewise.
8401
84022008-06-21 Miles Bader <miles@gnu.org>
8403
8404 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8405 build dir, not the lisp source dir.
8406
84072008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8408
8409 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8410 (bootstrapclean): Remove.
8411 (.el.elc): New rule.
8412 (PRECOMP): New var.
8413 (../lisp/subdirs.el): Remove.
8414 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8415 (witness-emacs): New target.
8416 (mostlyclean): Remove witness-emacs as well.
8417 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8418 Add witness-emacs dependency.
8419
84202008-06-20 Chong Yidong <cyd@stupidchicken.com>
8421
8422 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8423 defined by the font.
8424
84252008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8426
8427 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8428 (bootstrap-clean): New target that keeps TAGS around.
8429 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8430 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8431
84322008-06-20 Jason Rumney <jasonr@gnu.org>
8433
8434 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8435 Remove obsolete font code.
8436
8437 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8438 to determine language support.
8439
84402008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8441
8442 * sysdep.c (cfsetspeed): New fun extracted from the code.
8443 (cfmakeraw): Move before first use.
8444
84452008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8446
8447 * sysdep.c (cfmakeraw): Provide fallback implementation.
8448 (serial_configure): Provide fallback implementation of cfsetspeed.
8449
84502008-06-20 Kenichi Handa <handa@m17n.org>
8451
8452 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8453 the pattern.
8454
8455 * fontset.c (fontset_from_font): Copy font_spec before changing
8456 the elements.
8457
8458 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8459
84602008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8461
8462 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8463 for explicit `font' parameters.
8464
8465 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8466
84672008-06-19 Kenichi Handa <handa@m17n.org>
8468
8469 * frame.c: Include <ctype.h>.
8470 (x_set_font_backend): Allow spacing characters in the X resource
8471 for FontBackend.
8472
84732008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8474
8475 * w32fns.c, xfns.c (Qfont_param): New var.
8476 (syms_of_w32fns): Initialize it.
8477 (x_default_font_parameter): Record explicit `font' into
8478 `font-parameter'.
8479
84802008-06-18 Kenichi Handa <handa@m17n.org>
8481
8482 * font.c (font_parse_xlfd): Fix previous change.
8483 (font_parse_fcname): Don't use :fc-unknown-spec.
8484 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8485 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8486 (font_add_log): Prepend the driver name to the resulting fonts.
8487
8488 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8489 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8490 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8491
8492 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8493 (QCembolden): New variables.
8494 (syms_of_xftfont): DEFSYM them.
8495 (xftfont_open): Call XftFontMatch. Don't trust the result of
8496 XftTextExtents8 if the pixel_size is less than 5.
8497
84982008-06-18 Andreas Schwab <schwab@suse.de>
8499
8500 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8501 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8502
85032008-06-18 Jason Rumney <jasonr@gnu.org>
8504
8505 * w32font.c (w32font_list, w32font_match): Add logging.
8506
8507 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8508
85092008-06-17 Chong Yidong <cyd@stupidchicken.com>
8510
8511 * font.c (font_parse_fcname): Store divider characters for
8512 unknown-spec list. For known key symbols, intern using correct
8513 symbol name.
8514
85152008-06-17 Kenichi Handa <handa@m17n.org>
8516
8517 * xfaces.c (realize_default_face): If the frame is not on window
8518 system, set the fontset of face to nil.
8519
85202008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8521
8522 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8523
85242008-06-16 Juanma Barranquero <lekktu@gmail.com>
8525
8526 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8527 (build_font_name_from_vector): Delete externs.
8528
8529 * xfaces.c (struct font_name): Don't declare.
8530
85312008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8532
8533 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8534
85352008-06-16 Chong Yidong <cyd@stupidchicken.com>
8536
8537 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8538
85392008-06-16 Juanma Barranquero <lekktu@gmail.com>
8540
8541 * font.c (Ffont_spec): Fix usage in docstring.
8542 (Ffont_face_attributes): Doc fix.
8543
85442008-06-16 Andreas Schwab <schwab@suse.de>
8545
8546 * font.c (Ffont_face_attributes): Fix definition.
8547
85482008-06-16 Jason Rumney <jasonr@gnu.org>
8549
8550 * font.h (font_style_symbolic_from_value): Remove.
8551
8552 * font.c (font_style_symbolic_from_value): Remove.
8553 (font_style_symbolic): Revert to pre 2008-06-13 version.
8554
8555 * w32font.c (w32_to_fc_weight): New function.
8556 (w32font_full_name, logfont_to_fcname): Use it.
8557
85582008-06-16 Kenichi Handa <handa@m17n.org>
8559
8560 * font.c (font_check_object): Delete it.
8561 (font_clear_cache): Check if a font-object is alive.
8562 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8563 font-object to nil.
8564 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8565 (font_at): Don't call font_check_object.
8566 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8567
85682008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8569
8570 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8571
85722008-06-16 Chong Yidong <cyd@stupidchicken.com>
8573
8574 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8575
85762008-06-15 Chong Yidong <cyd@stupidchicken.com>
8577
8578 * font.c (font_parse_fcname): Only one decimal point.
8579 (font_unparse_fcname): Handle data in family and foundry indices
8580 as symbols, not strings.
8581 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8582
8583 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8584
8585 * font.h (font_unparse_gtkname): Add prototype.
8586
85872008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8588
8589 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8590
85912008-06-15 Andreas Schwab <schwab@suse.de>
8592
8593 * font.c (font_update_drivers): Fix crash when no drivers match.
8594
85952008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8596
8597 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8598 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8599
86002008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8601
8602 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8603
86042008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8605
8606 * process.c (Fserial_process_configure, Fprocess_send_eof):
8607 Use EQ to compare Lisp_Objects.
8608
86092008-06-13 Jason Rumney <jasonr@gnu.org>
8610
8611 * w32fns.c (Fw32_select_font): Remove old font API function.
8612
8613 * w32font.c (logfont_to_fcname): New function.
8614 (Fx_select_font): New font dialog function compatible with
8615 GTK/fontconfig version.
8616
8617 * font.c (font_style_symbolic_from_value): New function.
8618 (font_style_symbolic): Use it.
8619
8620 * font.h (font_style_symbolic_from_value): Declare new function.
8621
86222008-06-13 Juanma Barranquero <lekktu@gmail.com>
8623
8624 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8625 <font-width-table>: Fix typos in docstrings.
8626
86272008-06-13 Daniel Engeler <engeler@gmail.com>
8628
8629 These changes add serial port access.
8630 * process.c: Add HAVE_SERIAL.
8631 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8632 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8633 (list_processes_1, select_wrapper, Fstop_process)
8634 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8635 (status_notify): Modify to handle serial processes.
8636 [HAVE_SERIAL] (Fserial_process_configure)
8637 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8638 New functions.
8639 * process.h (struct Lisp_Process): Add `type'.
8640 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8641 New functions.
8642 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8643 serial ports.
b71ac3dd 8644 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8645 * w32.h: Add FILE_SERIAL.
8646 (struct _child_process): Add ovl_read, ovl_write.
8647
86482008-06-13 Kenichi Handa <handa@m17n.org>
8649
8650 * dispextern.h (enum lface_attribute_index): New member
8651 LFACE_FOUNDRY_INDEX.
8652
8653 * font.c (font_score): Delete arg alternate_families. Check only
8654 weight, slant, width, and size. Ignore the difference of alias
8655 style symbols.
8656 (font_sort_entites): Adjust for the above change. Reflect the
8657 order of font-driver to scores.
8658 (font_list_entities): Don't check alternate_familes here.
8659 (font_clear_prop): Handle foundry.
8660 (font_update_lface): Don't parse "foundry-family" form here.
8661 Handle FONT_FOUNDRY_INDEX.
8662 (font_find_for_lface): Likewise. Handle alternate families here.
8663 If registry is nil, try iso8859-1 and ascii-0.
8664 (font_open_for_lface): Pay attention to size in ENTITY.
8665 (font_open_by_name): Simplify by calling font_load_for_lface.
8666 (free_font_driver_list): Delete it.
8667 (font_update_drivers): Preserve the order of backends.
8668 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8669 of font_score and font_sort_entites.
8670 (font_update_sort_order): Likewise.
8671
8672 * xfaces.c (LFACE_FOUNDRY): New macro.
8673 (check_lface_attrs): Check foundry.
8674 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8675 (merge_face_vectors): Check foundry.
8676 (merge_face_ref): Likewise.
8677 (Finternal_set_lisp_face_attribute): Likewise.
8678 (x_update_menu_appearance): Likewise.
8679 (Finternal_get_lisp_face_attribute): Likewise.
8680 (lface_hash): Likewise.
8681 (lface_same_font_attributes_p): Likewise.
8682 (x_supports_face_attributes_p): Likewise.
8683 (tty_supports_face_attributes_p): Likewise.
8684 (Finternal_set_alternative_font_family_alist): Intern strings.
8685 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8686 (realize_default_face): Set LFACE_FOUNDRY (lface).
8687
8688 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8689 font-driver at first.
8690
8691 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8692
86932008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8694
8695 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8696
86972008-06-12 Jim Meyering <meyering@redhat.com>
8698
8699 Make unexec_free handle NULL the same way free does.
8700 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8701
87022008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8703
8704 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8705 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8706 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8707 (WEAK_ALIAS): Simplify.
8708 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8709 when searching a unibyte buffer.
8710
87112008-06-12 Chong Yidong <cyd@stupidchicken.com>
8712
8713 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8714
87152008-06-12 Juanma Barranquero <lekktu@gmail.com>
8716
8717 * w32font.c: Include ctype.h.
8718
87192008-06-11 Jason Rumney <jasonr@gnu.org>
8720
8721 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8722 misreported as space.
8723 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8724 as aliases for registry iso10646-1.
8725
87262008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8727
8728 * buffer.c (clone_per_buffer_values): Skip `name'.
8729
87302008-06-11 Chong Yidong <cyd@stupidchicken.com>
8731
8732 * font.c (font_parse_fcname): Fix last change; accept decimal
8733 points in font size.
8734
87352008-06-10 Jason Rumney <jasonr@gnu.org>
8736
8737 * w32uniscribe.c (add_opentype_font_name_to_list):
8738 Skip non unicode fonts.
8739
87402008-06-10 Chong Yidong <cyd@stupidchicken.com>
8741
8742 * xfns.c (Fx_font_dialog): New function.
8743
8744 * gtkutil.c (xg_dialog_response_cb): Rename from
8745 xg_file_response_callback.
8746 (pop_down_dialog): Rename from pop_down_file_dialog.
8747 (xg_get_file_name): Callers changed.
8748 (xg_get_font_name): New function.
8749
8750 * gtkutil.h (xg_get_font_name): Insert prototype.
8751
87522008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8753
8754 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8755 x_underline_minimum_display_offset.
8756 (syms_of_xdisp): Declare it here rather than in xterm.c.
8757 * dispextern.h (underline_minimum_offset): Declare it.
8758 * w32term.c (x_draw_glyph_string): Use it.
8759 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8760 (syms_of_xterm): Don't declare it any more.
8761 (x_draw_glyph_string): Adjust to the new name.
8762
87632008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8764
8765 * xterm.c (x_underline_minimum_display_offset): New var.
8766 (x_draw_glyph_string): Use it.
8767 (syms_of_xterm): Declare it.
8768
87692008-06-10 Chong Yidong <cyd@stupidchicken.com>
8770
8771 * font.c (font_parse_fcname): Accept GTK-style font names too.
8772
87732008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8774
8775 * dired.c (file_name_completion): Don't return t if the match is exact
8776 but with different capitalization.
8777 * minibuf.c (Ftry_completion): Simplify.
8778
8779 * window.c (Vwindow_point_insertion_type): New var.
8780 (set_window_buffer): Use it.
8781 (syms_of_window): Init and export it to Lisp.
8782
87832008-06-10 Kenichi Handa <handa@m17n.org>
8784
8785 * font.h (font_intern_prop): Prototype adjusted.
8786
8787 * font.c (font_intern_prop): New arg force_symbol.
8788 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8789 Adjust for the change of font_intern_prop.
8790
8791 * ftfont.c (ftfont_pattern_entity):
8792 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8793 (w32_registry):
8794 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8795 the change of font_intern_prop.
8796
87972008-06-09 Juanma Barranquero <lekktu@gmail.com>
8798
8799 * w32menu.c (digest_single_submenu): Declare extern.
8800
88012008-06-09 Jason Rumney <jasonr@gnu.org>
8802
8803 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8804
8805 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8806 (parse_single_submenu): Remove.
8807 (digest_single_submenu): Remove.
8808 (syms_of_w32menu): Don't initialise variables that have moved
8809 to menu.c.
8810 (set_frame_menubar): Sync with version in xmenu.c.
8811 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8812
8813 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8814 Make static again.
8815
88162008-06-09 Jason Rumney <jasonr@gnu.org>
8817
8818 Changes to w32 files related to the move of common menu code
8819 to menu.c on 2008-06-08 by Chong Yidong.
8820
8821 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8822 defs to w32gui.h.
8823 (single_keymap_panes, push_menu_item, push_menu_pane):
8824 Make globally visible.
8825
8826 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8827 (local_free, malloc_widget_value, free_widget_value)
8828 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8829 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8830 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8831 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8832 (menu_items, menu_items_allocated, menu_items_used)
8833 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8834 (init_menu_items, finish_menu_items, discard_menu_items)
8835 (grow_menu_items, push_submenu_start, push_submenu_end)
8836 (push_left_right_boundary, push_menu_pane, push_menu_item)
8837 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8838 (free_menubar_widget_tree_value, parse_single_submenu)
8839 (update_submenu_strings): Remove functions.
8840 (xmalloc_widget_value): Remove and declare extern.
8841
8842 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8843 (OBJ1): Build it.
8844
8845 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8846 (local_heap, local_alloc, local_free, malloc_widget_value)
8847 (free_widget_value): Define here.
8848
88492008-06-09 Kenichi Handa <handa@m17n.org>
8850
8851 * font.h (Qascii_0): Extern it.
8852
8853 * font.c (Qascii_0): New variable.
8854 (syms_of_font): DEFSYM it.
8855 (font_open_by_name): If the registry "iso8859-1" fails, try also
8856 "ascii-0".
8857
8858 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8859
88602008-06-08 Kenichi Handa <handa@m17n.org>
8861
8862 * .gdbinit (xfont): New command.
8863
88642008-06-08 Andreas Schwab <schwab@suse.de>
8865
8866 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8867 * Makefile.in (menu.o): Update dependencies.
8868
8869 * Makefile.in (obj): Always add menu.o.
8870 * emacs.c (main): Always call syms_of_menu.
8871 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8872
88732008-06-08 Chong Yidong <cyd@stupidchicken.com>
8874
8875 * Makefile.in: Compile menu.c.
8876
8877 * lisp.h: Declare syms_of_menu.
8878
8879 * emacs.c (main): Call syms_of_menu.
8880
8881 * keyboard.h: Relocate platform-independent menu definitions from
8882 xmenu.c.
8883
8884 * menu.c: New file. Relocate platform-independent menu
8885 definitions from xmenu.c. Suggested by Adrian Robert.
8886
8887 * xmenu.c: Remove platform-independent menu definitions.
8888 (menu_items menu_items_inuse, menu_items_allocated)
8889 (menu_items_used, menu_items_n_panes)
8890 (menu_items_submenu_depth): Move to keyboard.h.
8891 (init_menu_items, finish_menu_items, unuse_menu_items)
8892 (discard_menu_items, restore_menu_items, save_menu_items)
8893 (grow_menu_items, push_submenu_start, push_submenu_end)
8894 (push_left_right_boundary, push_menu_pane, push_menu_item)
8895 (keymap_panes, single_keymap_panes, single_menu_item)
8896 (list_of_panes, list_of_items, find_and_call_menu_selection)
8897 (xmalloc_widget_value, free_menubar_widget_value_tree)
8898 (parse_single_submenu, digest_single_submenu)
8899 (update_submenu_strings): Move to menu.c.
8900
89012008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8902
8903 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8904
89052008-06-06 Miles Bader <miles@gnu.org>
8906
8907 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8908 face, not frame default.
8909
89102008-06-05 Martin Rudalics <rudalics@gmx.at>
8911
8912 * window.c (pop_up_windows, pop_up_frames)
8913 (display_buffer_reuse_frames, Vpop_up_frame_function)
8914 (Vdisplay_buffer_function, Veven_window_heights)
8915 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8916 (Vspecial_display_function, Vsame_window_buffer_names)
8917 (Vsame_window_regexps, split_height_threshold)
8918 (Vsplit_window_preferred_function): Move those vars to window.el.
8919 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8920 (Fdisplay_buffer): Move those functions to window.el.
8921 (syms_of_window): Remove corresponding declarations.
8922 (display_buffer): New function.
8923 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8924 * dispnew.c (Flast_nonminibuf_frame): New function.
8925 * buffer.c (Fpop_to_buffer): Move to window.el.
8926
89272008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8928
8929 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8930
89312008-06-05 Kenichi Handa <handa@m17n.org>
8932
8933 * coding.c (detect_coding): Fix previous change.
8934 (detect_coding_system): Likewise.
8935
89362008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8937
8938 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8939
8940 * keymap.c (Vminibuffer_local_filename_must_match_map):
8941 Rename from Vminibuffer_local_must_match_filename_map.
8942 (syms_of_keymap):
8943 * minibuf.c (Fcompleting_read): Adjust accordingly.
8944 * commands.h: Rename declaration as well.
8945
89462008-06-05 Kenichi Handa <handa@m17n.org>
8947
8948 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8949 family name.
8950 (Ffont_put): Likewise.
8951
8952 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8953 current font-spec.
8954
8955 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8956 is unspecified.
8957
8958 * xfaces.c (realize_x_face): If the font-related face attributes
8959 are the same as those of default face, realize a new fontset from
8960 default->fontset.
8961 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8962
89632008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8964
8965 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8966 (move_it_in_display_line): New wrapper.
8967
8968 * window.c (window_scroll_pixel_based_preserve_x)
8969 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8970 (window_scroll_pixel_based, window_scroll_line_based):
8971 Use them to preserve column positions.
8972 (syms_of_window): Initialize them.
8973
8974 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8975 (HPOS . VPOS) pair.
8976
8977 * dispextern.h (move_it_in_display_line): Declare.
8978
89792008-06-05 Juanma Barranquero <lekktu@gmail.com>
8980
8981 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8982 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8983 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8984
89852008-06-04 Juanma Barranquero <lekktu@gmail.com>
8986
8987 * window.c (Fset_window_parameter): Doc fix.
8988 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8989
89902008-06-04 Joakim Verona <joakim@verona.se>
8991
8992 * window.h (struct window): Add new member window_parameters.
8993
8994 * window.c (Fwindow_parameters, Fwindow_parameter)
8995 (Fset_window_parameter): New defuns.
8996 (syms_of_window): Defsubr the new defuns.
8997 (make_window): Initialize window_parameters to nil.
8998
89992008-06-04 John Paul Wallington <jpw@pobox.com>
9000
9001 * eval.c (Fdefmacro): Doc fix.
9002
90032008-06-04 Kenichi Handa <handa@m17n.org>
9004
9005 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9006 Be sure to call setup_coding_system when we find a proper coding system.
9007 (detect_coding_system): Fix handling of coding->head_ascii.
9008
90092008-06-03 Andreas Schwab <schwab@suse.de>
9010
9011 * font.c (font_prop_validate_spacing): Fix last change.
9012
90132008-06-03 Kenichi Handa <handa@m17n.org>
9014
9015 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9016 (font_parse_fcname): Fix handling of unknown key.
9017
9018 * xfont.c (xfont_list): Try an alias.
9019
9020 * charset.c (char_charset): Return NULL if the arg charset_list is
9021 specified and C doesn't belong to any of them.
9022
90232008-06-02 Chip Coldwell <coldwell@redhat.com>
9024
9025 * font.c (font_pixel_size): Don't take cdr of an integer.
9026
90272008-06-02 Jim Meyering <meyering@redhat.com>
9028
9029 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9030 * alloc.c (xfree): Return right away for a NULL arg.
9031 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9032 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9033 * mac.c (create_apple_event_from_event_ref): Likewise.
9034 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9035 Likewise.
9036 * doprnt.c (doprnt1): Likewise.
9037 * frame.c (frame): Likewise.
9038 * keyboard.c (wipe_kboard): Likewise.
9039 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9040 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9041 * term.c (tty_default_color_capabilities, maybe_fatal)
9042 (delete_tty): Likewise.
9043 * w16select.c (string): Likewise.
9044 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9045 * w32bdf.c (w32_free_bdf_font): Likewise.
9046 * w32fns.c (w32_unload_font): Likewise.
9047 * w32font.c (w32font_close): Likewise.
9048 * window.c (size_window): Likewise.
9049 * xselect.c (receive_incremental_selection): Likewise.
9050 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9051 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9052 * w32.c (stat): Likewise.
9053
9054 Remove useless if-before-free tests.
9055 * editfns.c (Fset_time_zone_rule): Likewise.
9056 * lread.c (nosuffix): Likewise.
9057 * ralloc.c (get_bloc): Likewise.
9058 * regex.c (reg_free): Likewise.
9059 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9060 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9061 * xsmfns.c (smc_save_yourself_CB): Likewise.
9062
90632008-06-02 Kenichi Handa <handa@m17n.org>
9064
9065 * font.c (font_find_for_lface): Handle float font size.
9066 (font_open_for_lface): Likewise.
9067
9068 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9069 comparing the properties.
9070
90712008-06-01 Jason Rumney <jasonr@gnu.org>
9072
9073 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9074 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9075 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9076 Don't add empty script list.
9077 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9078
90792008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9080
9081 * Makefile.in (dot, dotdot): Remove, update users.
9082 ".." has been used elsewhere in the file for a long time.
9083 (LIBXT_STATIC): Remove conditional based on unused variable.
9084
90852008-06-01 Miles Bader <miles@gnu.org>
9086
9087 * xfaces.c (Vface_remapping_alist): New variable.
9088 (syms_of_xfaces): Initialize it.
9089 (enum named_merge_point_kind): New type.
9090 (struct named_merge_point): Add `named_merge_point_kind' field.
9091 (push_named_merge_point): Make cycle detection respect different
9092 named-merge-point kinds.
9093 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9094 Remove face-name alias resolution.
9095 (lface_from_face_name): New definition using
9096 `lface_from_face_name_no_resolve'.
9097 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9098 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9099 (get_lface_attributes): New definition that layers face-remapping on
9100 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9101 (lookup_basic_face): New function.
9102 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9103 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9104 `get_lface_attributes'.
9105 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9106 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9107 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9108
9109 * xdisp.c (init_iterator): Pass base_face_id through
9110 `lookup_basic_face' when we actually use it as a face-id.
9111 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9112 DEFAULT_FACE_ID.
9113
9114 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9115 lookup the initial face-id.
9116
9117 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9118
91192008-06-01 Juanma Barranquero <lekktu@gmail.com>
9120
9121 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9122 (Fremove_text_properties): Fix typos in docstrings.
9123
91242008-05-31 Kenichi Handa <handa@m17n.org>
9125
9126 * font.c (font_list_entities): Fix the car part of data to be
9127 stored in the cache.
9128
9129 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9130
91312008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9132
9133 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9134 Add a `test' argument so another predicate than `equal' can be used.
9135 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9136 (map_char_table): Remove unused vars `c' and `i'.
9137 * lisp.h (Foptimize_char_table): Adjust declaration.
9138 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9139
91402008-05-30 Kenichi Handa <handa@m17n.org>
9141
9142 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9143 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9144 defined.
9145
91462008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9147
9148 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9149 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9150 frame-local settings for the same variable.
9151
91522008-05-30 Kenichi Handa <handa@m17n.org>
9153
9154 * fontset.c (Ffont_info): Move to font.c.
9155 (syms_of_fontset): Delete defsubr of Sfont_info.
9156
9157 * font.c (font_style_to_value, font_score): Delete casting of the
9158 args to xstcasecmp.
9159 (register_font_driver): Increment num_font_drivers only when
9160 registering the driver globally.
9161 (Ffont_info): Move from fontset.c. Handle a font object too.
9162 (syms_of_font): Defsubr Sfont_info.
9163
91642008-05-29 Kenichi Handa <handa@m17n.org>
9165
9166 * coding.h (enum define_coding_utf8_arg_index): New enum.
9167 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9168 coding_attr_utf_bom.
9169 (enum utf_bom_type): Rename from utf_16_bom_type.
9170 (struct utf_16_spec): Adjust for the above change.
9171 (struct coding_system): Add utf_8_bom in `spec' union.
9172
9173 * coding.c (CODING_UTF_8_BOM): New macro.
9174 (enum coding_category): Delete coding_category_utf_8, add
9175 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9176 coding_category_utf_8_sig.
9177 (CATEGORY_MASK_UTF_8): Delete it.
9178 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9179 (CATEGORY_MASK_UTF_8_SIG): New macros.
9180 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9181 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9182 CATEGORY_MASK_UTF_8_SIG.
9183 (CATEGORY_MASK_UTF_8): New macro.
9184 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9185 (detect_coding_utf_8): Check BOM.
9186 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9187 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9188 (encode_coding_utf_16): Likewise.
9189 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9190 (detect_coding, detect_coding_system): Handle utf-8-auto.
9191 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9192 (syms_of_coding): Fix setting up of Vcoding_category_table.
9193
91942008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9195
9196 * process.c (Faccept_process_output): If `millisec' is non-nil,
9197 `seconds' default to 0.
9198 (wait_reading_process_output): Also return non-nil if we read output
9199 from a non-running process.
9200
92012008-05-29 Jason Rumney <jasonr@gnu.org>
9202
9203 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9204 `raster' specified.
9205 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9206 in the uniscribe backend, but disallow any font that has no
9207 unicode subrange support.
9208
92092008-05-29 Juanma Barranquero <lekktu@gmail.com>
9210
9211 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9212 Fix typos in docstrings.
9213
92142008-05-29 Kenichi Handa <handa@m17n.org>
9215
9216 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9217 (Fx_family_fonts): Set frame correctly.
9218
92192008-05-28 Jason Rumney <jasonr@gnu.org>
9220
9221 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9222
92232008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9224
9225 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9226 calling build_annotations.
9227
92282008-05-28 Juanma Barranquero <lekktu@gmail.com>
9229
9230 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9231 (Fencode_coding_string):
9232 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9233 <latin-extra-code-table>: Fix typos in docstrings.
9234 (syms_of_coding) <coding-system-alist>: Doc fix.
9235 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9236
92372008-05-28 Kenichi Handa <handa@m17n.org>
9238
9239 * fontset.c (Ffont_info): Don't call font_close_object.
9240
9241 * font.c (font_parse_family_registry): Use Ffont_put to validate
9242 foundry and family.
9243 (font_delete_unmatched): Don't check spacing.
9244 (font_list_entities): Add spacing to the spec to list fonts.
9245
9246 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9247 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9248
9249 * coding.c (encode_coding_raw_text): Fix previous change.
9250 (encode_coding_object): When the dst_object is a buffer and is
9251 different from src_object, move gap to PT.
9252
92532008-05-27 Chong Yidong <cyd@stupidchicken.com>
9254
9255 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9256
92572008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9258
9259 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9260 all branches. Compute it differently.
9261
9262 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9263
92642008-05-27 Juanma Barranquero <lekktu@gmail.com>
9265
9266 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9267 into "else if () ... else ...".
9268
92692008-05-27 Jason Rumney <jasonr@gnu.org>
9270
9271 * w32font.c (w32font_open_internal): Determine if glyph indices
9272 are likely to work here.
9273
92742008-05-27 Chong Yidong <cyd@stupidchicken.com>
9275
9276 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9277 draw overlap glyphs with appropriate highlighting.
9278
92792008-05-27 Kenichi Handa <handa@m17n.org>
9280
9281 * xfont.c (xfont_open): Fix calculation of font->average_width.
9282
92832008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9284
9285 * casefiddle.c (casify_object): Try to guess better whether the
9286 argument is a byte or a char.
9287
92882008-05-26 Andreas Schwab <schwab@suse.de>
9289
9290 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9291 Always send multiples of format size.
9292
9293 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9294
92952008-05-26 Jason Rumney <jasonr@gnu.org>
9296
9297 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9298 (compute_metrics): Don't set failure if we just cleared the cache.
9299 (w32_weight_table): Remove unused variable.
9300 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9301 backwards compatibility.
9302
93032008-05-25 Kenichi Handa <handa@m17n.org>
9304
9305 * w32term.c (x_draw_glyph_string):
9306 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9307
9308 * xfaces.c: Delete unused function prototypes.
9309 (xstrlwr, font_frame): Delete them.
9310 (clear_face_cache): Delete unused variable.
9311
9312 * xftfont.c (xftfont_open): Delete unused variable.
9313 If underline_thickness is not 1, adjust underline_position.
9314
9315 * ftxfont.c (ftxfont_open): Delete unused variable.
9316
9317 * fontset.c (face_for_char): Optimize for the case of no charset
9318 property.
9319
9320 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9321 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9322 (otf_open, font_otf_capability, generate_otf_features)
9323 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9324 Comment out by surrounding "#if 0" and "#endif" for the moment.
9325 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9326 (syms_of_font): Codes for accessing above commented out.
9327
93282008-05-24 Eli Zaretskii <eliz@gnu.org>
9329
9330 * w32proc.c: Include dispextern.h.
9331
9332 * w32.c: Include dispextern.h.
9333
93342008-05-23 Juanma Barranquero <lekktu@gmail.com>
9335
9336 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9337 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9338 Fix typos in docstrings.
9339
93402008-05-23 Jason Rumney <jasonr@gnu.org>
9341
9342 * xsmfns.c: Remove includes that are already included by config.h.
9343
93442008-05-23 Kenichi Handa <handa@m17n.org>
9345
9346 * charset.c (Qemacs, charset_emacs): New variables.
9347 (char_charset): Fix for non-Unicode characters.
9348 (syms_of_charset): Define charset_emacs.
9349
9350 * w32term.c (x_draw_glyph_string): Be sure to update
9351 s->underline_thickness and s->underline_position. Be sure to draw
9352 underline within the current line area.
9353
9354 * xterm.c (x_draw_glyph_string): Be sure to update
9355 s->underline_thickness and s->underline_position. Be sure to draw
9356 underline within the current line area.
9357
9358 * fontset.c: Delete unused variables and add casting for char *
9359 throughout the file.
9360 (fontset_font): Try the fallback fonts of the current fontset
9361 before consulting the default fontset.
9362
9363 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9364
9365 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9366
93672008-05-22 Jason Rumney <jasonr@gnu.org>
9368
9369 * font.c: Don't include strings.h.
9370
9371 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9372
9373 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9374 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9375 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9376 to call xstrcasecmp.
9377
9378 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9379
9380 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9381
9382 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9383
9384 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9385
93862008-05-22 Kenichi Handa <handa@m17n.org>
9387
9388 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9389
9390 * font.c (font_prop_validate_style): Adjust for the format
9391 change of font_style_table.
9392
9393 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9394 two args.
9395
9396 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9397 two args.
9398
93992008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9400
9401 * minibuf.c (keys_of_minibuf): Delete.
9402 * lisp.h (keys_of_minibuf): Delete.
9403 * emacs.c (main): Don't call keys_of_minibuf.
9404
94052008-05-22 Kenichi Handa <handa@m17n.org>
9406
9407 * ftfont.c (ftfont_resolve_generic_family): Rename from
9408 ftfont_list_generic_family. Return a single family for each
9409 generic family.
9410 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9411 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9412 Call font_add_log.
9413 (ftfont_match): Call font_add_log.
9414
9415 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9416 (FONT_DEBUG): Define it.
9417 (font_add_log): Extern it.
9418 (font_assert): Rename from xassert.
9419
9420 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9421 (xfont_list_family): Call font_add_log.
9422 (xfont_match): Likewise.
9423 (memq_no_quit): Delete.
9424
9425 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9426 call of Ffont_xlfd_name.
9427
9428 * xfaces.c (struct table_entry, slant_table, weight_table)
9429 (swidth_table): Move to font.c.
9430
9431 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9432 xassert are changed to font_assert. Delete many unused variables.
9433 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9434 New variables.
9435 (struct table_entry): Move from xfaces.c and modified.
9436 (weight_table, slant_table, width_table): Move from xfaces.c and
9437 contents adjusted for the change of struct table_entry.
9438 (font_style_to_value, font_style_symbolic): Adjust for the
9439 format change of font_style_table.
9440 (font_parse_family_registry): Don't overwrite existing foundry and
9441 family of font_spec.
9442 (font_score): Fix calculation of diff for sizes.
9443 (font_sort_entites): Call font_add_log.
9444 (font_delete_unmatched): Return a newly created list.
9445 (font_list_entities): Fix previous change. Call font_add_log.
9446 (font_matching_entity, font_open_entity, font_close_entity):
9447 Call font_add_log.
9448 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9449 (Finternal_set_font_style_table): Delete.
9450 (BUILD_STYLE_TABLE): New macro.
9451 (build_style_table): New function.
9452 (Vfont_log, font_log_env_checked): New variables.
9453 (font_add_log): New function.
9454 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9455 Declare Lisp variables "font-weight-table", "font-slant-table",
9456 "font-width-table", and "font-log". Initialize font_style_table.
9457
94582008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9459
9460 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9461
94622008-05-21 Seiji Zenitani <zenitani@mac.com>
9463 Ryo Yoshitake <ryo@shiftmode.net>
9464
9465 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9466 (Vframe_alpha_lower_limit): New variable.
9467 (x_set_alpha): New function.
9468
9469 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9470
9471 * xfns.c (x-create-frame, Qalpha):
9472 Initialize the frame parameter `alpha'.
9473 * xterm.c (OPAQUE, OPACITY): New.
9474 (x_set_frame_alpha): New function.
9475 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9476
9477 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9478 * w32fns.c (w32_frame_parm_handlers): Likewise.
9479
94802008-05-20 Jason Rumney <jasonr@gnu.org>
9481
9482 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9483 truetype fonts to opentype list.
9484
94852008-05-20 Juanma Barranquero <lekktu@gmail.com>
9486
9487 * fontset.c (Ffontset_info): Doc fix.
9488 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9489 <ignore-relative-composition>: Fix typos in docstrings.
9490
9491 * font.c (syms-of-font) <font-encoding-alist>:
9492 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9493 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9494 (Ffont_otf_alternates): Doc fixes.
9495
94962008-05-20 Kenichi Handa <handa@m17n.org>
9497
9498 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9499 font.h through out the file.
9500 (FONT_DRIVERS): Rename from FONTOBJ.
9501 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9502 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9503
9504 * emacs.c (main): Call syms_of_font unconditionally.
9505
9506 * font.h (find_font_encoding): Extern it.
9507
9508 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9509 fontset.c.
9510 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9511 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9512 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9513 only when HAVE_WINDOW_SYSTEM is defined.
9514 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9515 when HAVE_WINDOW_SYSTEM is defined.
9516
9517 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9518 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9519
9520 * xfaces.c: Include font.h unconditionally.
9521 (merge_face_ref, merge_face_vectors)
9522 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9523
95242008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9525
9526 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9527 indirect_variable.
9528 * eval.c (lisp_indirect_variable): New fun.
9529 (Fuser_variable_p): Use it.
9530
95312008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9532
9533 * lisp.h (indirect_variable):
9534 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9535 Use Lisp_Symbol pointers rather than Lisp_Object.
9536 Adjust callers.
9537 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9538 To this end, change calling-convention.
9539
9540 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9541 if some non-hidden buffers are selected by string&pred.
9542
95432008-05-19 Chong Yidong <cyd@stupidchicken.com>
9544
9545 * process.c (wait_reading_process_output): Always check status
9546 when in batch mode.
9547
95482008-05-19 Kenichi Handa <handa@m17n.org>
9549
9550 * font.c (font_list_entities): Fix handling of cache.
9551 (font_matching_entity): Likewise.
9552
9553 * ftfont.c (cs_iso8859_1): Delete.
9554 (ft_face_cache): New variable.
9555 (struct ftfont_info): New member fc_charset_idx.
9556 (ftfont_build_basic_charsets): Delete.
9557 (fc_charset_table): New variable.
9558 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9559 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9560 Callers changed.
9561 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9562 (ftfont_spec_pattern): New argument fc_charset_idx.
9563 Check registry more rigidly. Change callers.
9564 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9565 change of :font-entity property of the font.
9566
9567 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9568 property of the font.
9569
95702008-05-18 Juanma Barranquero <lekktu@gmail.com>
9571
9572 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9573 (Funencodable_char_position, Fcheck_coding_systems_region)
9574 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9575 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9576 (Ffind_operation_coding_system, Fset_coding_system_priority)
9577 (Fcoding_system_eol_type): Doc fixes.
9578
95792008-05-17 Glenn Morris <rgm@gnu.org>
9580
9581 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9582
95832008-05-16 Eli Zaretskii <eliz@gnu.org>
9584
9585 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9586 and st_gid.
9587
9588 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9589 HAVE_WINDOW_SYSTEM is not defined.
9590
9591 * xfaces.c (merge_face_ref, merge_face_vectors)
9592 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9593 HAVE_WINDOW_SYSTEM is defined.
9594 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9595
95962008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9597
9598 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9599
96002008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9601
9602 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9603
96042008-05-15 Kenichi Handa <handa@m17n.org>
9605
9606 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9607 preference.
9608
96092008-05-15 Glenn Morris <rgm@gnu.org>
9610
9611 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9612
96132008-05-15 Chong Yidong <cyd@stupidchicken.com>
9614
9615 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9616 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9617
9618 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9619
96202008-05-15 Kenichi Handa <handa@m17n.org>
9621
9622 * ftfont.c (ftfont_list): Downcase family name to check generic
9623 families.
9624
9625 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9626 font-spec for QCfont value.
9627
9628 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9629 buffer. Check the return value of it.
9630
96312008-05-14 Jason Rumney <jasonr@gnu.org>
9632
9633 * w32term.c (w32_get_glyph_overhangs): Remove.
9634 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9635
96362008-05-14 Kenichi Handa <handa@m17n.org>
9637
9638 * font.c (font_prop_validate): Make nil a valid value.
9639 (font_clear_cache): Check if the cached vector of entities is nil
9640 or not.
9641
96422008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9643
9644 * emacs.c (main_thread): Conditionalize on
9645 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9646 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9647
9648 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9649 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9650 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9651
96522008-05-14 Kenichi Handa <handa@m17n.org>
9653
9654 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9655 has no corresponding coding system.
9656
96572008-05-14 Jason Rumney <jasonr@gnu.org>
9658
9659 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9660
9661 * w32font.h (w32font_open_internal): Update declaration.
9662
9663 * w32font.c (w32font_open_internal): Change last argument from
9664 w32font_info struct to font object. Fill in font object from
9665 font_entity. Get Outline metrics if possible. Use them to
9666 calculate underline position and thickness. Use xlfd name as name
9667 property. Don't set codepage.
9668 (w32font_open): Pass font_object to w32font_open_internal. Don't
9669 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9670 (w32font_draw): Use s->font.
9671 (clear_cached_metrics): Don't clear non-existent blocks.
9672
9673 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9674 font was not found.
9675 (x_draw_glyph_string): Use underline position and thickness from font.
9676
9677 * w32uniscribe.c (uniscribe_open): Pass font_object to
9678 w32font_open_internal.
9679
96802008-05-14 Kenichi Handa <handa@m17n.org>
9681
9682 These changes are to delete all legacy font-handling codes, and
9683 make Emacs use only font-backends.
9684
9685 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9686 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9687
9688 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9689
9690 * charset.h (Vcharset_non_preferred_head)
9691 (Vcurrent_iso639_language): Extern them.
9692
9693 * charset.c (Vcharset_non_preferred_head): New variable.
9694 (Vcurrent_iso639_language): New variable.
9695 (syms_of_charset): Declare it as a Lisp variable.
9696 (char_charset): Don't check non preferred charsets. As a last
9697 resort, return charset_unicode.
9698 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9699
9700 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9701 conditionals. Don't check enable_font_backend. Delete all codes
9702 used only when USE_FONT_BACKEND is not defined.
9703
9704 * dispextern.h (struct glyph_string): Change type of `font' to
9705 `struct font *'.
9706 (struct glyph_string): New member underline_position and
9707 underline_thickness.
9708 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9709 (struct face): Change type of `font' to `struct font *'. Remove
9710 members `font_name', `font_info_id'.
9711 (per_char_metric, encode_char): Delete externs.
9712 (calc_pixel_width_or_height): Adjust the prototype.
9713
9714 * emacs.c (enable_font_backend): Delete extern.
9715 (main): Don't set enable_font_backend. Don't check the command
9716 line argument "-disable-font-backend".
9717
9718 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9719 (enum font_property_index): New members FONT_DPI_INDEX,
9720 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9721 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9722 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9723 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9724 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9725 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9726 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9727 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9728 (struct font_spec, struct font_entity): New structs.
9729 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9730 (struct font): Many members from old "struct font_info" moved to
9731 here. Members font and entity deleted.
9732 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9733 the new font-related objects.
9734 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9735 (CHECK_FONT_GET_OBJECT): Likewise.
9736 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9737 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9738 (struct font_driver): New members case_sensitive anc check. Type
9739 of the member list and open changed.
9740 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9741 (font_symbolic_width, font_find_object, font_get_spec)
9742 (font_set_lface_from_name): Delete extern.
9743 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9744
9745 * font.c: Include <strings.h>.
9746 (enable_font_backend): Delete it.
9747 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9748 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9749 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9750 (null_string): Delete it.
9751 (null_vector): Make it static.
9752 (font_family_alist): Delete it.
9753 (Qnormal): Extern it.
9754 (QCextra, QClanguage): Delete it.
9755 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9756 (font_make_spec, font_make_entity, font_make_object)
9757 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9758 the string. Callers changed.
9759 (font_pixel_size): Adjusted for the format change of font-related
9760 objects.
9761 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9762 (font_style_to_value, font_style_symbolic): New function.
9763 (build_font_family_alist): Delete it.
9764 (font_registry_charsets): Use Fassoc_string instead of
9765 assq_no_quit.
9766 (font_prop_validate_symbol): Don't return null_string.
9767 (font_prop_validate_style): Adjusted for the change of
9768 style-related values in a font vector.
9769 (font_property_table): Delete entries for QClanguage and
9770 QCantialias, add entries for QCavgwidth.
9771 (get_font_prop_index): Delete the 2nd argument FROM.
9772 (font_prop_validate): Arguments changed.
9773 (font_put_extra): Adjusted for the change of font-related objects.
9774 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9775 (font_parse_fcname, font_unparse_fcname)
9776 (font_prepare_composition): Likewise.
9777 (font_parse_family_registry): Renamed from font_merge_old_spec.
9778 (otf_open): Delete the 1st arg entity.
9779 (font_otf_capability): Adjusted for the above change.
9780 (font_score): New arg alternate_families. Adjusted for the change
9781 of font-related objects.
9782 (font_sort_entites): New arg best_only.
9783 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9784 Delete them.
9785 (font_match_p): Check alternate families.
9786 (font_find_object): Delete it.
9787 (font_check_object): New function.
9788 (font_clear_cache): Adjusted for the change of font-related objects.
9789 (font_delete_unmatched): New arg.
9790 (font_list_entities): Call font_driver->list with a spec that
9791 doesn't specify style-related properties.
9792 (font_matching_entity): Arguments changed. Caller changed.
9793 (font_open_entity): Adjusted for the change of font-related objects.
9794 (font_close_object, font_has_char, font_encode_char)
9795 (font_get_name, font_get_spec): Likewise.
9796 (font_spec_from_name, font_clear_prop, font_update_lface):
9797 New functions.
9798 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9799 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9800 (font_at): Adjusted for the change of font-related objects.
9801 (font_range): New function.
9802 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9803 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9804 (Fcopy_font_spec, Fmerge_font_spec): New function.
9805 (Ffont_family_list): Renamed from list-families.
9806 (Finternal_set_font_style_table): Arguments changed.
9807 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9808 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9809 change of font-related objects.
9810 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9811
9812 * fontset.h (struct font_info): Delete it. Most members go to
9813 struct font.
9814 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9815 (enum FONT_SPEC_INDEX): Delete it.
9816 (font_info, list_fonts_func, load_font_func, query_font_func)
9817 (set_frame_fontset_func, find_ccl_program_func)
9818 (get_font_repertory_func, new_fontset_from_font_name): Delete
9819 externs.
9820 (fontset_from_font_name): Extern it.
9821 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9822 (FONT_INFO_FROM_FACE): Deleted.
9823 (face_for_font): Adjust prototype.
9824
9825 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9826 conditionals. Don't check enable_font_backend. Delete all codes
9827 used only when USE_FONT_BACKEND is not defined.
9828 (get_font_info_func, list_font_func, load_font_func)
9829 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9830 (get_font_repertory_func): Delete them.
9831 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9832 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9833 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9834 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9835 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9836 (fontset_compare_rfontdef): New function.
9837 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9838 rfont-defs by qsort. Adjusted for the change of font-group vector.
9839 (load_font_get_repertory): Deleted.
9840 (fontset_find_font): Use new macros to ref/set elements of
9841 font-def and rfont-def.
9842 (fontset_font): Fix the timing of remembering that no font for C.
9843 (free_face_fontset): Do nothing if the face has no fontset.
9844 (face_suitable_for_char_p): Use new macros to ref/set elements of
9845 rfont-def.
9846 (face_for_char): Likewise. Call face_for_char with font_object.
9847 (fs_load_font): Delete. Delete #pragma surrounding it.
9848 (fs_query_fontset): Use strcasecmp instead of strcmp.
9849 (generate_ascii_font_name): Adjusted for the format change of
9850 font-spec.
9851 (Fset_fontset_font): Likewise. Use new macros to set elements of
9852 font-def.
9853 (Fnew_fontset): Use font_unparse_xlfd to generate
9854 FONTSET_ASCII (fontset).
9855 (new_fontset_from_font_name): Deleted.
9856 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9857 a fontset is already created for the font. FIx updating of
9858 Vfontset_alias_alist.
9859 (fontset_ascii_font): Deleted.
9860 (Ffont_info): Adjusted for the format change of font-spec.
9861 (Finternal_char_font): Likewise.
9862 (Ffontset_info): Likewise.
9863 (syms_of_fontset): Don't check load_font_func.
9864
9865 * fns.c (internal_equal): Handle PREV_FONT.
9866
9867 * frame.h: Delete USE_FONT_BACKEND conditional.
9868
9869 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9870 conditionals. Don't check enable_font_backend. Delete all codes
9871 used only when USE_FONT_BACKEND is not defined.
9872 (x_set_font): Call x_new_font, not x_new_fontset2.
9873 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9874 already set for the frame.
9875
9876 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9877 a font-entity by font_make_entity. Use font_intern_prop instead
9878 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9879 font property. If a font is scalable, set avgwidth property to 0.
9880 Set font-entity property by font_put_extra.
9881 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9882 (ffont_driver): Adjusted for the change of struct font_driver.
9883 (ftfont_spec_pattern): New function.
9884 (ftfont_list): Return a list, not vector.
9885 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9886 (ftfont_list_family): Don't downcase names.
9887 (ftfont_free_entity): Deleted.
9888 (ftfont_open): Return a font-object. Adjusted for the change of
9889 struct font. Get underline_thickness and underline_position from
9890 font property. Don't update dpyinfo->smallest_font_height and
9891 dpyinfo->smallest_char_width.
9892 (ftfont_close): Don't free `struct font'.
9893 (ftfont_has_char): Adjusted for the format change of font-entity.
9894 (ftfont_encode_char, ftfont_text_extents): Likewise.
9895
9896 * ftxfont.c (ftxfont_list): Return a list, not vector.
9897 (ftxfont_open): Return a font-object. Adjusted for the change of
9898 struct font. Get underline_thickness and underline_position from
9899 font property. Don't update dpyinfo->smallest_font_height and
9900 dpyinfo->smallest_char_width.
9901 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9902 (ftxfont_draw): Adjusted for the change of struct font.
9903
9904 * image.c (image_ascent): Don't include "charset.h". Include
9905 "character.h" and "font.h".
9906
9907 * lisp.h (enum pvec_type): New member PREV_FONT.
9908 (Fassoc_string): EXFUN it.
9909
9910 * print.c: Include font.h.
9911 (print_object): Handle font-related objects.
9912
9913 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9914 conditionals. Don't check enable_font_backend. Delete all codes
9915 used only when USE_FONT_BACKEND is not defined.
9916 (handle_auto_composed_prop): Do nothing if it->f is not on a
9917 window system. Check how many following characters can be
9918 displayed by the same font.
9919 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9920 'struct font *'.
9921 (get_char_face_and_encoding): Assign the whole encoding task to
9922 the `encode-char' method of a font driver.
9923 (fill_composite_glyph_string): Adjusted for the change of `struct
9924 face' and `struct glyph_string'.
9925 (fill_glyph_string): Likewise.
9926 (get_per_char_metric): Arguments changed.
9927 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9928 and `struct glyph_string'.
9929 (produce_stretch_glyph, calc_line_height_property)
9930 (x_produce_glyphs): Likewise.
9931
9932 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9933 conditionals. Don't check enable_font_backend. Delete all codes
9934 used only when USE_FONT_BACKEND is not defined. Use
9935 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9936 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9937 (Qp): Extern them.
9938 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9939 Deleted.
9940 (struct font_name): Deleted.
9941 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9942 (compare_fonts_by_sort_order): New function.
9943 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9944 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9945 Deleted.
9946 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9947 compare_fonts_by_sort_order.
9948 (Fx_font_family_list): Call Ffont_family_list.
9949 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9950 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9951 (face_symbolic_slant, face_symbolic_swidth)
9952 (split_font_name_into_vector, build_font_name_from_vector)
9953 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9954 (font_rescale_ratio, split_font_name, build_font_name)
9955 (free_font_names, sort_fonts, x_face_list_fonts)
9956 (face_font_available_p, sorted_font_list, cmp_font_names)
9957 (font_list_1, concat_font_list, font_list, remove_duplicates):
9958 Deleted.
9959 (Fx_list_fonts): Use Ffont_list.
9960 (LFACE_AVGWIDTH): Deleted.
9961 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9962 by FONTP.
9963 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9964 (set_lface_from_font_name): Delete it.
9965 (set_lface_from_font): Renamed from
9966 set_lface_from_font_and_fontset. Caller changed. Don't set
9967 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9968 for face.
9969 (merge_face_vectors): Copy font-spec if necessary.
9970 Clear properties of the font-spec if necessary.
9971 (merge_face_ref): Clear properties of the font-spec if necessary.
9972 (Finternal_set_lisp_face_attribute): Likewise.
9973 (set_font_frame_param): Use font_load_for_lface to load a
9974 font-object, and call Fmodify_frame_parameters with it.
9975 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9976 font name by Ffont_xlfd_name.
9977 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9978 QCslant, and QCwidth.
9979 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9980 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9981 Compare fonts by EQ.
9982 (lookup_non_ascii_face): Deleted.
9983 (face_for_font): The 2nd argument changed.
9984 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9985 Check atomic font properties by case insensitive.
9986 (realize_non_ascii_face): Set face->overstrike correctly.
9987 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9988 (dump_realized_face): Get font name from
9989 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9990
9991 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9992 conditionals. Don't check enable_font_backend. Delete all codes
9993 used only when USE_FONT_BACKEND is not defined.
9994 (xic_create_xfontset): Original code deleted and renamed from
9995 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9996 (x_make_gc): Don't set GCFont in GCs.
9997 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9998 opened by "fixed".
9999 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10000 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10001 get_font_repertory_func.
10002
10003 * xfont.c: Include <stdlib.h> and "ccl.h".
10004 (struct xfont_info): New structure.
10005 (xfont_query_font): Deleted.
10006 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10007 moved from xterm.c.
10008 (xfont_driver): Adjusted for the change of struct font_driver.
10009 (compare_font_names): New function.
10010 (xfont_list_pattern): Sort font names case insensitively. Make
10011 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10012 (xfont_list): Return a list, not vector.
10013 (xfont_match): If the font doesn't have QCname property, generate
10014 a name from the other font properties.
10015 (xfont_open): Return a font-object. Adjusted for the change of
10016 struct font. Get underline_thickness and underline_position from
10017 font property. Don't update dpyinfo->smallest_font_height and
10018 dpyinfo->smallest_char_width.
10019 (xfont_close): Don't free struct font.
10020 (xfont_prepare_face): Adjusted for the change of struct font.
10021 (xfont_done_face): Deleted.
10022 (xfont_has_char): Adjusted for the change of struct font.
10023 (xfont_encode_char, xfont_draw): Likewise.
10024 (xfont_check): New function.
10025
10026 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10027 callback function.
10028 (xftfont_match): Adjusted for the format change of font-entity.
10029 (xftfont_open): Adjusted for the format change of font-entity and
10030 font-object. Adjusted for the change of struct font. Return a
10031 font-object. Don't update dpyinfo->smallest_font_height and
10032 dpyinfo->smallest_char_width.
10033 (xftfont_close): Block input while calling XftFontClose.
10034 (xftfont_prepare_face): Don't block input while calling
10035 xftfont_get_colors. Adjusted for the change of struct font.
10036 (xftfont_shape): Return value of error case fixed.
10037
10038 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10039
10040 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10041 conditionals.
10042 (FONT_WIDTH): Return (f)->max_width.
10043 (struct x_display_info): Delete member `font'.
10044 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10045 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10046 (struct x_output): Change type of `font' to `struct font *'.
10047
10048 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10049 conditionals. Don't check enable_font_backend. Delete all codes
10050 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10051 (x_per_char_metric, x_encode_char): Deleted.
10052 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10053 (x_compute_glyph_string_overhangs): Adjusted for the change of
10054 `struct face'.
10055 (x_draw_glyph_string_foreground)
10056 (x_draw_composite_glyph_string_foreground): Likewise.
10057 (x_draw_glyph_string): Likewise. Use font->underline_position and
10058 font->underline_thickness.
10059 (x_new_font): Renamed from x_new_fontset2.
10060 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10061 (x_check_font): Call `check' method of a font driver.
10062 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10063 (x_query_font, x_get_font_repertory): Deleted.
10064 (x_find_ccl_program): Renamed and moved to xfont.c.
10065 (x_redisplay_interface): Adjusted for the change of `struct
10066 redisplay_interface'.
10067
10068 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10069 conditionals. Don't check enable_font_backend. Delete all codes
10070 used only when USE_FONT_BACKEND is not defined. Surround non-used
10071 code by "#ifdef OLD_FONT" and "endif".
10072 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10073
10074 * w32font.h (struct w32font_info): New member.
10075 (FONT_COMPAT): New macro.
10076 (w32font_open_internal): Prototype adjusted.
10077
10078 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10079 OLD_FONT" and "endif".
10080
10081 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10082 conditionals. Don't check enable_font_backend. Delete all codes
10083 used only when USE_FONT_BACKEND is not defined.
10084 (w32font_open): Return a font-object. Make a font-object by
10085 font_make_object. Adjusted for the change of struct w32font_info.
10086 (w32font_close): Don't free struct font. Adjusted for the change
10087 of struct w32font_info.
10088 (w32font_encode_char, w32font_text_extents, w32font_draw):
10089 Adjusted for the change of struct w32font_info.
10090 (w32font_draw): Likewise.
10091 (w32font_list_internal): Return a list, not vector.
10092 (w32font_open_internal): Change the 4th arg to font-object.
10093 Adjusted for the change of struct w32font_info and font-object format.
10094 (add_font_name_to_list): Don't downcase names.
10095 (w32_enumfont_pattern_entity): Make a font-entity by
10096 font_make_entity. Adjusted for the format change of font-entity.
10097 Use FONT_SET_STYLE to set a style-related font property. If a
10098 font is scalable, set avgwidth property to 0. Set font-entity
10099 property by font_put_extra.
10100 (font_matches_spec): Adjusted for the format change of font-entity.
10101 (w32_weight_table, w32_decode_weight): New variables.
10102 (w32_encode_weight): New function.
10103 (fill_in_logfont): Adjusted for the format change of font-spec.
10104 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10105 weight value.
10106 (w32font_driver): Adjusted for the change of struct font_driver.
10107
10108 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10109 conditionals. Don't check enable_font_backend. Surround non-used
10110 code by "#ifdef OLD_FONT" and "endif".
10111 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10112 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10113
10114 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10115 conditionals. Don't check enable_font_backend. Delete all codes
10116 used only when USE_FONT_BACKEND is not defined. Surround non-used
10117 code by "#ifdef OLD_FONT" and "endif".
10118
10119 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10120 (uniscribe_open): Return value changed to font-object.
10121 Adjusted for the format change of font-object.
10122 (uniscribe_otf_capability): Adjusted for the change of struct font.
10123 (add_opentype_font_name_to_list): Don't downcase names.
10124 (uniscribe_font_driver): Adjusted for the change of struct
10125 font_driver.
10126
101272008-05-13 Chong Yidong <cyd@stupidchicken.com>
10128
10129 * dispnew.c (update_frame_1): Check if tty output is still valid
10130 before flushing it.
10131
101322008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10133
10134 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10135 to Gtk+ menus.
10136
101372008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10138
10139 * dired.c (file_name_completion): Tweak the code so as to always do it
10140 in a single pass. Tighten the scope of some variables.
10141
10142 * dired.c (Qdefault_directory): New var.
10143 (file_name_completion): Use it instead of Fexpand_file_name.
10144 (syms_of_dired): Initialize it.
10145
101462008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10147
10148 * fileio.c (double_dollars): Remove dead code.
10149
101502008-05-10 Eli Zaretskii <eliz@gnu.org>
10151
10152 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10153 Mention w32-get-true-file-attributes in doc string.
10154
10155 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10156
101572008-05-09 Glenn Morris <rgm@gnu.org>
10158
10159 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10160 2008-04-23.
10161
101622008-05-09 Eli Zaretskii <eliz@gnu.org>
10163
10164 Support for reporting owner and group of each file on MS-Windows:
10165 * dired.c (stat_uname, stat_gname): New functions, with special
10166 implementation for w32.
10167 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10168
10169 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10170 (dflt_group_name): New static variable.
10171 (dflt_group): Rename from the_group.
10172 (init_user_info): Init dflt_group fields. Get user's group name
10173 from LookupAccountSid.
10174 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10175 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10176 New initialization states.
10177 (globals_of_w32): Initialize them to zero. Initialize the default
10178 group name to "None".
10179 (GetFileSecurity_Name): New global var, the name of the function
10180 to call for GetFileSecurity.
10181 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10182 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10183 (get_file_security, get_security_descriptor_owner)
10184 (get_security_descriptor_group, is_valid_sid)
10185 (get_file_security_desc, get_rid, get_name_and_id)
10186 (get_file_owner_and_group): New functions.
10187 (stat): Use get_file_security_desc and get_file_owner_and_group to
10188 report the owner and primary group of each file. Don't ignore the
10189 high 32 bits of file's size, now that st_size is 64-bit wide.
10190 Fix test when to get true file attributes.
10191 (init_user_info): Use get_rid instead of equivalent inline code.
10192 (fstat): Don't ignore the high 32 bits of file's size.
10193
101942008-05-09 Chong Yidong <cyd@stupidchicken.com>
10195
10196 * image.c (png_load): Use correct bit-depth for setting background
10197 color.
10198
101992008-05-08 Eli Zaretskii <eliz@gnu.org>
10200
10201 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10202 epa-hook.elc.
10203
102042008-05-08 Juanma Barranquero <lekktu@gmail.com>
10205
10206 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10207
102082008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10209
10210 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10211 because the original parameters are in pure storage now.
10212 (mac_window): Remove unused params. Update callers.
10213
102142008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10215
10216 * lread.c (substitute_object_recurse): Use lower-level primitives.
10217 Don't signal errors when traversing sub-char-tables.
10218 Don't loop over all the possible characters when traversing char-tables.
10219
10220 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10221 just like we do in print.c.
10222
102232008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10224
10225 * minibuf.c (Ftry_completion): Remove code left over from when we used
10226 scmp instead of Fcompare_strings.
10227
102282008-05-04 Juanma Barranquero <lekktu@gmail.com>
10229
10230 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10231
102322008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10233
10234 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10235 Create bitmap context in native byte order.
10236
10237 * macterm.c (XDrawLine)
10238 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10239 context in native byte order.
10240
102412008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10242
10243 * config.in: Regenerate.
10244
10245 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10246 New definitions for Image I/O support.
10247 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10248 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10249 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10250 (mac_data_provider_release_data, image_load_image_io)
10251 [USE_MAC_IMAGE_IO]: New functions.
10252 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10253 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10254 (init_image_func_pointer) [MAC_OSX]: Remove function.
10255 (image_load_quartz2d) [MAC_OSX]: Check availability of
10256 CGImageCreateWithPNGDataProvider at compile time.
10257 Use lowercase `false' for boolean constant.
10258 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10259 Use image_load_image_io.
10260 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10261 Don't check MyCGImageCreateWithPNGDataProvider.
10262 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10263 Don't call init_image_func_pointer.
10264
10265 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10266
10267 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10268 Make variable non-static.
10269 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10270 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10271
10272 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10273 (RED_FROM_ULONG): Mask off higher bits.
10274 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10275
10276 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10277 Include AvailabilityMacros.h.
10278 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10279 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10280
102812008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10282
10283 * chartab.c (Fset_char_table_range): If range is t, really set all
10284 chars to that value.
10285
102862008-05-03 Eli Zaretskii <eliz@gnu.org>
10287
10288 * dired.c (Ffile_attributes): Don't allow the device number become
10289 negative.
10290
102912008-05-02 Daiki Ueno <ueno@unixuser.org>
10292
10293 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10294
102952008-05-02 Juri Linkov <juri@jurta.org>
10296
10297 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10298 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10299 DEFAULT argument as a list of default values in docstrings.
10300
103012008-05-01 Chong Yidong <cyd@stupidchicken.com>
10302
10303 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10304
103052008-05-01 Martin Rudalics <rudalics@gmx.at>
10306
10307 * dispnew.c (change_frame_size_1): Preserve small windows when
10308 shrinking frames by calling set_window_height|width with third
10309 arg 2.
10310
10311 * window.h (struct window): Replace field too_small_ok by field
10312 resize_proportionally.
10313
10314 * window.c (make_window): Initialize resize_proportionally.
10315 (enlarge_window): Temporarily set resize_proportionally to make
10316 sure that shrink_windows does scale the window proportionally.
10317 (shrink_windows): When window has resize_proportionally set try
10318 to shrink it proportionally by stealing from other windows.
10319 (struct saved_window, Fset_window_configuration)
10320 (compare_window_configurations): Handle resize_proportionally.
10321 (WINDOW_TOTAL_SIZE): New macro.
10322 (window_min_size, shrink_windows, size_window): Use it.
10323 (check_min_window_sizes): Remove. Invalid values of
10324 window-min-height|width are handled by window_min_size_2 now.
10325 (size_window, Fsplit_window, enlarge_window)
10326 (adjust_window_trailing_edge, grow_mini_window): Don't call
10327 check_min_window_sizes.
10328 (window_min_size_2, window_min_size_1, window_min_size):
10329 New argument safe_p for retrieving "safe" minimum sizes.
10330 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10331 (adjust_window_trailing_edge, grow_mini_window):
10332 Adjust arguments of window_min_size... functions.
10333 (shrink_windows): Argument min_size removed. New argument
10334 safe_p allows shrinking windows to their safe minimum sizes.
10335 Calculate minimum size and decide whether a window shall be
10336 deleted for each window individually.
10337 (size_window): When nodelete_p equals 2, tell shrink_windows to
10338 delete windows only if their new minimum size is no more safe.
10339 (shrink_window_lowest_first): Call window_min_size_1 to make
10340 sure to preserve modeline of bottom-most window when resizing
10341 the minibuffer.
10342 (Fset_window_configuration, Fcurrent_window_configuration)
10343 (compare_window_configurations): Do not handle
10344 window-min-height|width any more.
10345 (syms_of_window): Clarify window-min-height|width doc-strings.
10346
103472008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10348
10349 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10350 some more. Copy some of the code from Ftry_completions.
10351 Remove special case code that dates back to initial revision when the
10352 slash was only added when necessary and that can't trigger nowadays.
10353
103542008-04-27 Kenichi Handa <handa@m17n.org>
10355
10356 * font.c (font_prop_validate): Signal `error' instead of `font'.
10357
103582008-04-29 Jason Rumney <jasonr@gnu.org>
10359
10360 * w32fns.c (Fw32_battery_status): New defun.
10361 (syms_of_w32fns): Defsubr it.
10362
103632008-04-28 Andreas Schwab <schwab@suse.de>
10364
10365 * dired.c (file_name_completion): Fix another mixing of encoded
10366 and decoded names.
10367
103682008-04-28 Juanma Barranquero <lekktu@gmail.com>
10369
10370 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10371
103722008-04-27 Juanma Barranquero <lekktu@gmail.com>
10373
10374 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10375
103762008-04-27 Andreas Schwab <schwab@suse.de>
10377
10378 * dired.c (file_name_completion): Fix inappropriate mixing of
10379 encoded and decoded names.
10380
10381 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10382
10383 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10384
103852008-04-26 Eli Zaretskii <eliz@gnu.org>
10386
10387 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10388 2008-03-31, it's not needed anymore with `struct stat' definition
10389 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10390 for the same reasons.
10391
103922008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10393
10394 * m/sparc.h: Additional redefinitions for GNU/Linux.
10395
103962008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10397
10398 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10399 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10400 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10401 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10402 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10403 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10404 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10405 Likewise.
10406
10407 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10408 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10409 (mac_ax_number_of_characters): Add externs.
10410 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10411 [USE_MAC_TSM]: Likewise.
10412 (mac_handle_text_input_event) [MAC_OSX]:
10413 Handle kEventTextInputOffsetToPos for no active input area case.
10414 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10415 (mac_handle_document_access_event)
10416 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10417 (install_application_handler) [MAC_OSX]: Register handlers for
10418 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10419 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10420 Register mac_handle_document_access_event.
10421
10422 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10423 Make functions non-static.
10424
104252008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10426
10427 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10428 (read_file_name_completion_ignore_case, insert_default_directory)
10429 (Qdefault_directory): Move to minibuffer.el.
10430 (Fread_file_name): Call the new `read-file-name' instead.
10431
104322008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10433
10434 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10435 Make function non-static.
10436 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10437 Remove function.
10438 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10439 Move to mactoolbox.c.
10440 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10441
10442 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10443 (mac_rect_make): New macro.
10444
10445 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10446 instead of float.
10447 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10448 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10449 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10450 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10451 CGRectMake.
10452 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10453 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10454 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10455 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10456 instead of WindowRef in argument type.
10457 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10458 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10459 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10460 instead of DISPLAY. All uses changed.
10461 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10462 (x_calc_absolute_position): Simplify so as not to use
10463 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10464
10465 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10466 instead of WindowRef in argument type.
10467 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10468 [TARGET_API_MAC_CARBON]: Remove externs.
10469 (create_apple_event, mac_event_parameters_to_lisp)
10470 [TARGET_API_MAC_CARBON]: Add externs.
10471
10472 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10473 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10474 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10475 is clicked.
10476 (x_activate_menubar): Remove extern for saved_menu_event_location.
10477 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10478 Move from mac.c.
10479
104802008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10481
10482 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10483 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10484
104852008-04-23 Jason Rumney <jasonr@gnu.org>
10486
10487 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10488 attributes only for local files.
10489
10490 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10491 default to Qlocal.
10492
104932008-04-22 Juri Linkov <juri@jurta.org>
10494
10495 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10496 read-buffer-to-switch instead of using the letter "B".
10497
104982008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10499
10500 * fileio.c (Qdefault_directory): New variable.
10501 (Fread_file_name): Use it to pass `dir' to the completion functions.
10502
105032008-04-20 Chong Yidong <cyd@stupidchicken.com>
10504
10505 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10506
105072008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10508
10509 * keyboard.c (Vpre_help_message): Remove.
10510 (show_help_echo): Remove default C code.
10511
10512 * dired.c (directory_files_internal, file_name_completion):
10513 Only call ENCODE_FILE if the string is indeed decoded.
10514
105152008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10516
10517 * Makefile.in (TOOLKIT_DEFINES): Remove.
10518 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10519
105202008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10521
10522 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10523 (mactoolbox.o): New target.
10524
10525 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10526 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10527
10528 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10529 Use mac_set_frame_window_background instead of XSetWindowBackground.
10530 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10531 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10532 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10533 instead of SetWindowTitleWithCFString.
10534 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10535 Move function to mactoolbox.c.
10536 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10537 Use mac_set_window_modified instead of SetWindowModified.
10538 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10539 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10540 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10541 FrontNonFloatingWindow. Use mac_activate_window instead of
10542 ActivateWindow. Use mac_active_non_floating_window instead of
10543 ActiveNonFloatingWindow.
10544 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10545 Use mac_show_hourglass and mac_hide_hourglass.
10546 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10547 instead of GetGlobalMouse.
10548 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10549 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10550 Use mac_bring_window_to_front instead of BringToFront.
10551 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10552 mactoolbox.c.
10553 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10554 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10555 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10556 mactoolbox.c.
10557
10558 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10559 (XtPointer): Move typedef from macmenu.c.
10560 (enum button_type): Move enum from macmenu.c.
10561 (widget_value): Move typedef from macmenu.c.
10562 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10563 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10564 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10565 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10566 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10567 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10568 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10569 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10570 (Selection): Move typedef from macselect.c.
10571 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10572 macterm.c.
10573 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10574 (mac_is_window_collapsed, mac_bring_window_to_front)
10575 (mac_send_window_behind, mac_hide_window, mac_show_window)
10576 (mac_collapse_window, mac_front_non_floating_window)
10577 (mac_active_non_floating_window, mac_activate_window)
10578 (mac_move_window_structure, mac_move_window, mac_size_window)
10579 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10580
10581 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10582 (enum mac_menu_kind): Move enum to mactoolbox.c.
10583 (min_menu_id): Move variable to mactoolbox.c.
10584 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10585 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10586 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10587 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10588 [TARGET_API_MAC_CARBON]: Likewise.
10589 (XtPointer): Move typedef to macgui.h.
10590 (enum button_type): Move enum to macgui.h.
10591 (widget_value): Move typedef to macgui.h.
10592 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10593 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10594 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10595 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10596 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10597 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10598 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10599 (popup_activated_flag): Make variable non-static.
10600 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10601 (add_menu_item, fill_menu, dispose_menus):
10602 Move functions to mactoolbox.c.
10603 (restore_show_help_function, menu_target_item_handler)
10604 (install_menu_target_item_handler, mac_handle_dialog_event)
10605 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10606 [TARGET_API_MAC_CARBON]: Likewise.
10607 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10608 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10609 (find_and_call_menu_selection, name_is_separator): Make function
10610 non-static.
10611 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10612 to mactoolbox.c.
10613 (set_frame_menubar): Don't call install_menu_quit_handler.
10614 (menu_item_selection): New variable.
10615 (mac_menu_show): Use create_and_show_popup_menu.
10616 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10617 selection but set variable menu_item_selection. All uses changed.
10618 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10619 Call install_menu_quit_handler. Move to mactoolbox.c.
10620
10621 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10622 (Selection): Move typedef to macgui.h.
10623 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10624 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10625 Make variables non-static.
10626 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10627 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10628 Make functions non-static.
10629 (Vmac_service_selection) [MAC_OSX]: Likewise.
10630 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10631 (mac_valid_selection_target_p, mac_clear_selection)
10632 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10633 (mac_put_selection_value, mac_selection_has_target_p)
10634 (mac_get_selection_value, mac_get_selection_target_list)
10635 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10636 Move functions to mactoolbox.c.
10637 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10638 Likewise.
10639 (copy_scrap_flavor_data, mac_handle_service_event)
10640 (install_service_handler) [MAC_OSX]: Likewise.
10641 (syms_of_macselect) <Vmac_dnd_known_types>:
10642 Use mac_dnd_default_known_types.
10643
10644 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10645 Move to mactoolbox.c.
10646 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10647 (Fx_selection_owner_p): Add EXFUN.
10648 (install_window_handler, remove_window_handler, XSetWindowBackground):
10649 Remove externs.
10650 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10651 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10652 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10653 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10654 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10655 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10656 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10657 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10658 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10659 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10660 (mac_valid_selection_target_p, mac_clear_selection)
10661 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10662 (mac_put_selection_value, mac_selection_has_target_p)
10663 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10664 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10665 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10666 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10667 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10668 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10669 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10670 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10671 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10672
10673 * mactoolbox.c: New file.
10674
106752008-04-18 Jason Rumney <jasonr@gnu.org>
10676
10677 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10678
106792008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10680
10681 * character.c (Fmultibyte_char_to_unibyte):
10682 Return latin1 chars unchanged.
10683
10684 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10685 relocated if it points to `name'.
10686
106872008-04-17 Kenichi Handa <handa@m17n.org>
10688
10689 * data.c (Faset): Allow setting a multibyte character in an
10690 ASCII-only unibyte string.
10691
10692 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10693
106942008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10695
10696 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10697 done in config.h.
10698
106992008-04-16 Juanma Barranquero <lekktu@gmail.com>
10700
10701 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10702 (Fchar_direction): Add usage in the docstring.
10703
107042008-04-15 Chong Yidong <cyd@stupidchicken.com>
10705
10706 * keyboard.c (read_key_sequence): Remove always-true checks.
10707
107082008-04-14 Jason Rumney <jasonr@gnu.org>
10709
10710 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10711 compatibility struct, for better underline positioning.
10712
107132008-04-13 David Hansen <david.hansen@gmx.net>
10714
10715 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10716 string.
10717
107182008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10719
10720 * m/hp800.h (XUINT, XSET): Remove.
10721
107222008-04-12 Juanma Barranquero <lekktu@gmail.com>
10723
10724 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10725 previous change.
10726
107272008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10728
10729 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10730 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10731
107322008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10733
10734 * keymap.h (map_keymap_canonical): Declare.
10735 * xmenu.c (single_keymap_panes): Use it.
10736
107372008-04-11 Glenn Morris <rgm@gnu.org>
10738
10739 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10740 set the target's value to that of the alias.
10741
107422008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10743
10744 * term.c (set_tty_color_mode): Left over typo.
10745
107462008-04-10 Michael Albinus <michael.albinus@gmx.de>
10747
10748 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10749 only after check for file name handler functions. Signal, when
10750 native functionality is not supported.
10751 (syms_of_fileio): Declare it unconditionally.
10752
107532008-04-10 Jason Rumney <jasonr@gnu.org>
10754
10755 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10756 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10757
10758 * w32.c (logon_network_drive): Also logon to remote drives that
10759 are mapped to drive letters.
10760
107612008-04-10 Glenn Morris <rgm@gnu.org>
10762
10763 * xdisp.c (truncate-partial-width-windows): Doc fix.
10764
107652008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10766
10767 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10768 Move functions to minibuffer.el.
10769 (syms_of_fileio): Don't declare them.
10770
107712008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10772
10773 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10774 (syms_of_minibuf): Remove its initialization.
10775
10776 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10777
107782008-04-09 Juanma Barranquero <lekktu@gmail.com>
10779
10780 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10781
107822008-04-09 Jason Rumney <jasonr@gnu.org>
10783
10784 * makefile.w32-in (distclean): Delete makefile too.
10785 (maintainer-clean): New target.
10786
10787 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10788
10789 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10790 for new font backend and composite cases.
10791
107922008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10793
10794 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10795 Most of the code moved to run_timers.
10796 (do_pending_atimers): Call run_timers.
10797 (run_timers): New function.
10798
10799 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10800 run atimers.
10801
10802 * process.c (wait_reading_process_output): The same as above.
10803
108042008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10805
10806 * minibuf.c (last_exact_completion): Remove variable.
10807 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10808 (complete_and_exit_1, complete_and_exit_2)
10809 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10810 (Fdisplay_completion_list, display_completion_list_1)
10811 (Fminibuffer_completion_help, Fself_insert_and_exit)
10812 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10813 minibuffer.el.
10814 (syms_of_minibuf): Remove corresponding initializations.
10815
10816 * keyboard.c (Qdeactivate_mark): New var.
10817 (command_loop_1): Use it to call `deactivate-mark'.
10818 (syms_of_keyboard): Initialize it.
10819
10820 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10821 to another frame.
10822 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10823 Don't call set_tty_color_mode.
10824 (store_frame_param): Reset previous_frame rather than call
10825 set_tty_color_mode.
10826 * term.c (set_tty_color_mode): Rewrite.
10827 * dispextern.h (set_tty_color_mode): New type.
10828 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10829
108302008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10831
10832 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10833 for generic chars, which do not exist any more in emacs-unicode.
10834
108352008-04-08 Michael Albinus <michael.albinus@gmx.de>
10836
10837 * coding.c (detect_coding_emacs_mule)
10838 (Ffind_operation_coding_system): Fix typo.
10839
108402008-04-08 Jason Rumney <jasonr@gnu.org>
10841
10842 * w32uniscribe.c (SNAME): Extract only symbol name.
10843
10844 * w32font.h (struct w32_metric_cache): New struct.
10845 (w32font_info): Use it.
10846 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10847 (CACHE_BLOCKSIZE): New constants.
10848
10849 * w32font.c (Qja, Qko, Qzh): New symbols.
10850 (syms_of_w32font): Initialise them.
10851 (font_matches_spec): Use them to filter by language.
10852 (recompute_cached_metrics): Remove function.
10853 (compute_metrics, clear_cached_metrics): New functions.
10854 (w32font_encode_char): Use them to manage metric cache.
10855 (w32font_text_extents): Cache metrics for all glyphs on demand.
10856 Delay converting glyph indices to WORD until needed.
10857 (w32font_open_internal): Initialize metric cache to empty.
10858 (registry_to_w32_charset): Charset should always be a symbol.
10859 (fill_in_logfont, list_all_matching_fonts): Family should
10860 always be a symbol.
10861
108622008-04-06 Jason Rumney <jasonr@gnu.org>
10863
10864 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10865 Give up if glyph indices not supported. Use uniscribe obtained
10866 ABC widths for individual metrics. Map glyph clusters back to
10867 characters using fClusterStart flag. Return number of glyphs
10868 produced, not chars processed.
10869 (uniscribe_shape): Map char at FROM to current glyph.
10870
108712008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10872
10873 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10874 Use SetMenuItemHierarchicalMenu.
10875
108762008-04-05 Jason Rumney <jasonr@gnu.org>
10877
10878 * image.c (pbm_load): Allow color values up to 65535.
10879 Throw an error if max_color_idx is outside the supported range.
10880 Report an error when image size is invalid.
10881 Read two bytes at a time when raw images have max_color_idx above 255.
10882
108832008-04-05 Eli Zaretskii <eliz@gnu.org>
10884
10885 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10886 cFileName a file name that includes `?' characters, use the 8+3
10887 alias in cAlternateFileName instead.
10888
108892008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10890
10891 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10892 append "CCL: Quitted" when the CCL program is quitted.
10893 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10894
10895 * ccl.h (struct ccl_program): New member quit_silently.
10896
108972008-04-05 Chong Yidong <cyd@stupidchicken.com>
10898
10899 * search.c (compile_pattern_1): Treat non-nil and non-string of
10900 search-spaces-regexp as nil.
10901
10902 * minibuf.c (Fassoc_string): Tweak docstring.
10903
109042008-04-05 Eli Zaretskii <eliz@gnu.org>
10905
10906 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10907 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10908 2008-03-14 to force inode be positive.
10909
10910 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10911 _S_* ones, since we now use our own sys/stat.h.
10912 (stat, fstat): Don't mangle the inode number.
10913 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10914
109152008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10916
10917 * frame.h (struct frame): Give one more bit to `visible' since we use
10918 values larger than 1 to indicate obscured frames on ttys.
10919
10920 * keymap.c (Qkeymap_canonicalize): New var.
10921 (Fmap_keymap_internal): New fun.
10922 (describe_map): Use keymap-canonicalize.
10923
10924 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10925 (Fundo_boundary): Set them.
10926 (syms_of_undo): Initialize them.
10927 (record_point): Use them instead of last_point_position*.
10928 (last_undo_buffer): Change type.
10929
109302008-04-04 Jason Rumney <jasonr@gnu.org>
10931
10932 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10933 (recompute_cached_metrics): Don't set ascent and descent per char.
10934
10935 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10936 (uniscribe_check_otf): Add GC protection before consing.
10937 Rearrange loop for counting features.
10938
109392008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10940
10941 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10942 buffer with byte-size of source buffer.
10943
109442008-04-03 Chong Yidong <cyd@stupidchicken.com>
10945
10946 * callint.c (Fcall_interactively): Handle temporary region even
10947 when shift-select-mode is off.
10948
109492008-04-03 Jason Rumney <jasonr@gnu.org>
10950
10951 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10952
109532008-04-03 Kenichi Handa <handa@m17n.org>
10954
10955 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10956 (CATEGORY_MASK_UTF_16): Likewise.
10957 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10958 binary file.
10959 (detect_coding): Add null-byte detection for a binary file.
10960 (detect_coding_system): Likewise.
10961
109622008-04-03 Jason Rumney <jasonr@gnu.org>
10963
10964 * w32uniscribe.c: New file.
10965
10966 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10967
10968 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10969
10970 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10971 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10972 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10973 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10974 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10975 (Qphonetic): New symbols.
10976 (syms_of_w32font): Initialize them.
10977 (font_supported_scripts): Use them.
10978 (w32font_list_family): List all charsets.
10979 (w32font_text_extents, recompute_cached_metrics): Fix metric
10980 calculations.
10981 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10982 Give opentype fonts their own format.
10983 (font_matches_spec): New arguments backend and logfont.
10984 Handle :otf spec for uniscribe backend.
10985 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10986 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10987
10988 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10989 font backend.
10990 (globals_of_w32fns): Initialize uniscribe font backend.
10991
10992 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10993 dependencies.
10994 (w32uniscribe.$(O)): New file to build.
10995 (FONT_OBJ): Include w32uniscribe.$(O).
10996 (LIBS): Add uniscribe libraries.
10997
10998 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10999
110002008-04-02 Chong Yidong <cyd@stupidchicken.com>
11001
11002 * callint.c (Vshift_select_mode): New var.
11003 (Finteractive): Document new ^ spec.
11004 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11005 is present.
11006
11007 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11008 (command_loop_1): Avoid running the direct display versions of
11009 forward-char and backward-char if shift-selection may occur.
11010 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11011 shift-translation takes place.
11012
11013 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11014 avoid clobbering by define-minor-mode.
11015
11016 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11017 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11018
11019 * syntax.c (Fforward_word): Add ^ interactive spec.
11020
11021 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11022 (Fscroll_right): Add ^ interactive spec.
11023
110242008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11025
11026 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11027
11028 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11029
11030 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11031
110322008-03-31 Juri Linkov <juri@jurta.org>
11033
11034 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11035
110362008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11037
11038 * gtkutil.c (xg_set_geometry): Fix indentation.
11039 (xg_resize_outer_widget): Remove.
11040 (x_wm_size_hint_off): Fix indentation.
11041 (xg_frame_set_char_size): Call flush_and_sync after
11042 gtk_window_resize.
11043 (x_wm_set_size_hint): Pass NULL as geometry window to
11044 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11045 Add menu bar and tool bar height to base height.
11046 (xg_update_frame_menubar, free_frame_menubar)
11047 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11048 (update_frame_tool_bar, free_frame_tool_bar):
11049 Change xg_resize_outer_widget to xg_frame_set_char_size.
11050
110512008-03-30 Michael Albinus <michael.albinus@gmx.de>
11052
11053 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11054 (Fdbus_call_method): New parameter TIMEOUT.
11055 (dbus-send-signal): Optimize UNGCPRO call.
11056
110572008-03-29 Juri Linkov <juri@jurta.org>
11058
11059 * window.c (Fdisplay_buffer): Move call to
11060 Vsplit_window_preferred_function out of conditions that check
11061 if window is eligible for vertical splitting.
11062 When Vsplit_window_preferred_function is non-nil, call it and use
11063 its non-nil return value as window. Otherwise, continue doing
11064 vertical splitting using Fsplit_window with arg horflag=nil.
11065 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11066 default value from `split-window' to nil.
11067
110682008-03-29 Juri Linkov <juri@jurta.org>
11069
11070 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11071 for interactive code letters 'b' and 'B'.
11072
110732008-03-29 Eli Zaretskii <eliz@gnu.org>
11074
11075 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11076 multibyte string.
11077
110782008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11079
11080 * keyboard.c (pending_funcalls): New var.
11081 (timer_check): Run it.
11082 (syms_of_keyboard): Initialize it.
11083 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11084 (Vdelete_terminal_functions): New vars.
11085 (syms_of_terminal): Initialize them.
11086 (Fdelete_terminal): Run delete-terminal-functions.
11087 * xdisp.c (safe_eval): Rewrite.
11088 (safe_call2): New fun.
11089 * frame.c (Qdelete_frame_functions): New var.
11090 (syms_of_frame): Initialize it.
11091 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11092 * lisp.h (safe_call2, pending_funcalls): Declare.
11093
110942008-03-28 Andreas Schwab <schwab@suse.de>
11095
11096 * indent.c (Fmove_to_column): Move declaration before statements.
11097
110982008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11099
11100 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11101 (struct frame): Use bit fields for boolean vars.
11102
11103 * process.c (server_accept_connection): Simplify naming.
11104 (emacs_get_tty_pgrp): Use SDATA.
11105
11106 * coding.c (decode_coding_object): Fix last change.
11107
111082008-03-27 Jason Rumney <jasonr@gnu.org>
11109
11110 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11111
111122008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11113
11114 * charset.c (Fdefine_charset_internal): Change the way of
11115 registering charsets in Vcharset_order_list.
11116 (syms_of_charset): Make the charset `eight-bit' supplementary.
11117
111182008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11119
11120 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11121 operations, to avoid having the difference between pointers
11122 overflow.
11123
111242008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11125
11126 * indent.c (check_display_width): New fun.
11127 (scan_for_column): Use it.
11128
11129 * data.c (syms_of_data): Mark most-positive-fixnum and
11130 most-negative-fixnum as constants.
11131
11132 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11133
11134 * indent.c (scan_for_column): Extract from current_column_1.
11135 Merge with the same code from Fmove_to_column.
11136 (current_column_1, Fmove_to_column): Use it.
11137
111382008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11139
11140 * keymap.c (map_keymap_internal): New fun.
11141 (map_keymap): Use it.
11142 (Fmap_keymap_internal): New fun.
11143 (Fmap_keymap): Remove left-out test from before make_save_value.
11144
11145 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11146
11147 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11148 Use XCAR/XCDR.
11149
11150 * process.h (struct Lisp_Process): Remove filter_multibyte.
11151 * process.c (QCfilter_multibyte): Remove.
11152 (setup_process_coding_systems): Don't use filter_multibyte.
11153 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11154 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11155 (Fset_process_filter_multibyte): Change the coding-system to
11156 approximate the previous behavior.
11157 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11158 coding-system.
11159
11160 * coding.c (decode_coding_object): When not decoding into a buffer,
11161 obey the coding system's preference of (uni|multi)byte.
11162
111632008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11164
11165 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11166 every char is changed and has a different byte-length.
11167 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11168 Fix int -> EMACS_INT.
11169
111702008-03-23 David Hansen <david.hansen@gmx.net>
11171
11172 * dbusbind.c (xd_read_message): Remove extra copying of message
11173 strings. Check for NULL `interface' or `member'.
11174
111752008-03-22 Eli Zaretskii <eliz@gnu.org>
11176
11177 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11178 cFileName a file name that includes `?' characters, use the 8+3
11179 alias in cAlternateFileName instead.
11180
111812008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11182
11183 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11184
111852008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11186
11187 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11188 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11189 work on current_buffer only instead (that was already the case
11190 for some of the code anyway).
11191 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11192 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11193 (SET_PT, SET_PT_BOTH): Adjust.
11194 * intervals.h (set_point, temp_set_point, set_point_both)
11195 (temp_set_point_both): Remove redundant declarations.
11196
111972008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11198
11199 * fileio.c (Finsert_file_contents):
11200 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11201 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11202 when buffer != current_buffer anyway.
11203
112042008-03-20 Andreas Schwab <schwab@suse.de>
11205
11206 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11207 as default.
11208
112092008-03-19 Jason Rumney <jasonr@gnu.org>
11210
11211 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11212 (syms_of_w32fns): Initialize them.
11213 (HOURGLASS_ID): New constant.
11214 (x_window_to_frame): Don't check hourglass_window.
11215 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11216 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11217 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11218 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11219 Only change the cursor if hourglass is not active.
11220 (Fx_create_frame): Initialize frame's current_cursor.
11221 (hourglass_atimer): Remove.
11222 (hourglass_started): New function.
11223 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11224 (show_hourglass): Adapt to w32, changing argument to frame.
11225
11226 * w32term.h (struct w32_output): Remove hourglass_window.
11227 Add current_cursor.
11228
11229 * eval.c (call_debugger, Fsignal):
11230 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11231 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11232 (Fexecute_extended_command, cancel_hourglass_unwind):
11233 * minibuf.c (read_minibuf):
11234 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11235
112362008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11237
11238 * window.c (run_funs): New fun.
11239 (run_window_configuration_change_hook): Use it to run the buffer-local
11240 and the global part of the hook.
11241
11242 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11243 (unwind_format_mode_line): Restore selected window.
11244 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11245
112462008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11247
11248 * editfns.c (Fchar_equal): Check they are valid characters.
11249
11250 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11251
112522008-03-17 Andreas Schwab <schwab@suse.de>
11253
11254 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11255 against a charset.
11256
11257 * lisp.h (Fbuffer_list): Declare.
11258
112592008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11260
aac0c6e3
MR
11261 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11262 handlebox_widget is != 0.
11263
112642008-03-16 Juri Linkov <juri@jurta.org>
11265
11266 * callint.c (Fcall_interactively): For interactive code letters
11267 'b' and 'B' put the buffer list into the list of default "future"
11268 values of the minibuffer.
11269
112702008-03-16 Andreas Schwab <schwab@suse.de>
11271
11272 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11273 modifiers.
11274
11275 * regex.c (re_match_2_internal): Correct matching of a charset
11276 against latin-1 characters.
11277
112782008-03-16 Kenichi Handa <handa@m17n.org>
11279
11280 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11281 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11282 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11283 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11284 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11285 CHAR_STRING_ADVANCE.
11286 (produce_chars): Fix for the case that the source and the
11287 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11288 instead of CHAR_STRING_ADVANCE.
11289 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11290 STRING_CHAR_ADVANCE.
11291
112922008-03-15 Andreas Schwab <schwab@suse.de>
11293
11294 * regex.c (re_match_2_internal): Correct matching of eight bit
11295 characters in unibyte strings.
11296
112972008-03-15 Martin Rudalics <rudalics@gmx.at>
11298
11299 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11300 at end of range when it coincides with the end of the buffer.
11301
113022008-03-14 Eli Zaretskii <eliz@gnu.org>
11303
11304 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11305
11306 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11307
113082008-03-14 Jason Rumney <jasonr@gnu.org>
11309
11310 * editfns.c (initial_tz): New variable.
11311 (syms_of_editfns): Initialize it.
11312 (Fset_time_zone_rule): Set it when first called.
11313 Use it when TZSTRING is nil.
11314
11315 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11316 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11317 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11318 (globals_of_w32fns): Initialize them.
11319 (compute_tip_xy): Use them to position tooltips.
11320
113212008-03-14 Glenn Morris <rgm@gnu.org>
11322
11323 * emacs.c (main): Revert previous change.
11324 (standard_args): Revert -internal-script back to -scriptload,
11325 and remove the long-option form.
11326
113272008-03-13 Glenn Morris <rgm@gnu.org>
11328
11329 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11330 Remove option -enable-font-backend.
11331
113322008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11333
11334 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11335
113362008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11337
11338 * xterm.c (x_connection_closed): For GTK: If this is the last
11339 terminal just exit without closing the display.
11340
113412008-03-11 Jason Rumney <jasonr@gnu.org>
11342
11343 * w32font.c (w32font_full_name): Use floor to round.
11344
f0131492 113452008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11346
11347 * sound.c (alsa_configure): Declare vol at beginning of block.
11348
11349 * fontset.c (Ffontset_info): Remove extra semicolon.
11350
113512008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11352
11353 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11354 size of resulting string.
11355
113562008-03-10 Jason Rumney <jasonr@gnu.org>
11357
11358 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11359
113602008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11361
11362 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11363 Don't pretend as if characters with display property haven't been
11364 consumed for string-replacing-string case.
11365
113662008-03-08 Kim F. Storm <storm@cua.dk>
11367
11368 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11369 (get_next_display_element, next_element_from_string)
11370 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11371
113722008-03-08 Andreas Schwab <schwab@suse.de>
11373
11374 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11375
113762008-03-06 Jason Rumney <jasonr@gnu.org>
11377
11378 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11379 when charset not specified. Only translate ANSI to unicode when
11380 font_type is truetype.
11381 (w32font_coverage_ok): New function.
11382 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11383
113842008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11385
11386 * lread.c (Fread_char): Resolve modifiers.
11387 (Fread_char_exclusive): Likewise.
11388
11389 * character.c (char_resolve_modifier_mask): New function.
11390 (char_string): Use char_resolve_modifier_mask.
11391 (Fchar_resolve_modifiers): New function.
11392 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11393 function.
11394
113952008-03-04 Jason Rumney <jasonr@gnu.org>
11396
11397 * makefile.w32-in: Always include w32font.c in the build.
11398 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11399
114002008-03-04 Andreas Schwab <schwab@suse.de>
11401
11402 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11403 (versionclean): Likewise.
11404
114052008-03-04 Juanma Barranquero <lekktu@gmail.com>
11406
11407 * .cvsignore: Add oo.
11408
114092008-03-03 Andreas Schwab <schwab@suse.de>
11410
11411 * coding.c (decode_coding_object): Inhibit gap shrinking while
11412 decoding in place.
11413
114142008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11415
11416 * w32term.c: Remove unused include "gnu.h".
11417 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11418
11419 * gnu.h: Rename to ...
11420 * emacs-icon.h: ... this.
11421 * xterm.c: Use emacs-icon.h instead of gnu.h.
11422 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11423
114242008-03-03 Juanma Barranquero <lekktu@gmail.com>
11425
11426 * w32font.c: Include math.h.
11427
114282008-03-03 Jason Rumney <jasonr@gnu.org>
11429
11430 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11431 Compute options separately.
11432 (w32font_open_internal): Set glyph_idx before caching metrics.
11433
11434 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11435 Define if system headers don't.
11436 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11437 (w32font_encode_char): Don't declare here.
11438
11439 * w32font.c (Quniscribe, QCformat): New symbols.
11440 (syms_of_w32font): Define them.
11441 (w32font_has_char): Indicate uncertainty.
11442 (w32font_encode_char): Encode as glyph point. Make static.
11443 (recompute_cached_metrics): New function.
11444 (w32font_open_internal): Use it. Set font to use glyph points
11445 initially. Set format based on type of font.
11446 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11447 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11448 on it. Set format based on information available here.
11449 (add_font_entity_to_list): Identify backend based on opentype_only.
11450
114512008-03-02 Andreas Schwab <schwab@suse.de>
11452
11453 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11454
11455 * coding.c (decode_coding_big5, produce_chars):
11456 Fix typos in last change.
11457
114582008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11459
11460 * gnu.h: New icon.
11461
114622008-03-02 Kenichi Handa <handa@m17n.org>
11463
11464 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11465 `dos', don't decode '\r' if that is the last in the source.
11466 (decode_coding_utf_16, decode_coding_emacs_mule)
11467 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11468 (decode_coding_raw_text, decode_coding_charset): Likewise.
11469 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11470
114712008-03-01 Jason Rumney <jasonr@gnu.org>
11472
11473 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11474
114752008-03-01 Kim F. Storm <storm@cua.dk>
11476
11477 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11478
114792008-03-01 Jason Rumney <jasonr@gnu.org>
11480
11481 * w32font.c (w32font_full_name): New function.
11482 (w32font_open_internal): Use it.
11483
114842008-03-01 Kim F. Storm <storm@cua.dk>
11485
11486 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11487
114882008-03-01 Jason Rumney <jasonr@gnu.org>
11489
11490 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11491
114922008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11493
11494 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11495 xg_frame_resized when the event is for the edit widget.
11496
11497 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11498
11499 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11500 set_char_size.
11501 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11502 operations on widgets here. Just set frame size if needed.
11503 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11504 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11505 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11506 the whole frame.
11507 (xg_create_tool_bar): Move attachment of the tool bar to
11508 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11509 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11510
115112008-03-01 Jason Rumney <jasonr@gnu.org>
11512
11513 * w32fns.c (w32_msg_pump): Disable debug code.
11514
115152008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11516
11517 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11518
115192008-02-29 Chong Yidong <cyd@stupidchicken.com>
11520
11521 * xdisp.c (next_overlay_string): Don't set
11522 overlay_strings_at_end_processed_p if we're currently reading from
11523 a display string.
11524
115252008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11526
11527 * xdisp.c (get_overlay_strings_1): Fix typo.
11528
115292008-02-29 Chong Yidong <cyd@stupidchicken.com>
11530
11531 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11532
115332008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11534
11535 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11536
11537 * xdisp.c (display_mode_element): Cancel the previous change.
11538 (decode_mode_spec): Likewise.
11539 (handle_auto_composed_prop): Don't make composition if it->string
11540 is a string.
11541
115422008-02-27 Kim F. Storm <storm@cua.dk>
11543
11544 * lisp.h (GLYPH): Change type from int to struct with separate char
11545 and face_id members.
11546 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11547 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11548 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11549 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11550 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11551 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11552 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11553 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11554 handle new Lisp glyph code encoding, either an integer or a cons.
11555
11556 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11557 (GLYPH_ALIAS): Delete.
11558 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11559 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11560 (GLYPH_FROM_CHAR): Replace macro by ...
11561 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11562
11563 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11564 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11565 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11566 (GLYPH_INVALID_P): New macro.
11567 (spec_glyph_lookup_face): Update prototype.
11568
11569 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11570 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11571 new glyph code encoding.
11572 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11573 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11574
11575 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11576 Adapt to new glyph type and new glyph code encoding.
11577
11578 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11579
11580 * indent.c (current_column, current_column_1, Fmove_to_column)
11581 (compute_motion): Adapt to new glyph code encoding.
11582
11583 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11584
115852008-02-27 Chong Yidong <cyd@stupidchicken.com>
11586
11587 * process.c (wait_reading_process_output): Check for window
11588 changes caused by timers.
11589 Suggested by Johan Bockgård.
11590
115912008-02-27 Glenn Morris <rgm@gnu.org>
11592
11593 * emacs.c (USAGE1): Add `--disable-font-backend'.
11594
115952008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11596
11597 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11598 is made to the buffer.
11599
116002008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11601
11602 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11603 (face_at_string_position):
11604 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11605 (face_at_string_position):
11606 * xdisp.c (display_string, next_overlay_change):
11607 * buffer.h (overlays_at):
11608 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11609 Update callers.
11610
116112008-02-26 Chong Yidong <cyd@stupidchicken.com>
11612
11613 * editfns.c (Fformat): Doc fix.
11614
116152008-02-26 Juanma Barranquero <lekktu@gmail.com>
11616
11617 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11618 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11619 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11620
116212008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11622
11623 * buffer.c (Fbuffer_swap_text): New function.
11624 (syms_of_buffer): Defsubr it.
11625
116262008-02-25 Chong Yidong <cyd@stupidchicken.com>
11627
11628 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11629
116302008-02-25 Jason Rumney <jasonr@gnu.org>
11631
11632 * w32font.c (w32font_draw): Draw one character at a time when padding.
11633
116342008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11635
11636 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11637 Handle a nil arg. Use run_window_configuration_change_hook.
11638 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11639 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11640 Use run_window_configuration_change_hook.
11641
116422008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11643
11644 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11645 1-pixel width.
11646
116472008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11648
11649 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11650 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11651 if the glyph in the font is zero pixel with.
11652
11653 * dispextern.h (struct glyph_string): New member padding_p.
11654
11655 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11656
11657 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11658
11659 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11660
11661 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11662
11663 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11664
116652008-02-25 Jason Rumney <jasonr@gnu.org>
11666
11667 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11668
116692008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11670
11671 Allow fine-grained image-cache flushing.
11672 * dispextern.h (struct image): Add `dependencies' field.
11673 (clear_image_caches): Change arg to Lisp_Object.
11674 * image.c (make_image): Initialize `dependencies' field.
11675 (clear_image_cache): Change arg to allow fine-grained flushing.
11676 Perform the flush even if image-cache-eviction-delay is nil.
11677 (clear_image_caches): Change arg to Lisp_Object.
11678 (Fclear_image_cache): Expand meaning of the argument.
11679 (mark_image): Mark `dependencies' field.
11680 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11681 (lface_hash): Use XHASH rather than XFASTINT.
11682 (face_at_buffer_position): Fix int -> EMACS_INT position.
11683 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11684 (select_frame_for_redisplay): Remove code duplication.
11685 (redisplay_internal): Adapt arg to call to clear_image_caches.
11686
116872008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11688
11689 * s/vms4-0.h:
11690 * s/vms4-2.h:
11691 * s/vms4-4.h:
11692 * s/vms5-5.h: Remove, unused.
11693
11694 * s/irix5-2.h:
11695 * s/irix6-0.h:
11696 * s/riscos5.h:
11697 * s/mach-bsd4-3.h:
11698 * m/mips4.h: Remove files for obsolete systems.
11699
11700 * Makefile.in:
11701 * filelock.c:
11702 * unexmips.c:
11703 * m/hp9000s300.h:
11704 * m/iris4d.h:
11705 * s/aix3-1.h:
11706 * s/hpux.h:
11707 * s/msdos.h:
11708 * s/usg5-0.h:
11709 * s/usg5-2-2.h:
11710 * s/usg5-2.h:
11711 * s/usg5-3.h: Remove references to obsolete variables.
11712
11713 * s/irix5-0.h: Remove, move all the contents ...
11714 * s/irix6-5.h: ... here. Simplify.
11715 * config.in: Regenerate.
11716
117172008-02-24 Jason Rumney <jasonr@gnu.org>
11718
11719 * w32term.c (x_draw_glyph_string_background): Clear the background
11720 manually when cleartype is in use.
11721 (x_draw_glyph_string_foreground): Draw text transparently when
11722 cleartype is in use.
11723
11724 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11725 a font into it unless we have to.
11726
117272008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11728
11729 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11730 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11731
aac0c6e3
MR
117322008-02-18 Jason Rumney <jasonr@gnu.org>
11733
11734 * w32fns.c (Fw32_shell_execute): Encode parameters.
11735
117362008-02-09 Eli Zaretskii <eliz@gnu.org>
11737
11738 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11739
117402008-02-05 Juanma Barranquero <lekktu@gmail.com>
11741
11742 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11743
117442008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11745
11746 * xterm.c (x_set_offset): Don't change the gravity if
11747 CHANGE_GRAVITY is -1.
11748
117492008-02-23 Chong Yidong <cyd@stupidchicken.com>
11750
11751 * fileio.c (auto_save_error_occurred): New var.
11752 (auto_save_error): Set it.
11753 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11754 error occurred.
11755
117562008-02-23 Eli Zaretskii <eliz@gnu.org>
11757
11758 * w32.c (globals_of_w32): Add initializations for
11759 g_b_init_get_sid_sub_authority and
11760 g_b_init_get_sid_sub_authority_count.
11761
117622008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11763
11764 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11765 (font_parse_xlfd): Use them for sanity check.
11766 (Finternal_set_font_style_table): Make sure the table is bijective.
11767
11768 Consolidate the image_cache to the terminal struct.
11769 * termhooks.h (P_): Remove redundant def.
11770 (struct terminal): New field `image_cache'.
11771 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11772 of FRAME_X_IMAGE_CACHE.
11773 * xterm.h (struct x_display_info): Remove image_cache field.
11774 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11775 * w32term.h (struct w32_display_info): Remove image_cache field.
11776 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11777 * macterm.h (struct mac_display_info): Remove image_cache field.
11778 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11779 * xterm.c (x_term_init):
11780 * w32term.c (w32_term_init):
11781 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11782 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11783 Remove declarations.
11784 (clear_image_caches, mark_image_cache): New declarations.
11785 * xfaces.c (clear_face_cache):
11786 * xdisp.c (redisplay_internal): Use clear_image_caches.
11787 * image.c (clear_image_cache): Don't check that a frame is on
11788 a window-system before checking if it shares the same cache.
11789 (clear_image_caches): New function.
11790 (Fclear_image_cache): Use it.
11791 (mark_image): Move from allo.c.
11792 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11793 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11794 (mark_object): Don't call mark_image_cache for frames.
11795 (mark_terminals): Call mark_image_cache.
11796
11797 * lisp.h (Fdelete_terminal): Declare.
11798
11799 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11800 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11801 wrong_type_argument.
11802
118032008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11804
11805 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11806 malayalam.el, and tamil.el. Add sinhala.el.
11807
118082008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11809
11810 * xterm.c (x_connection_closed): Consolidate identical tests.
11811 (x_delete_terminal): Don't crash if called via x_connection_closed.
11812
118132008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11814
11815 * xdisp.c (decode_mode_spec): New arg string.
11816 (display_mode_element): Adjust for the above change.
11817
118182008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11819
11820 * callint.c (Fcall_interactively): Use AREF.
11821
118222008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11823
11824 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11825
118262008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11827
11828 * xfns.c (Fx_show_tip): Set string to " " if empty.
11829
118302008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11831
11832 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11833 with Qt.
11834
118352008-02-17 Kenichi Handa <handa@m17n.org>
11836
11837 * ftfont.c (ftfont_shape): Return Lispy number.
11838
11839 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11840 for GCs.
11841 (Finternal_set_font_selection_order): Call font_update_sort_order
11842 only when enable_font_backend is set.
11843 (realize_x_face): Set face->font_info to that of default face only
11844 when enable_font_backend is set.
11845
11846 * xdisp.c (handle_composition_prop): Set it->c to the fist
11847 character of the composed region.
11848 (fill_composite_glyph_string): Set base_face->font_info to
11849 s->font_info. Get a face for ascii from base_face->ascii_face.
11850 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11851 with a face already decided.
11852 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11853 non-negative.
11854 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11855 call font_prepare_composition unconditionally.
11856
11857 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11858
11859 * xterm.h (struct x_display_info): New member font.
11860
11861 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11862 (x_set_mouse_face_gc, x_new_font): Likewise.
11863 (x_term_init): Setup display_info->font.
11864 (x_delete_terminal): Free display_info->font.
11865
11866 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11867
11868 * ftxfont.c (ftxfont_default_fid): Delete it.
11869 (ftxfont_open): Set xfont->fid to 0.
11870 (ftxfont_end_for_frame): Clear data specific to the frame and the
11871 font-driver.
11872
11873 * xftfont.c (xftfont_default_fid): Delete it.
11874 (xftfont_open): Set xfont->fid to 0.
11875
11876 * fontset.c (FONTSET_OBJLIST): New macro.
11877 (fontset_find_font): Update font-object list of the fontset.
11878 (free_realized_fontset): New function.
11879 (free_face_fontset): Call free_realized_fontset.
11880 (Ffont_info): Call font_close_object only when enable_font_backend
11881 is set.
11882
11883 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11884 [HAVE_NTGUI]: Include w32term.h.
11885 [MAC_OS]: Include macterm.ch.
11886 (font_otf_ValueRecord): Use make_number.
11887 (font_finish_cache): Fix handling of reference count.
11888 (font_clear_cache): Update num_fonts.
11889 (font_open_entity): Update smallest_char_width and
11890 smallest_font_height of the frame.
11891 (font_close_object): Update num_fonts.
11892 (Fclear_font_cache): Fix finding the target cache data.
11893
118942008-02-16 Glenn Morris <rgm@gnu.org>
11895
11896 * fontset.c (Finternal_char_font): Fix compilation warning.
11897
118982008-02-16 Eli Zaretskii <eliz@gnu.org>
11899
11900 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11901 instead of char arrays. Enlarge the size of array passed to
11902 get_token_information.
11903
11904 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11905 warnings.
11906
119072008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11908
11909 * .gdbinit: Don't set `args', it breaks gdb --args.
11910
119112008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11912
11913 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11914 within a narrowed buffer.
11915
119162008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11917
11918 * coding.c (decode_coding_object, encode_coding_object):
11919 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11920
119212008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11922
11923 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11924 hardcoding 1.
11925 (detect_coding_system):
11926 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11927 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11928 * insdel.c (insert_from_gap):
11929 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11930 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11931 (string_to_multibyte):
11932 * character.c (chars_in_text, multibyte_chars_in_text):
11933 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11934
11935 * character.h (FETCH_STRING_CHAR_ADVANCE)
11936 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11937 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11938 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11939
11940 * casefiddle.c (casify_region): Only call after-change and composition
11941 functions on the part of the region that was changed.
11942
11943 * keyboard.c (read_avail_input):
11944 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11945
119462008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11947
11948 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11949 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11950
119512008-02-11 Juanma Barranquero <lekktu@gmail.com>
11952
11953 * w32menu.c (push_submenu_start, push_submenu_end)
11954 (push_left_right_boundary, push_menu_pane, push_menu_item):
11955 * keyboard.c (read_key_sequence): Don't pass args with side effects
11956 to AREF, it fails when compiling with -DENABLE_CHECKING.
11957
119582008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11959
11960 * Makefile.in (${lispsource}international/charprop.el):
11961 Delete this target.
11962
11963 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11964 emacs-unicode-2.
11965
119662008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11967
11968 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11969
119702008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11971
11972 * frame.c (Qnoelisp): New symbol.
11973 (syms_of_frame): Initialize it.
11974 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11975 harmless Elisp code, from a strong `force' from x_connection_closed.
11976 * frame.h (Qnoelisp): Declare.
11977 * xterm.c (x_connection_closed): Pass `noelisp'.
11978
11979 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11980 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11981 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11982 rather than `int' for the type of `type'.
11983
119842008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11985
11986 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11987
11988 * Makefile.in (GNUC): Remove support for gcc-1.x.
11989
119902008-02-10 Richard Stallman <rms@gnu.org>
11991
11992 * lisp.h (ASET): Use AREF, not ASLOT.
11993
119942008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11995
11996 * lisp.h (ASET): Check bounds.
11997
119982008-02-10 Glenn Morris <rgm@gnu.org>
11999
12000 * buffer.c (mode-name): Doc fix.
12001
120022008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12003
12004 * Makefile.in:
12005 * emacs.c:
12006 * gmalloc.c:
12007 * keyboard.c:
12008 * lisp.h:
12009 * m/ibm370aix.h:
12010 * process.c:
12011 * regex.c:
12012 * s/hpux.h:
12013 * sysdep.c:
12014 * sysselect.h:
12015 * systty.h:
12016 * unexec.c:
12017 * w32term.c:
12018 * xsmfns.c:
12019 * xterm.c: Remove code that deals with obsolete variables.
12020
12021 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12022
12023 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12024 nothing else needs it anymore.
12025
120262008-02-09 Eli Zaretskii <eliz@gnu.org>
12027
12028 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12029 instead of unibyte_char_to_multibyte.
12030
120312008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12032
12033 * s/gnu-linux.h: Remove commented out code.
12034
12035 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12036
12037 * Makefile.in: Update what RMS says about using autoconf.
12038 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12039 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12040 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12041 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12042
120432008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12044
12045 * keymap.c (Fkey_description): Move side effect outside of macro call.
12046
12047 * xfaces.c (Finternal_make_lisp_face):
12048 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12049
12050 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12051 (syms_of_fontset): Use ASET.
12052
12053 * fns.c (concat): Move side effect outside of macro call.
12054 (hash_clear): Use ASET.
12055
120562008-02-08 Richard Stallman <rms@gnu.org>
12057
12058 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12059 If FORCE, and frame has a surrogate minibuffer for another frame,
12060 delete the other frame first.
12061
120622008-02-07 Timo Savola <timo.savola@iki.fi>
12063
12064 * xterm.c (x_detect_focus_change): Handle embed client message.
12065 (handle_one_xevent): Ditto.
12066 (handle_one_xevent): If embedded and we get a button press/release,
12067 request focus.
12068 (xembed_set_info, xembed_send_message): New functions.
12069 (x_make_frame_visible): Call xembed_set_info if embedded.
12070 (x_make_frame_invisible): Call xembed_set_info if embedded.
12071 (x_term_init): Initialize Xatom_XEMBED.
12072 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12073 (x_iconify_frame): Ditto.
12074
12075 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12076 (enum xembed_info, enum xembed_message, enum xembed_focus)
12077 (enum xembed_modifier, enum xembed_accelerator): New.
12078 (xembed_set_info, xembed_send_message): Declare.
12079 (FRAME_X_EMBEDDED_P): New.
12080
12081 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12082 gtk_plug_new.
12083
12084 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12085 window ID of a frame.
12086 (x_window): Reparent frame if embedded.
12087 (Fx_create_frame): Don't set border width if embedded.
12088
12089 * emacs.c (USAGE3): Add --parent-id.
12090 (standard_args): Ditto.
12091
120922008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12093
12094 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12095
120962008-02-07 Jim Meyering <meyering@redhat.com>
12097
12098 Use "do...while (0)", not "if (1)...else" in macro definitions.
12099 The latter provokes a warning from gcc about the empty else, when
12100 followed by ";". Also, without that trailing semicolon, it would
12101 silently swallow up any following statement.
12102 * syntax.h (SETUP_SYNTAX_TABLE)
12103 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12104 * buffer.h (DECODE_POSITION): Likewise.
12105 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12106 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12107 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12108 (FETCH_CHAR_ADVANCE): Likewise.
12109 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12110
121112008-02-07 Jim Meyering <meyering@redhat.com>
12112
12113 * lread.c [lint]: Don't include <sys/inode.h>.
12114
121152008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12116
12117 * xselect.c (x_handle_dnd_message):
12118 * xmenu.c (digest_single_submenu, xmenu_show):
12119 * xdisp.c (with_echo_area_buffer_unwind_data)
12120 (format_mode_line_unwind_data, unwind_format_mode_line)
12121 (display_menu_bar):
12122 * eval.c (Ffetch_bytecode):
12123 * doc.c (store_function_docstring):
12124 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12125 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12126 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12127
121282008-02-07 Kenichi Handa <handa@m17n.org>
12129
12130 * ftxfont.c (ftxfont_open): Don't set
12131 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12132
12133 * ftfont.c (ftfont_open): Fix previous change.
12134
121352008-02-06 Jason Rumney <jasonr@gnu.org>
12136
12137 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12138 Use cached metrics for ASCII characters.
12139 (w32font_open_internal): Don't set font's owning_frame.
12140 Cache metrics for ASCII characters.
12141
12142 * w32font.h (struct w32font_info): Add ascii_metrics.
12143 Remove owning_frame.
12144
121452008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12146
12147 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12148 to negative value.
12149
12150 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12151
12152 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12153
12154 * charset.c (syms_of_charset): Set QCtest and Qeq.
12155
121562008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12157
12158 * process.c (Fstart_process):
12159 * callproc.c (Fcall_process): Handle the case where
12160 Funhandled_file_name_directory returns nil.
12161
12162 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12163 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12164 * font.c (check_gstring): Use them and AREF to access the vector before
12165 we know it's really a gstring.
12166 (Ffont_shape_text): Fix typo.
46e722a9 12167 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12168
12169 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12170 Declare.
12171
12172 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12173
121742008-02-05 Jason Rumney <jasonr@gnu.org>
12175
12176 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12177 Set smallest_font_height and smallest_char_width in display info.
12178
121792008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12180
12181 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12182
121832008-02-05 Miles Bader <miles@gnu.org>
12184
12185 * xfaces.c (get_lface_attributes, merge_named_face)
12186 (lookup_named_face, lookup_derived_face, realize_named_face):
12187 Revert 2008-02-01 change by cyd@stupidchicken.com.
12188
121892008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12190
12191 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12192 fallback fonts.
12193 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12194
121952008-02-04 Jason Rumney <jasonr@gnu.org>
12196
12197 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12198 set full_name.
12199 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12200
122012008-02-03 Jason Rumney <jasonr@gnu.org>
12202
12203 * makefile.w32-in (OBJ1): Include font.o here.
12204 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12205
122062008-02-02 Jason Rumney <jasonr@gnu.org>
12207
12208 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12209
122102008-02-01 Jason Rumney <jasonr@gnu.org>
12211
12212 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12213
12214 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12215
122162008-02-01 Andreas Schwab <schwab@suse.de>
12217
12218 * Makefile.in (shortlisp, lisp): Update for rename of
12219 ../lisp/language/myanmar.el.
12220
122212008-02-01 Chong Yidong <cyd@stupidchicken.com>
12222
12223 * xfaces.c (get_lface_attributes): Delete function.
12224 (merge_named_face, lookup_named_face, lookup_derived_face)
12225 (realize_named_face): Call lface_from_face_name directly, and use
12226 the fact that merge_face_vectors does not alter its FROM argument.
12227
122282008-02-01 Jason Rumney <jasonr@gnu.org>
12229
12230 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12231 input in the default locale. Handle non-Unicode multibyte input.
12232
122332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12234
12235 * fontset.c (reorder_font_vector): Exclude nil elements from the
12236 font group. Don't try multiple fonts.
12237 (fontset_font): Adjust for the above change.
12238 (Finternal_char_font): Return nil if the found font doesn't
12239 contain the character ch.
12240
12241 * Makefile.in (lisp, shortlisp): Add cham.el.
12242
122432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12244
12245 * font.h (FONTP): Make it return 1 also for a font-object.
12246
12247 * .gdbinit (xfontset): New function.
12248
12249 * font.c (font_find_for_lface): Check if the character C is
12250 supported or not only for the first font.
12251
12252 * fontset.c (reorder_font_vector): Fix typo.
12253 (fontset_find_font): Don't add a font-spec specifying a script.
12254 Use 0 (not Qt) for the indication of empty font-group. Change the
12255 format of RFONT-DEF. Return Qt if no font in the font-group
12256 support the character.
12257 (fontset_font): Adjust for the above change. If no font was
12258 found the character, remember that.
12259 (face_for_char): Adjust for the change of RFONT-DEF.
12260 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12261 no font for the target.
12262 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12263
122642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12265
12266 * font.c (font_load_for_face): Handle the case that the font in
12267 face->lface is a string.
12268
122692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12270
12271 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12272
122732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12274
12275 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12276 Fix previous change. If the frame is not on a window system,
12277 signal an error.
12278
122792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12280
12281 * coding.c (decode_coding_object, encode_coding_object): Adjust
12282 marker positions after conversion.
12283
12284 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12285
122862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12287
12288 * font.c (font_find_for_lface): Fix the handling of the return
12289 value of font_has_char.
12290 (Ffont_shape_text): Fix previous change.
12291
12292 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12293 (fontset_ref_and_range): Delete it.
12294 (fontset_find_font): Call char_table_ref_and_range instead of
12295 FONTSET_REF_AND_RANGE.
12296 (make_fontset): Don't setup font groups of Latin here.
12297 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12298 (new_fontset_from_font): Make the specified font the default for
12299 all Latin characters.
12300
123012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12302
12303 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12304 is on a window system before accessing the fontset of the frame.
12305
123062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12307
12308 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12309
12310 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12311 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12312
12313 * font.c (Ffont_shape_text): If the font driver doesn't have a
12314 shaper function, make zero-width glyphs to have at least one-pixel
12315 width. Fix setting of `to' field of glyphs.
12316
123172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12318
12319 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12320 glyphs.
12321
12322 * font.h (struct font_driver): Improve docstring of member `shape'.
12323
123242008-02-01 Kenichi Handa <handa@m17n.org>
12325
12326 * composite.c (syms_of_composite): Fix docstring of
12327 auto-composition-function.
12328
12329 * font.h (LGLYPH_SIZE): New macro.
12330
12331 * font.c (Ffont_fill_gstring): Stop filling when a character not
12332 supported by the font is found.
12333 (Ffont_shape_text): When a shape callback function returns nil,
12334 try at most two more times with larger gstring.
12335 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12336
12337 * xdisp.c (handle_auto_composed_prop): Change the argument to
12338 auto-composition-function.
12339
12340 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12341 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12342 Lispy glyph and store it in the lgstring.
12343
12344 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12345
12346 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12347
123482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12349
12350 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12351
12352 * fontset.c (Vfont_encoding_charset_alist): New variable.
12353 (syms_of_fontset): DEFVAR it.
12354 (reorder_font_vector, fontset_find_font): Optimize for the case of
12355 no need of reordering.
12356 (face_for_char): Map the charset property by
12357 Vfont_encoding_charset_alist.
12358
123592008-02-01 Jason Rumney <jasonr@gnu.org>
12360
12361 * w32font.c (logfonts_match): Don't check adstyle here.
12362 (font_matches_spec): Check here against physical font instead.
12363 (add_font_entity_to_list): Avoid some substitutions.
12364
12365 * font.c (font_parse_fcname): Default weight and slant to normal.
12366 (font_score): Prefer normal fonts if weight or slant unspecified.
12367 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12368 match freetype scores.
12369
123702008-02-01 Jason Rumney <jasonr@gnu.org>
12371
12372 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12373 font, as it may have been deleted.
12374 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12375 most common hyphenless variation.
12376 (logfonts_match): Check generic family.
12377 (font_matches_spec): Don't check generic family here.
12378 (fill_in_logfont): Set generic family based on adstyle.
12379
12380 * w32font.h (w32font_get_cache): Update declaration.
12381
123822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12383
12384 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12385
12386 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12387 If none of the new drivers are available, call font_update_drivers
12388 with the old drivers.
12389
12390 * w32font.c (w32font_get_cache): Adjust the argument type.
12391
12392 * xfont.c (xfont_get_cache): Adjust the argument type.
12393
12394 * font.h (struct font_driver): Change argument type of get_cache.
12395
12396 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12397
12398 * font.c (Ffont_get): Fix arguments to Fassoc.
12399 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12400 (font_clear_cache): New function.
12401 (font_list_entities, font_matching_entity): Use font_get_cache.
12402 (font_update_drivers): Call font_clear_cache when finishing a driver.
12403
12404 * fontset.c (fontset_find_font): Fix previous change.
12405
124062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12407
12408 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12409 dpyinfo->font_table.
12410 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12411 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12412
12413 * font.c (font_at): Handle the case that the arg C is negative.
12414 Handle the unibyte case.
12415 (Ffont_at): Call font_at with the arg C -1.
12416
12417 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12418 the position here, and call font_at with the arg C -1.
12419 Don't check the range of the existing composition at the point.
12420
124212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12422
12423 * fontset.c (fontset_add): New args charset_id and family.
12424 Change caller.
12425 (load_font_get_repertory, fontset_find_font): Assume that
12426 font_spec is always a font-spec object.
12427 (Fset_fontset_font): Always store a font-spec object in a fontset.
12428
12429 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12430 instead of get_property_and_range.
12431
124322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12433
12434 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12435 (xftfont_open): Don't keep locking face.
12436 (xftfont_close): Don't unlock face.
12437 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12438
12439 * fontset.c (fontset_find_font): Don't prefer a font of
12440 supplementary charset.
12441
124422008-02-01 Kenichi Handa <handa@m17n.org>
12443
12444 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12445 script, langsys_tag to langsys, new member script.
12446 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12447 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12448 listing to the script specified in that property. Fix arg to
12449 OTF_check_features.
12450
124512008-02-01 Jason Rumney <jasonr@gnu.org>
12452
12453 * w32font.h: New file.
12454
12455 * w32font.c: Include it.
12456 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12457 (w32font_open): Set owning_frame.
12458 (w32font_text_extents): Use owning_frame.
12459 (struct font_callback_data): Add opentype_only field.
12460 (add_font_entity_to_list): Use it to filter fonts.
12461 Don't check against full name.
12462 (w32font_list_internal): New function.
12463 (w32font_list): Use it.
12464 (w32font_match_internal): New function.
12465 (w32font_match): Use it.
12466 (w32font_open_internal): New function.
12467 (w32font_open): Use it.
12468 (w32font_get_cache, w32font_close, w32font_has_char)
12469 (w32font_encode_char, w32font_text_extents, w32font_draw):
12470 Make non-static.
12471
12472 * makefile.w32-in (w32font.o): Depend on w32font.h.
12473
124742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12475
12476 * charset.c (Fdefine_charset_internal): Record a supplementary
12477 charset at the tail of Vcharset_order_list.
12478
12479 * font.c (Ffont_shape_text): Fix the return value.
12480
12481 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12482
12483 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12484
124852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12486
12487 * ftfont.c (struct OpenTypeSpec): New struct.
12488 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12489 (ftfont_get_open_type_spec): New function.
12490 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12491
12492 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12493
124942008-02-01 Jason Rumney <jasonr@gnu.org>
12495
12496 * w32font.c (add_font_entity_to_list): Compare only the beginning
12497 of full name.
12498
124992008-02-01 Kenichi Handa <handa@m17n.org>
12500
12501 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12502 Never return HANDLED_RECOMPUTE_PROPS.
12503
125042008-02-01 Kenichi Handa <handa@m17n.org>
12505
12506 * font.c (font_gstring_produce): Delete it.
12507
12508 * composite.h (COMPOSITION_METHOD):
12509 Handle COMPOSITION_WITH_GLYPH_STRING.
12510
125112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12512
12513 * xfont.c (Qx): Delete.
12514 (syms_of_xfont): Don't initialize Qx.
12515
12516 * composite.h (enum composition_method):
12517 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12518
125192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12520
12521 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12522 (choose_face_font): Accept new form of font-spec.
12523
12524 * frame.h (font_driver_list): Declare it unconditionally.
12525 (struct frame): Define members font_driver_list and font_data_list
12526 unconditionally.
12527
12528 * fontset.c: Include "font.h" unconditionally.
12529 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12530 (Fset_fontset_font): Accept a font-spec object.
12531
12532 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12533 PIXEL_SIZE part a wild card.
12534
12535 * dispextern.h (struct glyph_string): Define members clip and
12536 num_clips unconditionally.
12537 (struct face): Define members font_info and extra unconditionally.
12538
12539 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12540 ftfont_info only when HAVE_LIBOTF is defined.
12541
125422008-02-01 Andreas Schwab <schwab@suse.de>
12543
12544 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12545 and end.
12546
125472008-02-01 Jason Rumney <jasonr@gnu.org>
12548
12549 * w32font.c (w32font_driver): Add new fields.
12550
125512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12552
12553 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12554 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12555 (LIBES): Add @M17N_FLT_CFLAGS@.
12556
12557 * composite.c (compose_text): Don't treat the new style
12558 composition specially.
12559
12560 * emacs.c (main): Call syms_of_font unconditionally.
12561
12562 * font.h (FONT_ENTITY_NOT_LOADABLE)
12563 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12564 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12565 (struct font_driver): New member shape.
12566 (font_registry_charsets): Extern it.
12567 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12568 (font_otf_capability, font_drive_otf): Delete their externs.
12569
12570 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12571 (font_charset_alist, font_registry_charsets): Move from xfont.c
12572 and rename.
12573 (font_prop_validate_otf): New function.
12574 (font_property_table): Register it for QCotf.
12575 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12576 (font_drive_otf): Delete.
12577 (font_prepare_composition): New arg F. Adjust for the change of
12578 lispy gstring.
12579 (font_find_for_lface): New arg C.
12580 (font_load_for_face): Adjust for the change of font_find_for_lface.
12581 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12582 lispy gstring.
12583 (Ffont_shape_text): New function.
12584 (Fopen_font): If the font size is not given, use 12-pixel.
12585 (Ffont_at): New arg STRING.
12586 (syms_of_font): Initalize font_charset_alist.
12587 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12588 conditionally.
12589
12590 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12591 fonts of the same font-spec. Change the format of RFONT-DEF.
12592 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12593 Adjust for the change of RFONT-DEF.
12594 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12595
12596 * ftfont.h: New file.
12597
12598 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12599 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12600 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12601 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12602 font_otf_capability and font_drive_otf, set ftfont_shape.
12603 (ftfont_list): Adjust for the change of :otf property value.
12604 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12605 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12606 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12607 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12608 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12609 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12610
12611 * w32term.c (x_draw_composite_glyph_string_foreground):
12612 Adjust for the change of lispy gstring.
12613
12614 * xdisp.c (handle_composition_prop): Adjust for the change of
12615 lispy gstring. Call a function for auto-composition with the
12616 third arg it->window.
12617 (fill_composite_glyph_string): Adjust for the change of lispy string.
12618 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12619
12620 * xfaces.c (set_font_frame_param): Adjust for the change of
12621 font_find_for_lface.
12622
12623 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12624 (xfont_registry_charsets): Likewise. Change caller.
12625 (syms_of_xfont): Don't handle x_font_charset_alist.
12626
12627 * xftfont.c: Include "ftfont.h".
12628 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12629 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12630 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12631 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12632 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12633 Set xftfont_driver.shape to xftfont_shape.
12634
12635 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12636 the change of lispy gstring.
12637
126382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12639
12640 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12641
126422008-02-01 Jason Rumney <jasonr@gnu.org>
12643
12644 * w32font.c (w32font_draw): Fill background manually.
12645
126462008-02-01 Jason Rumney <jasonr@gnu.org>
12647
12648 * font.c (Qfontp): Remove unused symbol.
12649 (QCantialias): New symbol.
12650 (syms_of_font): Define it.
12651 (font_property_table): Set a validator for QCantialias.
12652
12653 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12654 Define if not already.
12655 (QCfamily): Share with xfaces.c.
12656 (Qstandard, Qsubpixel, Qnatural): New symbols.
12657 (syms_of_w32font): Define them. Don't define QCfamily here.
12658 (w32_antialias_type, lispy_antialias_type): New functions.
12659 (w32_enumfont_pattern_entity): New arg requested_font.
12660 Set antialias parameter if non-default was requested.
12661 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12662
126632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12664
12665 * lread.c (read1): Undo the previous change.
12666
126672008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12668
12669 * frame.c (Fdelete_frame): Call font_update_drivers only when
12670 USE_FONT_BACKEND is defined.
12671
126722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12673
12674 * font.h (struct font_bitmap): New member bits_per_pixel.
12675 (struct font_driver): New members start_for_frame and end_for_frame.
12676 (struct font_data_list): New struct.
12677 (font_put_frame_data, font_get_frame_data): Extern them.
12678
12679 * frame.h (struct frame): New member font_data_list.
12680
12681 * font.c (font_update_drivers): Call driver->start_for_frame and
12682 driver->end_for_frame at proper timings.
12683 (font_put_frame_data, font_get_frame_data): New functions.
12684 (Ffont_spec): Add usage in the docstring.
12685
12686 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12687 (Fdelete_frame): Call font_update_drivers.
12688
12689 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12690 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12691 (xftfont_get_xft_draw): New function.
12692 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12693 (xftfont_end_for_frame): New function.
12694 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12695
12696 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12697 Change argument. Cache GCs in the per-frame data.
12698 (struct ftxfont_frame_data): New struct.
12699 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12700 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12701 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12702 (ftxfont_end_for_frame): New function.
12703 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12704
12705 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12706
127072008-02-01 Kenichi Handa <handa@m17n.org>
12708
12709 * xselect.c (Vselection_coding_system)
12710 (Vnext_selection_coding_system): Delete them.
12711 (syms_of_xselect): Don't declare selection-coding-system and
12712 next-selection-coding-system. They are declared in select.el.
12713
127142008-02-01 Jason Rumney <jasonr@gnu.org>
12715
12716 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12717
12718 * w32fns.c: Include imm.h.
12719 (get_composition_string_fn, get_ime_context_fn): New optional
12720 system functions.
12721 (globals_of_w32fns): Load them from imm32.dll.
12722 (ignore_ime_char): New flag.
12723 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12724 WM_IME_ENDCOMPOSITION messages.
12725
12726 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12727 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12728
127292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12730
12731 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12732 (READCHAR_REPORT_MULTIBYTE): New macro.
12733 (readchar): New 2nd arg MULTIBYTE.
12734 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12735 Make symbol's name multibyte according to the multibyteness of the
12736 source.
12737
127382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12739
12740 * xfaces.c (face_for_overlay_string): Call lookup_face with
12741 correct arguments (fix of synching with the trunk).
12742
127432008-02-01 Kenichi Handa <handa@m17n.org>
12744
12745 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12746 (font_prop_validate_non_neg, font_prop_validate_spacing):
12747 Delete argument prop_index.
12748 (font_property_table): Change arguments to validater. Change Callers.
12749 (font_lispy_object): Delete.
12750 (font_at): Use font_find_object instead fo font_lispy_object.
12751
127522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12753
12754 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12755 and file names.
12756
127572008-02-01 Jason Rumney <jasonr@gnu.org>
12758
12759 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12760 (font_matches_spec): Remove debug output.
12761 (add_font_entity_to_list): Avoid using substituted fonts.
12762
127632008-02-01 Jason Rumney <jasonr@gnu.org>
12764
12765 * doc.c (Fsnarf_documentation):
12766 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12767
127682008-02-01 Miles Bader <miles@gnu.org>
12769
12770 * dispextern.h (struct glyph_row): Only define "clip" field if
12771 HAVE_WINDOW_SYSTEM is defined.
12772
127732008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12774
12775 Fix up multi-tty merge.
12776
12777 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12778 and indentation.
12779
12780 * xfaces.c (free_realized_face, clear_face_gcs):
12781 Include font_done_for_face in the input_blocked section, just in case.
12782
12783 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12784 (get_char_face_and_encoding): Undo last change and remove the *other*
12785 duplicate definition (i.e. keep the one that's better scoped and that
12786 includes code for the font-backend).
12787
12788 * terminal.c (create_terminal): Default keyboard_coding to
12789 `no-conversion' and terminal_coding to `undecided'.
12790
12791 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12792
12793 * fontset.c (free_realized_fontsets): Check that the table entry does
12794 contain a fontset before trying to compare it to `base'.
12795
12796 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12797 syms_of_charset, and syms_of_coding earlier because init_window_once
12798 now needs Vcoding_system_hash_table to be setup.
12799
12800 * coding.h (default_buffer_file_coding): Remove.
12801
12802 * coding.c (default_buffer_file_coding): Remove.
12803 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12804 than ->symbol, and use the terminal-local coding system.
12805 (syms_of_coding): Don't setup the coding-systems that are not
12806 terminal-local.
12807 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12808
12809 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12810 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12811
12812 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12813 in chartab.c and were re-added here by mistake.
12814 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12815
12816 * doc.c (Fsnarf_documentation):
12817 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12818 src to etc.
12819
12820 * ChangeLog.10: Add mistakenly removed entry.
12821
128222008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12823
12824 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12825
128262008-02-01 Miles Bader <miles@gnu.org>
12827
12828 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12829 Add extra args to FACE_FOR_CHAR.
12830
128312008-02-01 Kenichi Handa <handa@m17n.org>
12832
12833 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12834 in sequence.
12835
12836 * chartab.c (map_sub_char_table, map_char_table): If the range
12837 contains just one character, call the function with that character
12838 even if the depth is not 3.
12839
128402008-02-01 Jason Rumney <jasonr@gnu.org>
12841
12842 * w32font.c (w32font_text_extents): Calculate metrics for the
12843 whole string.
12844
128452008-02-01 Jason Rumney <jasonr@gnu.org>
12846
12847 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12848
128492008-02-01 Jason Rumney <jasonr@gnu.org>
12850
12851 * w32term.c (x_set_glyph_string_clipping): Use
12852 get_glyph_string_clip_rects.
12853 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12854 Adjust for the change of struct glyph_string.
12855
12856 * w32font.c (w32font_draw): Do clipping here.
12857
128582008-02-01 Kenichi Handa <handa@m17n.org>
12859
12860 * xftfont.c (xftfont_draw): Adjust for the change of struct
12861 glyph_string.
12862
12863 * xterm.c (x_set_glyph_string_clipping): Use
12864 get_glyph_string_clip_rects.
12865 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12866 Adjust for the change of struct glyph_string.
12867
12868 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12869 the resulting clip(s}.
12870 (expose_overlaps): Add arg r. Change callers. Set it to
12871 row->clip temporarily.
12872 (expose_window): Redraw rows overlapping the exposed area.
12873
12874 * dispextern.h (struct glyph_row): New member clip.
12875 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12876 clip_height, new member clip, and num_clips.
12877
128782008-02-01 Kenichi Handa <handa@m17n.org>
12879
12880 * data.c (Fchar_or_string_p): Fix docstring.
12881
128822008-02-01 Kenichi Handa <handa@m17n.org>
12883
12884 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12885 create a temporary XftDraw object.
12886
128872008-02-01 Kenichi Handa <handa@m17n.org>
12888
12889 * font.c (Ffontp): Fix docstring.
12890
12891 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12892 strong evidence of ISO-2022.
12893
128942008-02-01 Kenichi Handa <handa@m17n.org>
12895
12896 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12897 SYNTAX_ENTRY_FOLLOW_PARENT.
12898
128992008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12900
12901 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12902 its type.
12903 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12904 Update to the new type of weak_hash_tables and next_weak.
12905
12906 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12907 a plain C pointer to Lisp_Hash_Table.
12908
12909 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12910 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12911 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12912 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12913 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12914 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12915 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12916 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12917 (GC_EQ): Remove since they've been identical to their non-GC_
12918 alter-egos ever since the markbit was eradicated.
12919
12920 * alloc.c:
12921 * buffer.c:
12922 * buffer.h:
12923 * data.c:
12924 * fileio.c:
12925 * filelock.c:
12926 * fns.c:
12927 * frame.h:
12928 * lisp.h:
12929 * macterm.c:
12930 * print.c:
12931 * process.c:
12932 * w32fns.c:
12933 * w32menu.c:
12934 * w32term.c:
12935 * xfns.c:
12936 * xmenu.c:
12937 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12938
129392008-02-01 Kenichi Handa <handa@m17n.org>
12940
12941 * chartab.c (map_sub_char_table): Make it work for the top-level
12942 char-table. Fix handling of parent char-table.
12943 (map_char_table): Adjust for the above change.
12944
129452008-02-01 Jason Rumney <jasonr@gnu.org>
12946
12947 * w32font.c (Qgdi): Rename from Qw32.
12948
129492008-02-01 Jason Rumney <jasonr@gnu.org>
12950
12951 * w32bdf.c (get_quoted_string): Make function static.
12952
129532008-02-01 Kenichi Handa <handa@m17n.org>
12954
12955 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12956 bigger ascent and descent than those of the font, use them as
12957 font's ascent and descent.
12958
129592008-02-01 Kenichi Handa <handa@m17n.org>
12960
12961 * Makefile.in (${lispsource}international/charprop.el): Move this
12962 target within "#ifdef HAVE_UNIDATA" and "#endif".
12963
129642008-02-01 Kenichi Handa <handa@m17n.org>
12965
12966 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12967 (shortlisp): Add ../lisp/language/tai-viet.el.
12968
129692008-02-01 Ulrich Mueller <ulm@gentoo.org>
12970
12971 * Makefile.in (${lispsource}international/charprop.el): Depend on
12972 temacs${EXEEXT}.
12973
129742008-02-01 Jason Rumney <jasonr@gnu.org>
12975
12976 * w32font.c (w32font_close): Delete the GDI font object.
12977
12978 * w32menu.c: Include character.h.
12979
12980 * w32proc.c: Likewise.
12981
12982 * w32select.c: Likewise.
12983
12984 * makefile.w32-in (w32proc.o): Depend on character.h.
12985
129862008-02-01 Jason Rumney <jasonr@gnu.org>
12987
12988 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12989
12990 * w32menu.c (syms_of_w32menu): Likewise.
12991
12992 * w32proc.c (syms_of_ntproc): Likewise.
12993
12994 * w32select.c (syms_of_w32select): Likewise.
12995
12996 * w32term.c (syms_of_w32term): Likewise.
12997
129982008-02-01 Jason Rumney <jasonr@gnu.org>
12999
13000 * w32font.c (w32font_draw): Delete brush after using it.
13001
130022008-02-01 Jason Rumney <jasonr@gnu.org>
13003
13004 * w32font.c (w32font_open): Don't set font_idx.
13005 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13006 to font settings.
13007 (w32font_draw): Fill background explicitly.
13008
130092008-02-01 Jason Rumney <jasonr@gnu.org>
13010
13011 * w32term.c (w32_initialize): Don't call w32font_initialize.
13012
13013 * w32font.c (w32font_info): Remove subranges.
13014 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13015 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13016 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13017 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13018 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13019 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13020 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13021 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13022 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13023 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13024 New symbols.
13025 (font_callback_data): New struct.
13026 (w32font_list, w32font_match): Use it.
13027 (w32font_open): Don't populate subranges.
13028 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13029 (w32font_encode_char): Always return unicode code-point as-is.
13030 (w32font_text_extents): Supply a transformation matrix to
13031 GetGlyphOutline. Never look up by glyph index. Avoid looping
13032 twice. Use unicode version of GetTexExtentPoint32 instead of
13033 glyph index version.
13034 (set_fonts_frame): Remove.
13035 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13036 set frame parameter. Use backward compatible fake foundries.
13037 Save generic family in extra slot under QCfamily. Make width slot
13038 constant. Save QCspacing value. Save list of scripts instead of
13039 binary subranges.
13040 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13041 (add_font_entity_to_list): Use font_callback_data struct. Filter
13042 unwanted fonts.
13043 (add_one_font_entity_to_list): Use font_callback_data struct.
13044 (w32_registry): Default to iso10646_1.
13045 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13046 string font registries. Don't fill in font name if it is a generic
13047 family name, fill family instead. Use spacing, family and script
13048 extra info to fill pitch, family and charset fields.
13049 (list_all_matching_fonts): Use font_callback_data struct.
13050 (unicode_range_for_char): Remove.
13051 (font_supported_scripts): New function.
13052 (w32font_initialize): Remove.
13053 (syms_of_w32font): Update which symbols are defined.
13054
130552008-02-01 Jason Rumney <jasonr@gnu.org>
13056
13057 * font.c (font_pixel_size): Reverse assq_no_quit args.
13058
13059 * w32term.h (FONT_WIDTH): Report max width, not average.
13060 (FONT_MAX_WIDTH): Remove.
13061 (FONT_AVG_WIDTH): New macro.
13062
13063 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13064 redefinition of FONT_WIDTH.
13065
13066 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13067 (w32_cache_char_metrics): Use FONT_WIDTH.
13068
13069 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13070
130712008-02-01 Jason Rumney <jasonr@gnu.org>
13072
13073 * w32font.c (w32font_open): Make lfHeight negative.
13074
13075 * w32fns.c (x_default_font_parameter): Use new style font name.
13076 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13077
130782008-02-01 Jason Rumney <jasonr@gnu.org>
13079
13080 * w32font.c (QCsubranges): New symbol.
13081 (w32font_open, w32font_has_char): Get subranges from subproperty
13082 of extra.
13083 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13084 (syms_of_w32font): Define :subranges symbol.
13085
13086 * font.c (font_put_extra): Expose externally.
13087
13088 * font.h (font_put_extra): Move declaration from font.c.
13089
13090 * font.c (Ffont_get): Use font driver to determine otf capability.
13091 (adjust_anchor): Check if driver defines anchor_point before using.
13092
13093 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13094 (w32font_draw): Use options.
13095 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13096 Fix detection of truetype fonts.
13097 (registry_to_w32_charset): Handle charsets other than iso8859-1
13098 expressed as lisp symbols.
13099 (w32_registry): Express charset as lisp symbol.
13100 (fill_in_logfont): Reverse pixel and point height logic.
13101 Don't set width here. Set quality to default.
13102
13103 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13104 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13105
13106 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13107 Remove redundant loop and allocation.
13108
13109 * makefile.w32-in (font.o, w32font.o): New objects.
13110 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13111 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13112
13113 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13114 STORE_XCHARB a valid l-value.
13115
13116 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13117 calculations for non-Truetype fonts.
13118 (x_draw_glyph_string): Sync with xterm.c.
13119 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13120 Remove redundant code.
13121 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13122
13123 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13124 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13125
13126 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13127 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13128
13129 * w32font.c: New file for w32 font backend.
13130
131312008-02-01 Kenichi Handa <handa@m17n.org>
13132
13133 * term.c: Don't include "buffer.h" twice.
13134
131352008-02-01 Kenichi Handa <handa@m17n.org>
13136
13137 * character.c (Funibyte_string): New function.
13138 (syms_of_character): Defsubr it.
13139
131402008-02-01 Jason Rumney <jasonr@gnu.org>
13141
13142 * w32term.c [USE_FONT_BACKEND]:
13143 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13144 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13145 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13146 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13147 (x_free_frame_resources): Sync with xterm.c.
13148
131492008-02-01 Andreas Schwab <schwab@suse.de>
13150
13151 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13152 char-table size.
13153
131542008-02-01 Kenichi Handa <handa@m17n.org>
13155
13156 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13157
131582008-02-01 Kenichi Handa <handa@m17n.org>
13159
13160 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13161 font_otf_gpos, add font_drive_otf.
13162
13163 * fontset.c (fontset_find_font): Pay attention to font size
13164 specified for a font.
13165 (reorder_font_vector): Check contents of font_def.
13166
13167 * font.c (struct otf_list): Delete it.
13168 (otf_list): Make it a lisp variable.
13169 (otf_open): Use lispy otf_list.
13170 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13171 (check_otf_features): New function.
13172 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13173 New functions.
13174 (font_drive_otf): New function merging font_otf_gsub and
13175 font_otf_gpos.
13176 (font_open_for_lface): New arg spec. Change argument order.
13177 (font_load_for_face): Adjust for the change of font_open_for_lface.
13178 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13179 Ffont_otf_gpos.
13180 (syms_of_font): Staticpro otf_list. Delete defsubr of
13181 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13182
13183 * xfaces.c (set_font_frame_param): Adjust for the change of
13184 font_open_for_lface.
13185
13186 * font.h (font_open_for_lface): Adjust prototype.
13187 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13188 member otf_drive.
13189 (font_otf_gsub, font_otf_gpos): Delete externs.
13190 (font_drive_otf): Extern it.
13191
131922008-02-01 Kenichi Handa <handa@m17n.org>
13193
13194 * font.c (font_at): If the window W is not on a window system,
13195 return Qnil.
13196
13197 * coding.c (produce_chars, encode_coding): Don't call
13198 insert_from_gap if no characters to produce.
13199
132002008-02-01 Kenichi Handa <handa@m17n.org>
13201
13202 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13203 Fclear_face_cache.
13204
13205 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13206
132072008-02-01 Miles Bader <miles@gnu.org>
13208
13209 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13210 Parse "--disable-font-backend" option.
13211 (standard_args): Add "--disable-font-backend" option.
13212
132132008-02-01 Kenichi Handa <handa@m17n.org>
13214
13215 * fontset.c (fontset_find_font): New function.
13216 (fontset_font): Use fontset_find_font.
13217 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13218 Register the specified font for all Latin characters.
13219 (new_fontset_from_font): Register the specified font for all Latin
13220 characters.
13221 (dump_fontset): For a realized fontset, include the base fontset
13222 name in the returned vector.
13223
132242008-02-01 Kenichi Handa <handa@m17n.org>
13225
13226 * character.h (CHAR_STRING): Cast C to unsigned on calling
13227 char_string.
13228
13229 * character.c (char_string): Type of arg C changed to unsigned.
13230 Signal an error if C is an invalid character code.
13231
13232 * editfns.c (general_insert_function, Fchar_to_string):
13233 Use CHARACTERP, not INTEGERP.
13234
132352008-02-01 Kenichi Handa <handa@m17n.org>
13236
13237 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13238 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13239
13240 * regex.c (analyse_first): Fix for multibyte characters in "case
13241 charset:" and "case categoryspec:".
13242
132432008-02-01 Andreas Schwab <schwab@suse.de>
13244
13245 * Makefile.in (LIBES): Move standard libraries to the end.
13246
132472008-02-01 Kenichi Handa <handa@m17n.org>
13248
13249 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13250 nonzero, don't shrink the buffer nextb.
13251
13252 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13253
13254 * coding.c (coding_alloc_by_making_gap): New arg offset.
13255 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13256 offset.
13257 (decode_coding_iso_2022): Update coding->safe_charsets.
13258 (decode_coding_gap): Temporarily set
13259 current_buffer->text->inhibit_shrinking to 1.
13260
132612008-02-01 Kenichi Handa <handa@m17n.org>
13262
13263 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13264 indexing into elements of s->cmp and s->char2b.
13265
132662008-02-01 Juanma Barranquero <lekktu@gmail.com>
13267
13268 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13269
132702008-02-01 Kenichi Handa <handa@m17n.org>
13271
13272 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13273 target_multibyte instead of multibyte.
13274 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13275 (bcmp_translate): Change the argument name from multibyte to
13276 target_multibyte.
13277
132782008-02-01 Kenichi Handa <handa@m17n.org>
13279
13280 These changes are to compile a regexp into a pattern that can be
13281 used both for multibyte and unibyte targets.
13282
13283 * Makefile.in (search.o): Depend on charset.h.
13284
13285 * character.c (multibyte_char_to_unibyte_safe): New function.
13286
13287 * search.c: Include "charset.h".
13288 (compile_pattern_1): Delete argument multibyte. Don't set
13289 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13290 (compile_pattern): Don't compare cp->buf.target_multibyte.
13291 Compare cp->buf.charset_unibyte.
13292 (compile_pattern): Set cp->buf.target_multibyte.
13293
13294 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13295
13296 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13297
13298 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13299 multibyte. Change callers.
13300 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13301 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13302 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13303 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13304 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13305 (regex_compile): Make the compiled pattern usable both for
13306 multibyte and unibyte targets.
13307 (analyse_first): Make the fastmap usable both for multibyte and
13308 unibyte targets.
13309 (TRANSLATE_VIA_MULTIBYTE): Delete.
13310 (re_match_2_internal): Pay attention to the case that the
13311 multibyteness of bufp and target may be different.
13312
133132008-02-01 Kenichi Handa <handa@m17n.org>
13314
13315 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13316 empty box occupy at least one column width.
13317
133182008-02-01 Miles Bader <miles@gnu.org>
13319
13320 * Makefile.in: Remove redundant HAVE_XFT clause.
13321
133222008-02-01 Kenichi Handa <handa@m17n.org>
13323
13324 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13325
133262008-02-01 Kenichi Handa <handa@m17n.org>
13327
13328 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13329 being nil.
13330
133312008-02-01 Kenichi Handa <handa@m17n.org>
13332
13333 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13334
133352008-02-01 Kenichi Handa <handa@m17n.org>
13336
13337 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13338
133392008-02-01 Kenichi Handa <handa@m17n.org>
13340
13341 * search.c (simple_search): Fix previous change.
13342
133432008-02-01 Kenichi Handa <handa@m17n.org>
13344
13345 * xftfont.c (ftfont_font_format): Extern declaration.
13346
13347 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13348
13349 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13350 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13351
13352 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13353 (ftfont_font_format): Fix previous change.
13354
13355 * font.h (Ffont_xlfd_name): EXFUN it.
13356
13357 * font.c (font_parse_xlfd): Fix the array size of `f'.
13358 (register_font_driver): Use EQ to compare driver->type.
13359
13360 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13361 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13362 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13363
133642008-02-01 Kenichi Handa <handa@m17n.org>
13365
13366 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13367 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13368
133692008-02-01 Kenichi Handa <handa@m17n.org>
13370
13371 * xfont.c (xfont_open): Set font->format.
13372
13373 * xftfont.c (xftfont_open): Set font->format.
13374
13375 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13376 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13377 (ftfont_open): Set font->format.
13378 (ftfont_font_format): New function.
13379
13380 * font.h (struct font): New member format.
13381
13382 * font.c (Qopentype): New variable.
13383 (syms_of_font): Defsym it.
13384 (Fquery_font): Change the format of the last element of the return
13385 value.
13386
133872008-02-01 Kenichi Handa <handa@m17n.org>
13388
13389 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13390 last resort.
13391
133922008-02-01 Kenichi Handa <handa@m17n.org>
13393
13394 * coding.c (detect_coding_charset): Fix detection of multi-byte
13395 charset.
13396
133972008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13398
13399 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13400
134012008-02-01 Kenichi Handa <handa@m17n.org>
13402
13403 * xdisp.c (get_next_display_element): Set it->face_id for the
13404 first component of a composition.
13405 (x_produce_glyphs): Check if the font is changed or not for composition.
13406
134072008-02-01 Kenichi Handa <handa@m17n.org>
13408
13409 * fontset.c (Qlatin): New variable.
13410 (syms_of_fontset): Define it as a lisp symbol.
13411 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13412
134132008-02-01 Kenichi Handa <handa@m17n.org>
13414
13415 * font.c (font_unparse_fcname): Pay attention to the case that
13416 some of font property is a null string.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * term.c: Include "composite.h".
13421 (encode_terminal_code): Output all components of composition.
13422 Check the size of encode_terminal_src.
13423 (produce_glyphs): For composition, call produce_composite_glyph.
13424 (append_composite_glyph, produce_composite_glyph): New functions.
13425
13426 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13427 is not found, get font_info from the current ascii face.
13428
134292008-02-01 Kenichi Handa <handa@m17n.org>
13430
13431 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13432 buffer-file-name to Qnil before calling insert_from_buffer.
13433
13434 * font.c (font_unparse_fcname): Pay attention to the case that
13435 foundry is a null string.
13436
134372008-02-01 Kenichi Handa <handa@m17n.org>
13438
13439 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13440
13441 * font.c (Qunicode_sip): New variable.
13442 (syms_of_font): Declare it as a Lisp symbol.
13443
13444 * font.h (Qunicode_sip): Extern it.
13445
134462008-02-01 Kenichi Handa <handa@m17n.org>
13447
13448 * composite.c (get_composition_id): Pay attention to TAB component.
13449
13450 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13451 TAB. Adjust for the change of s->char2b which always points to
13452 the first element of allocated memory.
13453
13454 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13455
13456 * xdisp.c (handle_composition_prop): Set it->c to the first
13457 non-TAB component.
13458 (fill_composite_glyph_string): Change argument.
13459 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13460 (x_produce_glyphs): Fix handling of left/right padding.
13461
134622008-02-01 Kenichi Handa <handa@m17n.org>
13463
13464 * coding.c (detect_coding_system): Fix for handling off
13465 inhibit_iso_escape_detection. Fix for the case that no coding
13466 system is defined for a specific coding category.
13467
134682008-02-01 Kenichi Handa <handa@m17n.org>
13469
13470 * font.c (font_matching_entity): Delete unused local var.
13471
13472 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13473 opening a font.
13474
13475 * fileio.c (Finsert_file_contents): On recovering a file, assume
13476 Unix-like eol.
13477 (choose_write_coding_system): On auto-saving a file, force
13478 Unix-like eol.
13479
13480 * coding.c (setup_coding_system): Fix setting of
13481 coding->common_flags based on eol_type.
13482 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13483 inherit from it.
13484
134852008-02-01 Kenichi Handa <handa@m17n.org>
13486
13487 * alloc.c (NSTATICS): Increas to 0x600.
13488
134892008-02-01 Kenichi Handa <handa@m17n.org>
13490
13491 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13492 (ftfont_list): Don't check :name property.
13493 (ftfont_match): New function.
13494 (ftfont_pattern_entity): If the pattern doesn't contain
13495 FC_SPACING, don't assume FC_MONO.
13496
13497 * font.h (struct font_driver): New member `match'.
13498 (font_update_drivers): Adjust prototype.
13499
13500 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13501 property of FONT.
13502 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13503 them unconditionally.
13504 (font_matching_entity): New function.
13505 (font_open_by_name): Try font_matching_entity if exact match is
13506 not found.
13507 (font_update_drivers): Delete the arg FONT. Return a list of
13508 actually used backends. Don't free faces, font caches here.
13509 Don't store data in frame parameters. Don't call x_set_font.
13510 (Ffont_spec): Store :name property as is.
13511 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13512 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13513 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13514 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13515 Call font->driver->otf_gsub instead of font_otf_gsub.
13516
13517 * frame.c (x_set_font_backend): Do more works that were done in
13518 font_update_drivers before.
13519
13520 * xfont.c (xfont_match): New function.
13521 (xfont_driver): Set xfont_driver.match to xfont_match.
13522 (xfont_draw): Set font in GC if necessary.
13523
13524 * ftxfont.c (ftxfont_match): New function.
13525 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13526
13527 * xftfont.c (xftfont_match): New function.
13528 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13529
135302008-02-01 Kenichi Handa <handa@m17n.org>
13531
13532 * font.h (struct font): New member scalable.
13533 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13534 (font_otf_gsub): Adjust prototype.
13535
13536 * font.c (font_otf_capability): Fix handling of the default langsys.
13537 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13538 Check the contents of SPEC.
13539 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13540 (check_gstring): New function.
13541 (REPLACEMENT_CHARACTER): New macro.
13542 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13543 glyph codes of GSTRING.
13544 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13545 (font_prepare_composition): Set cmp->glyph_len.
13546 (font_open_entity): Set font->scalable.
13547 (Ffont_get): Handle :otf property.
13548 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13549 functions.
13550 (Fquery_font): Use font->font.full_name.
13551 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13552 Sfont_otf_alternates.
13553
13554 * ftfont.c (ftfont_open): Set font->font.full_name and
13555 font->font.name properly. Fix calculation of font->font.height
13556 and font->min_width.
13557
13558 * ftxfont.c (ftxfont_create_gcs): New function.
13559 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13560 (ftxfont_draw_backgrond): Fix filling region.
13561 (ftxfont_default_fid): New function.
13562 (ftxfont_open): Set xfont->fid to the return value of
13563 ftxfont_default_fid.
13564 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13565 (ftxfont_done_face): Free only GCs that are created by
13566 ftxfont_create_gcs.
13567 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13568
13569 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13570 Clip to src->width, etc (not src->clip_XXX).
13571
13572 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13573 FontBackend frame parameter.
13574
135752008-02-01 Kenichi Handa <handa@m17n.org>
13576
13577 * font.h (struct font_driver_list): New member `on'.
13578 (Fclear_font_cache): EXFUN it.
13579 (font_update_drivers): Extern it.
13580
13581 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13582 (font_list_entities): Check driver_list->on.
13583 (register_font_driver): Initalize `on' member to 0.
13584 (font_update_drivers): New function.
13585 (Fclear_font_cache): Check driver_list->on.
13586
13587 * frame.h (Qfont_backend): Extern it.
13588 (x_set_font_backend): Extern it.
13589
13590 * frame.c (Qfont_backend): New variable.
13591 (frame_parms): New element for font-backend.
13592 (x_set_font_backend): New function.
13593
13594 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13595 FontBackend frame parameter.
13596 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13597 x_set_font_backend.
13598
13599 * xfont.c (xfont_list): Don't try listing by :name property if the
13600 name is not for XLFD.
13601
136022008-02-01 Kenichi Handa <handa@m17n.org>
13603
13604 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13605 (LGLYPH_SET_TO): New macros.
13606 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13607 element of G is vector or not.
13608 (font_at): Extern it.
13609
13610 * font.c: Include window.h.
13611 (font_lispy_object): New function.
13612 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13613 end of valid glyph.
13614 (font_close_object): Fix getting (struct font *).
13615 (font_at): New function.
13616 (Ffont_get): If FONT is a font-object, get entity from it.
13617 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13618 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13619 range check.
13620 (Ffont_at): New function.
13621 (syms_of_font): Defsubr Sfont_at.
13622
13623 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13624 before the entry for Qcomposition.
13625 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13626 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13627 the font in gstring.
13628 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13629 LGLYPH_FORM (g) to detect the end of valid glyph.
13630 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13631 we are composing with gstring.
13632
13633 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13634 Check if adjustment is vector or not.
13635
13636 * Makefile.in (font.o): Make it depends on window.h.
13637
136382008-02-01 Kenichi Handa <handa@m17n.org>
13639
13640 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13641 adjustment is vector or not.
13642
136432008-02-01 Miles Bader <miles@gnu.org>
13644
13645 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13646
136472008-02-01 Kenichi Handa <handa@m17n.org>
13648
13649 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13650 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13651 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13652
13653 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13654 (DEVICE_DELTA): Fix typo.
13655 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13656 LGLYPH format.
13657
13658 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13659 the change of LGLYPH format.
13660
136612008-02-01 Kenichi Handa <handa@m17n.org>
13662
13663 * ftfont.c (ftfont_list): Fix typo.
13664 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13665
136662008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13667
13668 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13669
13670 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13671 xftface_info is non-NULL.
13672
136732008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13674
13675 * ftfont.c (ftfont_list): Move misplaced #endif.
13676
136772008-02-01 Kenichi Handa <handa@m17n.org>
13678
13679 * ftfont.c (ftfont_list): Pay attention to the case that
13680 FC_CAPABILITY is not defined.
13681
136822008-02-01 Kenichi Handa <handa@m17n.org>
13683
13684 * xftfont.c (xftfont_open): Set charset related members to -1.
13685
13686 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13687 QCname.
13688 (ftfont_open): Set charset related members to -1.
13689
13690 * fontset.c (Votf_script_alist): New variable.
13691 (syms_of_fontset): Initialize it.
13692 (fontset_font): Delete unused variable.
13693
13694 * fontset.h (Votf_script_alist): Extern it.
13695
13696 * font.c (font_find_for_lface): Optimize code.
13697
13698 * font.h (font_close_object, font_merge_old_spec): Extern them.
13699
137002008-02-01 Kenichi Handa <handa@m17n.org>
13701
13702 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13703 (syms_of_font): Initialize them.
13704 (font_pixel_size): Allow float value in dpi.
13705 (font_prop_validate_type): Delete.
13706 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13707 Change caller.
13708 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13709 (font_prop_validate_extra): Delete.
13710 (font_prop_validate_spacing): New function.
13711 (font_property_table): Add elements for all known properties.
13712 (get_font_prop_index): Rename from check_font_prop_name. New
13713 argument FROM. Change caller.
13714 (font_prop_validate): Validate all known properties.
13715 (font_put_extra): Delete argument force. Change caller.
13716 (font_expand_wildcards): Make it static. Fix the way of shrinking
13717 the possible range.
13718 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13719 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13720 Change caller.
13721 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13722 (font_parse_fcname): Delete argument merge. Fix parsing of point
13723 size. Don't validate properties values here. Change caller.
13724 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13725 (font_open_by_name): Delete unused variable.
13726 (Ffont_spec): Likewise. Validate property values.
13727 (Ffont_match_p): New function.
13728
13729 * font.h (QCscalable): Extern it.
13730 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13731
13732 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13733
13734 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13735 (xfont_list_pattern): New function.
13736 (xfont_list): Use xfont_list_pattern.
13737
137382008-02-01 Kenichi Handa <handa@m17n.org>
13739
13740 * font.h (Flist_fonts): EXFUN it.
13741
137422008-02-01 Jason Rumney <jasonr@gnu.org>
13743
13744 * w32term.c (w32_initialize): Add back smoothing_type and
13745 smoothing_enabled definitions.
13746
137472008-02-01 Kenichi Handa <handa@m17n.org>
13748
13749 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13750 s->face->font on determining underline position.
13751
137522008-02-01 Kenichi Handa <handa@m17n.org>
13753
13754 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13755 (font_has_char): Accept font-object too.
13756 (font_find_for_lface): Try at first with a size specified in face.
13757
137582008-02-01 Kenichi Handa <handa@m17n.org>
13759
13760 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13761 font_open_by_name.
13762
137632008-02-01 Kenichi Handa <handa@m17n.org>
13764
13765 * font.h (QCspacing, QCdpi): Extern them.
13766 (enum font_spacing): New enum.
13767 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13768
13769 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13770 (QCspacing, QCdpi): New variables.
13771 (syms_of_font): Initialize them.
13772 (font_pixel_size): New function.
13773 (font_put_extra): New function.
13774 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13775 in FONT_EXTRA.
13776 (font_parse_fcname): Handle enumerated values (e.g. bold).
13777 Fix handling font size. Add QCname property that contains only
13778 unknown properties.
13779 (font_score): Change argument. Change caller. Pay attention to
13780 FONT_PIXEL_SIZE_QUANTUM.
13781 (font_sort_entites, font_list_entities, font_find_for_lface)
13782 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13783 (Ffont_spec): Add QCname property that contains only unknown properties.
13784
13785 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13786 include weight in listing pattern, instead check weight of each
13787 listed font. Don't include scalable in pattern. Pay attention to
13788 FONT_PIXEL_SIZE_QUANTUM.
13789
137902008-02-01 Kenichi Handa <handa@m17n.org>
13791
13792 * font.c (font_parse_fcname): Fix parsing of point-size.
13793 (font_unparse_fcname): Produce symbolic names for style properties.
13794 (font_list_entities): Handle float size correctly.
13795 (font_open_by_name): Prefer `normal' property values if the name
13796 doesn't specify them.
13797
13798 * fontset.c (Finternal_char_font): Use font_get_name, not
13799 Ffont_xlfd_name.
13800
13801 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13802 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13803 pattern. Don't force scalable.
13804
13805 * xftfont.c (xftfont_open): For generating a name, start from
13806 96-byte buffer.
13807
138082008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13809
13810 * frame.h (x_new_fontset2): Fix prototype.
13811
138122008-02-01 Kenichi Handa <handa@m17n.org>
13813
13814 * font.h (struct font_driver): Delete member parse_name.
13815 (font_match_p, font_get_spec, font_parse_fcname)
13816 (font_unparse_fcname): Extern them.
13817 (font_get_name): Adjust prototype.
13818
13819 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13820 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13821 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13822 unnecessary checks for weight, slant, and swidth.
13823 (font_parse_fcname): New function.
13824 (font_unparse_fcname): New function.
13825 (font_parse_name): New function.
13826 (font_match_p): New function.
13827 (font_get_name): Change return value to Lisp string.
13828 (font_get_spec): New function.
13829 (Qunspecified, Qignore_defface): Don't extern them.
13830 (font_find_for_lface): Assume that LFACE is fully specified.
13831 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13832 object, use it for FACE.
13833 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13834 driver->parse_name.
13835 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13836
13837 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13838 prototype.
13839
13840 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13841 argument F. Don't call Fnew_fontset. Instead, directly call
13842 make_fontset.
13843
13844 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13845
13846 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13847 of x_new_fontset2.
13848
13849 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13850 (Qsans__serif): New variables.
13851 (ftfont_generic_family_list): New variable.
13852 (syms_of_ftfont): Initialize the above variables.
13853 (ftfont_pattern_entity): Delete argument NAME.
13854 (ftfont_list_generic_family): New function.
13855 (ftfont_parse_name): Delete this function.
13856 (ftfont_list): Try generic family only when FcFontList found no font.
13857 (ftfont_list_family): Fix args to FcObjectSetBuild.
13858
13859 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13860 object in attrs[LFACE_FONT_INDEX].
13861 (set_lface_from_font_name): Cancel all changes for font-backend.
13862 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13863 function.
13864 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13865 font object in QCfont attribute.
13866 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13867 (realize_default_face) [USE_FONT_BACKEND]: Call
13868 set_lface_from_font_and_fontset.
13869
13870 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13871 "fixed", and signal error here if no suitable font was found.
13872
13873 * xfont.c (xfont_parse_name): Delete this function.
13874
13875 * xftfont.c (xftfont_open): Change coding style of error
13876 handling. Generate fontconfig's fontname pattern.
13877
13878 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13879 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13880
13881 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13882 Both args FONTSET and FONT_OBJECT must be existing ones.
13883
138842008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13885
13886 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13887
138882008-02-01 Kenichi Handa <handa@m17n.org>
13889
13890 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13891
13892 * font.h (struct font): Fix typo.
13893
13894 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13895 XLFD_XXX_INDEX.
13896 (enum xlfd_field_mask): New enum.
13897 (intern_font_field): Changed argument. Change caller. If digits
13898 are followed by non-digits, return a symbol.
13899 (font_expand_wildcards): New function.
13900 (font_parse_xlfd): Fix wildcard handling.
13901 (Ffont_spec): If :name is specified, reflect the info in the other
13902 properties.
13903
13904 * ftfont.c (ftfont_pattern_entity): Fix typo.
13905 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13906 locale.
13907
139082008-02-01 Kenichi Handa <handa@m17n.org>
13909
13910 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13911
13912 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13913 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13914 registry doesn't specify encoding part.
13915 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13916 (font_open_by_name): At first try parsing the name.
13917 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13918 as Lisp symbols.
13919
13920 * fontset.c (reorder_font_vector): Pay attention to the case that
13921 the 3rd element of font_def is nil.
13922 (fontset_font): For the default fontset, append one more fontset
13923 elements for a script-based font specification. Don't add script
13924 attribute on finding a font.
13925 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13926 font name.
13927 (fontset_ascii_font): If a font can't be opened, return nil.
13928
13929 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13930 (ftfont_pattern_entity): New function.
13931 (ftfont_get_cache): Assume that freetype_font_cache is already
13932 initialized.
13933 (ftfont_list): Handle the case that a file is specified in font
13934 name. Use ftfont_pattern_entity to generate entities.
13935 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13936 (syms_of_ftfont): Initialize freetype_font_cache.
13937
13938 * xftfont.c (xftfont_open): Make the font name fontconfig's
13939 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13940 (xftfont_close): Free font->font.name if not NULL.
13941
13942 * xfont.c (xfont_list): If script is specified for a font, return
13943 null_vector.
13944 (xfont_list_family): Declare argument type.
13945
13946 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13947 name, set LFACE_FONT (lface) to nil.
13948
13949 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13950 return Qnil.
13951
139522008-02-01 Kenichi Handa <handa@m17n.org>
13953
13954 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13955 (standard_args): Add "-enable-font-backend".
13956
139572008-02-01 Kenichi Handa <handa@m17n.org>
13958
13959 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13960 (struct xftdraw_list, xftdraw_list): Delete them.
13961 (register_xftdraw, check_xftdraw): Delete them.
13962 (xftfont_prepare_face): Don't call register_xftdraw.
13963 (xftfont_done_face): Don't call check_xftdraw.
13964 (xftfont_draw): Get background color only when with_background is
13965 nonzero.
13966
13967 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13968
139692008-02-01 Kenichi Handa <handa@m17n.org>
13970
13971 These changes are for the new font handling codes.
13972
13973 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13974 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13975 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13976 (FONTSRC, FONTOBJ): New variables.
13977 (obj): Add $(FONTOBJ).
13978 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13979 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13980 @LIBOTF_LIBS@.
13981 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13982 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13983
13984 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13985
13986 * character.h (Vscript_representative_chars): Extern it.
13987
13988 * character.c (Vscript_representative_chars): New variable.
13989 (syms_of_character): Declare it as a Lisp variable.
13990
13991 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13992 enable_font_backend is nonzero, accept the composition method
13993 COMPOSITION_WITH_GLYPH_STRING.
13994
13995 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13996 enumeration COMPOSITION_WITH_GLYPH_STRING.
13997
13998 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13999 members clip_x, clip_y, clip_width, and clip_height.
14000 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14001
14002 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14003 --enable-font-backend. Call syms_of_font.
14004
14005 * fns.c (assoc_no_quit): New function.
14006
14007 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14008 (face_for_font, new_fontset_from_font)
14009 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14010
14011 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14012 (fontset_font, fontset_ascii, face_for_char)
14013 (make_fontset_for_ascii_face, Ffont_info)
14014 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14015 is nonzero, use font-backend mechanism.
14016 (find_font_encoding): Make it non-static.
14017 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14018 New functions.
14019
14020 * frame.h (struct frame): New members resx and resy.
14021 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14022 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14023
14024 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14025 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14026
14027 * lisp.h (assoc_no_quit): Extern it.
14028
14029 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14030 Through out the file, use FONT_INFO_FROM_FACE instead of
14031 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14032 rif->per_char_metric.
14033 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14034 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14035 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14036 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14037 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14038 nonzero, use font-backend mechanism.
14039 (get_per_char_metric): New function.
14040
14041 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14042 (set_lface_from_font_name)
14043 (set_font_frame_param, free_realized_face)
14044 (prepare_face_for_display, clear_face_gcs)
14045 (Finternal_set_font_selection_order, realize_x_face)
14046 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14047 font-backend mechanism.
14048 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14049 (load_face_font) [USE_FONT_BACKEND]: Abort.
14050 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14051 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14052
14053 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14054 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14055 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14056 nonzero, register all available font drivers. Call
14057 x_default_font_parameter for deciding a font.
14058 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14059
14060 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14061 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14062 (x_set_glyph_string_clipping_exactly)
14063 (x_compute_glyph_string_overhangs)
14064 (x_draw_glyph_string_foreground)
14065 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14066 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14067 enable_font_backend is nonzero, use font-backend mechanism.
14068 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14073 system_eol_type.
14074 (syms_of_coding): Initialize system_eol_type.
14075
14076 * process.c (Fset_process_coding_system): Inherit system's eol
14077 format if necessary.
14078
140792008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14080
14081 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14082
140832008-02-01 Kenichi Handa <handa@m17n.org>
14084
14085 * coding.c (decode_eol): Pay attention to buffer relocation in
14086 del_range_2.
14087 (decode_coding): Call decode_eol before restoring undo_list.
14088
140892008-02-01 Kenichi Handa <handa@m17n.org>
14090
14091 * charset.c (Fdefine_charset_internal): Fix setting of
14092 emacs_mule_bytes.
14093
140942008-02-01 Kenichi Handa <handa@m17n.org>
14095
14096 * keyboard.c (read_char): Check if C is a character or not before
14097 looking up Vkeyboard_translate_table.
14098
140992008-02-01 Kenichi Handa <handa@m17n.org>
14100
14101 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14102 condition to terminate the loop.
14103
141042008-02-01 Kenichi Handa <handa@m17n.org>
14105
14106 * coding.c (produce_composition): Compare charbuf[i] instead of
14107 args[i] against 0.
14108 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14113 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14114 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14115 detect_coding.
14116 (emacs_mule_char): Handle old style (Emacs 20) component character
14117 of a composition.
14118 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14119 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14120 composition rule.
14121 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14122
141232008-02-01 Kenichi Handa <handa@m17n.org>
14124
14125 * coding.c (encode_coding_ccl): Allocate destination dynamically
14126 when necessary.
14127
141282008-02-01 Kenichi Handa <handa@m17n.org>
14129
14130 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14131 the loop. When quitted, show a proper error message.
14132
141332008-02-01 Kenichi Handa <handa@m17n.org>
14134
14135 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14136 src->clip_head and src->clip_tail temporarily instead of src->hl.
14137
14138 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14139 character sequence.
14140 (Fccl_execute_on_string): Use ASET, not XSET.
14141
141422008-02-01 Kenichi Handa <handa@m17n.org>
14143
14144 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14145
141462008-02-01 Kenichi Handa <handa@m17n.org>
14147
14148 * coding.c (decode_coding): Fix the condition of terminating the
14149 decoding loop.
14150
141512008-02-01 Kenichi Handa <handa@m17n.org>
14152
14153 * data.c (Faset): On setting a character bigger than 255 in a
14154 unibyte string, signal an error instead of make the string multibyte.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14159 made by a mapping table.
14160
141612008-02-01 Kenichi Handa <handa@m17n.org>
14162
14163 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14164 not.
14165 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14166 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14167
14168 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14169 s->face is NULL or not.
14170
141712008-02-01 Kenichi Handa <handa@m17n.org>
14172
14173 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14174 (x_draw_glyph_string): Fix drawing of right_overhang and
14175 left_overhang around/on cursor.
14176
14177 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14178
141792008-02-01 Kenichi Handa <handa@m17n.org>
14180
14181 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14182
141832008-02-01 Kenichi Handa <handa@m17n.org>
14184
14185 * coding.c (Fdefine_coding_system_internal)
14186 (Fdefine_coding_system_alias): Avoid a duplicated element in
14187 Vcoding_system_alist.
14188
141892008-02-01 Kenichi Handa <handa@m17n.org>
14190
14191 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14192
14193 * coding.c (Qcoding_system_define_form): New variable.
14194 (syms_of_coding): Intern and staticpro it.
14195 (Fcoding_system_p): Check Qcoding_system_define_form.
14196 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14197
14198 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14199 Fcoding_system_p.
14200 (CHECK_CODING_SYSTEM): If ID is not available, call
14201 Fcheck_coding_system.
14202 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14203 Try also Fcheck_coding_system.
14204
142052008-02-01 Kenichi Handa <handa@m17n.org>
14206
14207 * coding.c (code_conversion_restore): GCPRO arg.
14208
142092008-02-01 Kenichi Handa <handa@m17n.org>
14210
14211 * character.c (lisp_string_width): Check multibyteness of STRING.
14212
142132008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14214
14215 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14216 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14217 (decode_mac_font_name): Use decode_coding_c_string instead of
14218 decode_coding.
14219 (x_load_font): Initialize fontp->fontset to -1. Set
14220 fontp->encoding_type.
14221
142222008-02-01 Kenichi Handa <handa@m17n.org>
14223
14224 * search.c (search_buffer): Give up BM search on case-fold-search
14225 if one of a target character has a case-equivalence of different
14226 byte length even if that target charcter is an ASCII.
14227 (simple_search): Fix calculation of byte length of matched text.
14228 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14229
142302008-02-01 Kenichi Handa <handa@m17n.org>
14231
14232 * coding.c (decode_coding): Fix handling of invalid bytes.
14233
142342008-02-01 Kenichi Handa <handa@m17n.org>
14235
14236 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14237 Unicode characters.
14238
142392008-02-01 Kenichi Handa <handa@m17n.org>
14240
14241 * coding.c (encode_coding_object): If a pre-write-conversion
14242 function makes a new buffer, kill it.
14243
142442008-02-01 Kenichi Handa <handa@m17n.org>
14245
14246 * coding.c (QCascii_compatible_p): New variable.
14247 (syms_of_coding): Initialize it.
14248 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14249 calling string_char.
14250 (record_conversion_result): Add `default:' case.
14251 (coding_charset_list): Delete unused variable `coding_type'.
14252 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14253 property in the plist of the coding system.
14254 (Fcoding_system_put): Check QCascii_compatible_p.
14255
142562008-02-01 Miles Bader <miles@gnu.org>
14257
14258 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14259 removed calculation of frame `f', as it's now used.
14260
142612008-02-01 Kenichi Handa <handa@m17n.org>
14262
14263 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14264 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14265 (UNIDATA): New variable.
14266 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14267 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14268 $(RUN_TEMACS) unconditionally.
14269
142702008-02-01 Kenichi Handa <handa@m17n.org>
14271
14272 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14273 (admindir): New variable.
14274 ($(lispsource)international/charprop.el): New target.
14275
142762008-02-01 Miles Bader <miles@gnu.org>
14277
14278 * character.c (chars-in-region): Remove obsolete function.
14279 (syms_of_character): Remove its initialization.
14280
142812008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14282
14283 * w32select.c (validate_coding_system)
14284 (setup_windows_coding_system): New functions.
14285 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14286 setup_windows_coding_system.
14287 (setup_config, Fw32_get_clipboard_data): Use
14288 validate_coding_system.
14289 (Fx_selection_exists): Move call to setup_config to a place
14290 where signals are allowed.
14291
14292 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14293 (Fcheck_coding_system): Add declarations.
14294
142952008-02-01 Kenichi Handa <handa@m17n.org>
14296
14297 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14298
142992008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14300
14301 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14302 string as the second argument for x_new_fontset.
14303
143042008-02-01 Kenichi Handa <handa@m17n.org>
14305
14306 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14307 (encode_coding_object): Use safe_call instead of call2.
14308
143092008-02-01 Kenichi Handa <handa@m17n.org>
14310
14311 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14312
14313 * Makefile.in (lisp): Include charprop.el.
14314
143152008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14316
14317 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14318 Not sure if it's unnecessary.
14319
143202008-02-01 Steven Tamm <steventamm@mac.com>
14321
14322 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14323 some possibly unnecessary fontset checking code that crashed
14324 when creating a new frame.
14325
143262008-02-01 Kenichi Handa <handa@m17n.org>
14327
14328 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14329 lookup_face.
14330
14331 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14332
14333 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14334
143352008-02-01 Kenichi Handa <handa@m17n.org>
14336
14337 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14338 (coding_charset_list): New function.
14339
14340 * coding.h (coding_charset_list): Extern it.
14341
143422008-02-01 Kenichi Handa <handa@m17n.org>
14343
14344 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14345 concatenation of family and registry.
14346
143472008-02-01 Kenichi Handa <handa@m17n.org>
14348
14349 * character.h (BYTE8_STRING): Fix typo.
14350
14351 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14352 string to multibyte (sync to HEAD).
14353
14354 * casefiddle.c (casify_region): Handle changes in byte-length
14355 using replace_range_2 (sync to HEAD).
14356
143572008-02-01 Andreas Schwab <schwab@suse.de>
14358
14359 * chartab.c (map_char_table): GCPRO table and arg.
14360
143612008-02-01 Kenichi Handa <handa@m17n.org>
14362
14363 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14364 already at limit.
14365
143662008-02-01 Kenichi Handa <handa@m17n.org>
14367
14368 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14369 instead of fast_c_string_match_ignore_case.
14370 (find_font_encoding): Change argument to Lisp_Object. Use
14371 fast_string_match_ignore_case instead of
14372 fast_c_string_match_ignore_case. Change caller.
14373
143742008-02-01 Kenichi Handa <handa@m17n.org>
14375
14376 * xdisp.c (get_next_display_element): In unibyte case, decide to
14377 display in octal form by checking a character by
14378 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14379
14380 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14381
14382 * character.c (unibyte_has_multibyte_table): New variable.
14383
14384 * character.h (unibyte_has_multibyte_table): Extern it.
14385 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14386
143872008-02-01 Kenichi Handa <handa@m17n.org>
14388
14389 * coding.c (encode_coding_iso_2022): Fix handling of charset
14390 annotation.
14391
143922008-02-01 Kenichi Handa <handa@m17n.org>
14393
14394 * coding.c (setup_coding_system): If coding_system is nil, use
14395 Qundecided.
14396 (Fterminal_coding_system): Return nil if terminal coding system is
14397 `undecided'.
14398 (syms_of_coding): Define coding-system `undecided' here. Setup
14399 terminal_coding as `undecided'.
14400
144012008-02-01 Kenichi Handa <handa@m17n.org>
14402
14403 * xdisp.c (message_dolog, set_message_1): Call
14404 unibyte_char_to_multibyte with arg type int.
14405
14406 * lread.c (read1): Fix reading of a char-table.
14407
14408 * print.c (print_object): Include sub char-table in circularities
14409 detection.
14410
144112008-02-01 Kenichi Handa <handa@m17n.org>
14412
14413 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14414 Append the found sequences in car of ARGS instead of prepending.
14415
144162008-02-01 Kenichi Handa <handa@m17n.org>
14417
14418 * fileio.c (report_file_error): Make a unibyte string from
14419 strerror (errorno).
14420 (Fsubstitute_in_file_name): Fix the arg to
14421 unibyte_char_to_multibyte. It is evaluated twice.
14422
144232008-02-01 Kenichi Handa <handa@m17n.org>
14424
14425 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14426
144272008-02-01 Kenichi Handa <handa@m17n.org>
14428
14429 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14430 BOM is not found.
14431 (detect_coding, detect_coding_system): Optimization for ISO-2022
14432 when no 8-bit data is found.
14433
144342008-02-01 Jason Rumney <jasonr@gnu.org>
14435
14436 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14437
144382008-02-01 Kenichi Handa <handa@m17n.org>
14439
14440 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14441 CHARS.
14442
144432008-02-01 Steven Tamm <steventamm@mac.com>
14444
14445 * macterm.c (mac_encode_char): Add charset argument and update
14446 to use encoding_type.
14447 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14448 switch to pure fontset.
14449 (decode_mac_font_name): Temporarily remove decoding.
14450 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14451 (x_load_font): Temporarily remove encoding.
14452
144532008-02-01 Kenichi Handa <handa@m17n.org>
14454
14455 * xfaces.c (Fface_font): If frame is not on a window system,
14456 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14457 refer to face->font.
14458 (split_font_name_into_vector, build_font_name_from_vector)
14459 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14460 when HAVE_WINDOW_SYSTEM is defined.
14461
144622008-02-01 Kenichi Handa <handa@m17n.org>
14463
14464 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14465 (x_produce_glyphs): Fix setting of members of cmp in case
14466 cmp->glyph_len is zero.
14467
14468 * fontset.c (Fset_fontset_font): Fix docstring.
14469 (Ffontset_info): Make it backward compatible. New arg ALL.
14470
144712008-02-01 Kim F. Storm <storm@cua.dk>
14472
14473 * process.c (read_process_output): Grow decoding_buf when needed;
14474 this could cause a crash in allocate_string and compact_small_strings.
14475
144762008-02-01 Kenichi Handa <handa@m17n.org>
14477
14478 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14479
144802008-02-01 Kenichi Handa <handa@m17n.org>
14481
14482 * coding.c (setup_coding_system): Set coding->common_flags
14483 correctly for raw-text.
14484 (consume_chars): On encoding unibyte text by raw-text, don't check
14485 multibyte form.
14486 (encode_coding): On encoding by raw-text, never use translation tables.
14487
14488 * fileio.c (e_write): Short cut for the case of no encoding.
14489
144902008-02-01 Kenichi Handa <handa@m17n.org>
14491
14492 * coding.c (detect_coding, detect_coding_system): Delete unused
14493 variables.
14494
144952008-02-01 Kenichi Handa <handa@m17n.org>
14496
14497 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14498 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14499
145002008-02-01 Kenichi Handa <handa@m17n.org>
14501
14502 * coding.c (Ffind_coding_systems_region_internal): Include
14503 raw-text and no-conversion in the result.
14504
145052008-02-01 Kenichi Handa <handa@m17n.org>
14506
14507 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14508 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14509 FONT_DEF.
14510 (font_def_arg, add_arg, from_arg, to_arg): New args.
14511 (set_fontset_font): Change argument.
14512 (Fset_fontset_font): Fix for the case that TARGET is a script
14513 name and charset name.
14514 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14515
145162008-02-01 Kenichi Handa <handa@m17n.org>
14517
14518 * fontset.c (fontset_font): Rename from fontset_face. Change return
14519 value.
14520 (face_suitable_for_char_p, face_for_char): Adjust for the change
14521 of fontset_font.
14522 (make_fontset_for_ascii_face): Fix setting of the fontset element
14523 for ASCII.
14524 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14525 to get a font name.
14526 (Ffontset_info): Adjust for the change of fontset_font.
14527
14528 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14529
14530 * character.h (LEADING_CODE_LATIN_1_MIN)
14531 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14532
145332008-02-01 Kenichi Handa <handa@m17n.org>
14534
14535 * editfns.c (check_translation): New function.
14536 (Ftranslate_region_internal): Handle M:N mapping.
14537
145382008-02-01 Kenichi Handa <handa@m17n.org>
14539
14540 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14541
145422008-02-01 Kenichi Handa <handa@m17n.org>
14543
14544 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14545 goto invalid_code.
14546 (decode_coding_iso_2022): Fix handling of invalid designation.
14547
14548 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14549 after calling code_conversion_save.
14550
145512008-02-01 Kenichi Handa <handa@m17n.org>
14552
14553 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14554
14555 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14556
14557 * fontset.c: Include "intervals.h".
14558 (fontset_face): Fix comparing of Lisp_Objects.
14559 (free_face_fontset, new_fontset_from_font_name): Fix
14560 Lisp_Object/int mixup.
14561
14562 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14563
14564 * coding.c: Add many prototypes for static functions.
14565 (get_translation_table): Allow max_lookup to be NULL.
14566 (decode_coding, Ffind_coding_systems_region_internal)
14567 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14568 get_translation_table with max_lookup NULL.
14569
145702008-02-01 Kenichi Handa <handa@m17n.org>
14571
14572 * coding.c (get_translation_table): Declare it as Lisp_Object.
14573 (LOOKUP_TRANSLATION_TABLE): New macro.
14574 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14575 instead of CHAR_TABLE_REF.
14576
145772008-02-01 Kenichi Handa <handa@m17n.org>
14578
14579 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14580 annotation data format.
14581 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14582 Change arguments FROM and TO to single argument NCHARS. Change caller.
14583 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14584 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14585 (decode_coding_ccl, decode_coding_charset): Pay attention to
14586 coding->charbuf_used.
14587 (get_translation): New function.
14588 (produce_chars): New arguments translation_table and last_block.
14589 Translate characters here. Return number of carryover chars.
14590 Change caller.
14591 (produce_composition): New argument pos. Change caller.
14592 Adjust for the change of annotation data format.
14593 (produce_charset, produce_annotation): Likewise.
14594 (decode_coding, encode_coding): Don't call translate_chars.
14595 (consume_chars): New arg translation_table. Change caller.
14596 (translate_chars): Delete.
14597 (syms_of_coding): Make translation-table's number of extra slots 2.
14598
145992008-02-01 Kenichi Handa <handa@m17n.org>
14600
14601 * search.c (simple_search): Fix setting this_pos_byte in backward
14602 search.
14603
14604 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14605 byte sequence.
14606 (detect_coding_ccl): Fix setting of the variable valids.
14607
146082008-02-01 Kenichi Handa <handa@m17n.org>
14609
14610 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14611
14612 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14613
14614 * editfns.c (Ftranslate_region_internal): Rename from
14615 Ftranslate_region. Accept a char-table in TABLE.
14616 (syms_of_editfns): Defsubr Stranslate_region_internal.
14617
14618 * xfaces.c (set_lface_from_font_name): If a font is specified for
14619 a frame, generate a fontset from the font.
14620 (build_scalable_font_name): If the scalable font is requested for
14621 a specific size, don't change that size.
14622 (try_font_list): Try a scalable font also in the case that a
14623 pattern string is specified.
14624
146252008-02-01 Kenichi Handa <handa@m17n.org>
14626
14627 * xfaces.c (Fface_font): New optional arg CHARACTER.
14628
146292008-02-01 Kenichi Handa <handa@m17n.org>
14630
14631 * charset.h (CHARSET_OFFSET): New macro.
14632
146332008-02-01 Kenichi Handa <handa@m17n.org>
14634
14635 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14636
14637 * fontset.c (fontset_face): Handle the case that repertory is a
14638 char-table.
14639 (find_font_encoding): Return nil for unknown encoding.
14640 (Fset_fontset_font): Ignore a font of unknown encoding.
14641
146422008-02-01 Kenichi Handa <handa@m17n.org>
14643
14644 * keymap.c (describe_vector): Handle default value of a char table.
14645
14646 * fontset.c (fontset_face): Handle fallback fonts correctly.
14647 (Ffontset_info): Return infomation about fallback fonts.
14648
146492008-02-01 Kenichi Handa <handa@m17n.org>
14650
14651 * fontset.c (FONTSET_DEFAULT): New macro.
14652 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14653 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14654 the case that it is nil.
14655 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14656 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14657
14658 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14659 subset or superset.
14660
146612008-02-01 Kenichi Handa <handa@m17n.org>
14662
14663 * emacs.c (main): Call init_charset after syms_of_XXX.
14664
14665 * charset.c (Vcharset_map_directory): Delete.
14666 (Vcharset_map_path): New variable.
14667 (load_charset_map_from_file): Use Vcharset_map_path instead.
14668 (init_charset): Initialize Vcharset_map_path.
14669 (syms_of_charset): Delete declaration of "charset-map-directory",
14670 add declaration of "charset-map-path".
14671
146722008-02-01 Kenichi Handa <handa@m17n.org>
14673
14674 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14675 ASCII only string.
14676
14677 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14678
14679 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14680 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14681
146822008-02-01 Kenichi Handa <handa@m17n.org>
14683
14684 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14685
14686 * coding.c (QCmnemonic, QCdefalut_char)
14687 (QCdecode_translation_table, QCencode_translation_table)
14688 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14689 (get_translation_table): Return a list of translation tables if
14690 necessary.
14691 (decode_coding): Call get_translation_table with ENCODEP 0.
14692 (char_encodable_p): If translation_table is non-nil, always call
14693 translate_char.
14694 (Fdefine_coding_system_internal): Accept list of translation
14695 tables as :encode-translation-table and :decode-translation-table.
14696 (Fcoding_system_put): New function.
14697 (syms_of_coding): Declare new symbols. Defsubr
14698 Scoding_system_put.
14699 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14700 typically JISX0212.
14701
14702 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14703 when the charset is superset type.
14704
14705 * character.c (translate_char): Accept list of translation tables.
14706
147072008-02-01 Kenichi Handa <handa@m17n.org>
14708
14709 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14710 (CODING_ATTR_TRANS_TBL): New macro.
14711
14712 * coding.c (get_translation_table): New function.
14713 (translate_chars): Fix the bug of skipping annotation data.
14714 (decode_coding, encode_coding): Utilize get_translation_table.
14715 (char_encodable_p, Funencodable_char_position): Translate char if
14716 necessary.
14717 (Ffind_coding_systems_region_internal)
14718 (Fcheck_coding_systems_region): Setup translation table for encode
14719 in a coding system attribute vector in advance.
14720 (Fdefine_coding_system_internal): Allow a symbol as translation
14721 table. For shift-jis type coding system, allow 4th charset.
14722
147232008-02-01 Kenichi Handa <handa@m17n.org>
14724
14725 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14726
14727 * xdisp.c (get_next_display_element): Pass -1 as POS to
14728 FACE_FOR_CHAR if displaying a C-string.
14729
147302008-02-01 Kenichi Handa <handa@m17n.org>
14731
14732 * composite.c (get_composition_id): Handle xoff and yoff in a
14733 composition rule.
14734
14735 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14736 (struct composition): New member lbearing and rbearing.
14737
14738 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14739 (x_get_glyph_overhangs): Handle a composition glyph.
14740 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14741
14742 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14743 composition glyph.
14744
147452008-02-01 Kenichi Handa <handa@m17n.org>
14746
14747 * print.c: Include charset.h.
14748 (Vprint_charset_text_property): New variable.
14749 (Qdefault): Extern it.
14750 (PRINT_STRING_NON_CHARSET_FOUND)
14751 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14752 (print_check_string_result): New variable.
14753 (print_check_string_charset_prop): New function.
14754 (print_prune_charset_plist): New variable.
14755 (print_prune_string_charset): New function.
14756 (print_object): Call print_prune_string_charset if
14757 Vprint_charset_text_property is not t.
14758 (print_interval): Print nothing if interval->plist is nil.
14759 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14760 variable. Init and staticpro print_prune_charset_plist.
14761
147622008-02-01 Kenichi Handa <handa@m17n.org>
14763
14764 * fontset.c (new_fontset_from_font_name): Use the specified font
14765 for all characters in the new fontset.
14766
14767 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14768 OBJECT args.
14769
14770 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14771 OBJECT args for composition too.
14772
14773 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14774 OBJECT args.
14775
147762008-02-01 Kenichi Handa <handa@m17n.org>
14777
14778 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14779
14780 * fontset.c (reorder_font_vector): Adjust for the change of
14781 FONT_DEF format.
14782 (fontset_face): New arg id. Change caller.
14783 (face_for_char): New args pos and object.
14784 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14785 (fs_query_fontset): Check NAME by Fassoc too.
14786 (Fset_fontset_font): Allow non-XLFD font name.
14787 (Ffontset_info): Adjust for the change of FONT_DEF format.
14788
14789 * fontset.h (face_for_char): Adjust prototype.
14790
14791 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14792 (append_space, extend_face_to_end_of_line)
14793 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14794 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14795
14796 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14797 POS and OBJECT args.
14798
14799 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14800 POS and OBJECT args.
14801
148022008-02-01 Jason Rumney <jasonr@gnu.org>
14803
14804 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14805 of GlobalAlloc'ed memory.
14806
148072008-02-01 Kenichi Handa <handa@m17n.org>
14808
14809 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14810
14811 * charset.h (charset_table_used): Delete extern.
14812
14813 * charset.c (charset_table_used): Make it static.
14814 (map_charset_chars): Fix args to c_function with.
14815
14816 * chartab.c (map_sub_char_table_for_charset): Fix args to
14817 c_function with.
14818
14819 * coding.h (enum coding_result_code): Delete
14820 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14821
14822 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14823 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14824 (Vlast_code_conversion_error): New variables.
14825 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14826 (ONE_MORE_BYTE): Record error if any instead of signaling an
14827 error. If non-ASCII multibyte char is found, return the negative
14828 value of the code. All callers changed to check it.
14829 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14830 (record_conversion_result): New function. Change all codes setting
14831 coding->result to call this function.
14832 (detect_coding_utf_8, decode_coding_utf_8)
14833 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14834 Don't use the local variable incomplete.
14835 (emacs_mule_char): Change the second arg to `const'.
14836 (decode_coding): Fix of flushing out unprocessed data.
14837 (make_conversion_work_buffer): Fix making of a work buffer.
14838 (decode_coding_object): Return coding->dst_object.
14839
14840 * fontset.c (set_fontset_font): Fix args.
14841
14842 * lisp.h (CHARACTERBITS): Define as 22.
14843
14844 * process.c (send_process): Be sure to set coding->src_multibyte.
14845
14846 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14847
148482008-02-01 Kenichi Handa <handa@m17n.org>
14849
14850 * xdisp.c (handle_auto_composed_prop): Give limit to
14851 Fnext_single_char_property_change.
14852
148532008-02-01 Kenichi Handa <handa@m17n.org>
14854
14855 * composite.c (syms_of_composite): Don't make the composition hash
14856 table weak.
14857
14858 * fontset.c (Fset_fontset_font): Fix docstring.
14859
14860 * lisp.h (detect_coding_system): Adjust prototype.
14861
14862 * fileio.c (kill_workbuf_unwind): Delete this function.
14863 (Finsert_file_contents): Adjust the call of detect_coding_system.
14864 Get conversion_buffer by code_conversion_save. Use the macro
14865 CODING_MAY_REQUIRE_DECODING. After decoding, update
14866 coding_system.
14867
14868 * coding.h (make_conversion_work_buffer): Delete extern.
14869 (code_conversion_save): Extern it.
14870
14871 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14872 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14873 (decode_coding_utf_8): Don't do eol converion.
14874 (detect_coding_utf_16): Check coding->src_chars, not
14875 coding->src_bytes. Add heuristics for those that have no signature.
14876 (decode_coding_emacs_mule, decode_coding_iso_2022)
14877 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14878 Don't do eol converion.
14879 (adjust_coding_eol_type): Return a new coding system.
14880 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14881 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14882 each change.
14883 (decode_coding): Pay attention to undo_list. Do eol conversion for
14884 all types of coding-systems (if necessary).
14885 (Vcode_conversion_work_buf_list): Delete it.
14886 (Vcode_conversion_reused_workbuf): Rename from
14887 Vcode_conversion_reused_work_buf.
14888 (Vcode_conversion_workbuf_name): New variable.
14889 (reused_workbuf_in_use): New variable.
14890 (make_conversion_work_buffer): Delete the arg DEPTH.
14891 (code_conversion_restore): Change argument to cons.
14892 (code_conversion_save): Delete the argument BUFFER. Change callers.
14893 (detect_coding_system): New argument src_chars. Change callers.
14894 Fix for utf-16 detection.
14895 (init_coding_once): Don't use ISO_carriage_return.
14896 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14897 reused_workbuf_in_use.
14898
148992008-02-01 Kenichi Handa <handa@m17n.org>
14900
14901 * keymap.c (store_in_keymap): Pay attention to the case that idx
14902 is a cons specifying a character range.
14903
149042008-02-01 Kenichi Handa <handa@m17n.org>
14905
14906 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14907 HANDLED_RECOMPUTE_PROPS.
14908
14909 * coding.c (Fdefine_coding_system_internal): Fix checking of
14910 ascii compatibility.
14911
149122008-02-01 Kenichi Handa <handa@m17n.org>
14913
14914 * charset.c (find_charsets_in_text): Delete unused locale variable.
14915 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14916
14917 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14918 Resync charset_list to Vemacs_mule_charset_list.
14919
14920 * keymap.c (store_in_keymap): Pay attention to the case that idx
14921 is a cons specifying a character range.
14922
149232008-02-01 Kenichi Handa <handa@m17n.org>
14924
14925 * composite.c (update_compositions): Bind inhibit-read-only, etc
14926 to t before calling remove-list-of-text-properties.
14927
14928 * print.c (print_object): Always print ASCII chars as is.
14929
149302008-02-01 Kenichi Handa <handa@m17n.org>
14931
14932 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14933
14934 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14935 is a char table.
14936
149372008-02-01 Kenichi Handa <handa@m17n.org>
14938
14939 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14940
149412008-02-01 Kenichi Handa <handa@m17n.org>
14942
14943 * xfaces.c (set_lface_from_font_name): Fix for the case that
14944 FONTNAME is not fontset name.
14945
149462008-02-01 Kenichi Handa <handa@m17n.org>
14947
14948 * fns.c (base64_encode_1): Fix previous change.
14949
149502008-02-01 Kenichi Handa <handa@m17n.org>
14951
14952 * fontset.c (set_fontset_font): New function.
14953 (Fset_fontset_font): If a font is specified for a charset, use
14954 map_charset_chars to store the font spec in a fontset.
14955
149562008-02-01 Kenichi Handa <handa@m17n.org>
14957
14958 * fontset.c (fontset_face): Create a fallback fontset on demand.
14959 (make_fontset): Don't create a fallback fontset here.
14960 (free_face_fontset): Free a fallback fontset (if any) too.
14961 (n_auto_fontsets): Delete this variable.
14962 (auto_fontset_alist): New variable.
14963 (new_fontset_from_font_name): Check auto_fontset_alist.
14964 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14965 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14966 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14967 Defsubr Sfontset_list_all.
14968
149692008-02-01 Kenichi Handa <handa@m17n.org>
14970
14971 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14972
149732008-02-01 Kenichi Handa <handa@m17n.org>
14974
14975 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14976
149772008-02-01 Kenichi Handa <handa@m17n.org>
14978
14979 * editfns.c (Fgoto_char): Fix docstring.
14980
149812008-02-01 Kenichi Handa <handa@m17n.org>
14982
14983 * insdel.c (insert_from_gap): Adjust intervals correctly.
14984
149852008-02-01 Jason Rumney <jasonr@gnu.org>
14986
14987 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14988 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14989 (w32_initialize): Try to load it.
14990 (x_get_font_repertory): Use it if available.
14991 (w32_encode_char): Add shortcut for unicode output.
14992
14993 * w32fns.c (w32_load_system_font): Default charset to -1.
14994 (x_to_w32_charset): Match all fonts for unicode.
14995 (w32_to_x_charset): New parameter matching. Don't return partial
14996 or wildcard charsets.
14997 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14998 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14999 (w32_to_x_font): Match charset to real charset.
15000 (enum_font_cb2): Always list unicode versions.
15001
15002 * makefile.w32-in (temacs): Increase EMHEAP.
15003
150042008-02-01 Jason Rumney <jasonr@gnu.org>
15005
15006 * w32term.c (w32_encode_char): New charset parameter.
15007 font_info.encoding becomes encoding_type.
15008 (x_get_font_repertory): New function. Warning: stub only!
15009 (x_new_font): Return quickly if font already set.
15010 (x_new_fontset): fontsetname parameter is Lisp_Object.
15011 Use new fs_query_fontset. Try new_fontset_from_font_name.
15012 Use fontset_name for return value.
15013
15014 * w32term.h: Declare x_get_font_repertory.
15015
15016 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15017 place of find_charset_in_text. Use encode_coding_object in place
15018 of encode_coding.
15019 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15020 decode_coding.
15021
15022 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15023 of x_new_fontset.
15024 (w32_load_system_font): Initialize charset as unicode.
15025 font_info.encoding becomes encoding_type.
15026 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15027 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15028 (syms_of_w32fns): Set get_font_repertory_func.
15029
15030 * w32console.c: Include character.h. Use terminal_encode_buffer
15031 from term.c.
15032 (write_glyphs): Use new version of encode_terminal_code. Use
15033 encode_coding_object in place of encode_coding.
15034
15035 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15036 encoding becomes encoding_type.
15037
15038 * term.c (terminal_encode_buffer): Make externally visible.
15039
15040 * makefile.w32-in: Add character.h dependancies.
15041 (character.o, chartab.o): New targets.
15042
150432008-02-01 Kenichi Handa <handa@m17n.org>
15044
15045 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15046 CODING_ID_EOL_TYPE.
15047
150482008-02-01 Andreas Schwab <schwab@suse.de>
15049
15050 * coding.c (produce_chars): Revert last change.
15051
150522008-02-01 Kenichi Handa <handa@m17n.org>
15053
15054 * charset.h (charset_unicode): Extern it.
15055
15056 * charset.c (string_xstring_p): Check by (C >= 0x100).
15057 (find_charsets_in_text): Change format of the arc CHARSETS. New
15058 arg MULTIBYTE.
15059 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15060 change of find_charsets_in_text.
15061 (Fsplit_char): Fix doc. Never return unknown.
15062
15063 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15064
15065 * coding.c (Fdefine_coding_system_alias): Update
15066 Vcoding_system_list.
15067
15068 * fontset.c (load_font_get_repertory): Pay attention to the case
15069 that ENCODING of a font is specified by a char-table.
15070
15071 * xterm.c (x_get_font_repertory): Handle the case that the
15072 encoding of font is other than Unicode.
15073
150742008-02-01 Kenichi Handa <handa@m17n.org>
15075
15076 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15077 if a character is encodable by the terminal coding system. If
15078 not, produces proper number of `?'s. Update
15079 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15080 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15081
150822008-02-01 Kenichi Handa <handa@m17n.org>
15083
15084 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15085 variables.
15086 (encode_terminal_code): Change argument. Encode multiple
15087 characters at once. Store the result of encoding in
15088 terminal_encode_buffer.
15089 (write_glyphs, insert_glyphs): Adjust for the change of
15090 encode_terminal_code.
15091 (term_init): Initialize terminal_encode_buffer and
15092 terminal_encode_buf_size.
15093
15094 * coding.c (consume_chars): If coding->src_object is nil, don't
15095 check annotation.
15096
150972008-02-01 Kenichi Handa <handa@m17n.org>
15098
15099 * character.c (char_string): Use ASCII_CHAR_P instead of
15100 SINGLE_BYTE_CHAR_P.
15101
151022008-02-01 Kenichi Handa <handa@m17n.org>
15103
15104 * xdisp.c (handle_auto_composed_prop): Check if the last
15105 characters of auto-composed region is newly composed with the
15106 following characters.
15107 (handle_composition_prop): Fix checking of point being inside
15108 composition.
15109
151102008-02-01 Kenichi Handa <handa@m17n.org>
15111
15112 * fns.c (concat): Don't change multibyteness of the result by
15113 concatenating an 8-bit character.
15114
15115 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15116 multibyteness of the result when newelt is an 8-bit character.
15117
151182008-02-01 Dave Love <fx@gnu.org>
15119
15120 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15121 EMACS_INT.
15122
15123 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15124
15125 * xfaces.c (face_numeric_value): Declare dim size_t.
15126 (Finternal_lisp_face_equal_p): Remove unused f.
15127
15128 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15129 (MATRIX_ROW): Remove unused vars.
15130 (draw_glyphs, x_insert_glyphs, fast_find_position)
15131 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15132 byte/char counts.
15133
15134 * regex.c (regex_compile): Remove unused var.
15135
15136 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15137
15138 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15139 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15140
15141 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15142
15143 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15144
15145 * fileio.c (Fwrite_region): Remove unused var.
15146
15147 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15148 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15149
15150 * composite.c (Fremove_list_of_text_properties): Declare.
15151
15152 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15153 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15154 (coding_inherit_eol_type): Remove unused attrs.
15155 (detect_coding): Cast arg of detect_eol.
15156
15157 * charset.c (syms_of_charset): Remove unused var p.
15158 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15159 byte/char counts.
15160
15161 * casetab.c (set_case_table): Remove unused var.
15162
15163 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15164 unused vars.
15165
151662008-02-01 Dave Love <fx@gnu.org>
15167
15168 * xterm.c (x_bitmap_mask): Declare.
15169
151702008-02-01 Dave Love <fx@gnu.org>
15171
15172 * xterm.c (x_term_init): Fix type error.
15173
15174 * lisp.h: Add Funibyte_char_to_multibyte.
15175
15176 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15177 (Fset_coding_system_priority): Doc fix.
15178
15179 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15180
15181 * indent.c (check_composition): Make start and end EMACS_INT.
15182
15183 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15184
15185 * xdisp.c (handle_composition_prop, check_point_in_composition):
15186 Make buffer positions EMACS_INT.
15187
15188 * composite.c (find_composition, run_composition_function)
15189 (update_compositions, Ffind_composition_internal): Make buffer
15190 positions EMACS_INT.
15191
15192 * composite.h (find_composition, update_compositions): Make
15193 position args EMACS_INT.
15194
15195 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15196
15197 * intervals.c (get_property_and_range):
15198 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15199
15200 * unexalpha.c: Don't include varargs.h.
15201
152022008-02-01 Dave Love <fx@gnu.org>
15203
15204 * coding.h (ENCODE_UTF_8): New.
15205
15206 * Makefile.in (gtkutil.o): Depend on coding.h.
15207
15208 * coding.c (Fset_coding_system_priority): Doc fix.
15209
152102008-02-01 Kenichi Handa <handa@m17n.org>
15211
15212 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15213 the case of auto saving.
15214
152152008-02-01 Andreas Schwab <schwab@suse.de>
15216
15217 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15218 `range' from GC.
15219
152202008-02-01 Kenichi Handa <handa@m17n.org>
15221
15222 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15223
152242008-02-01 Kenichi Handa <handa@m17n.org>
15225
15226 * fileio.c (choose_write_coding_system): Return a decided coding system.
15227 (Fwrite_region): Set Vlast_coding_system_used to the return value
15228 of choose_write_coding_system.
15229
152302008-02-01 Kenichi Handa <handa@m17n.org>
15231
15232 * charset.c (Fset_charset_priority): Pay attention to duplicated
15233 arguments.
15234
15235 * coding.c (QCcategory): New variable.
15236 (syms_of_coding): Defsym it. Set all elements of
15237 Vcoding_category_table and their symbol values.
15238 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15239 coding-category-XXX, and coding-category-list.
15240 (Fdefine_coding_system_internal): Add category in the plist.
15241
152422008-02-01 Kenichi Handa <handa@m17n.org>
15243
15244 * callproc.c (Fcall_process): Handle carryover correctly.
15245
15246 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15247 (raw_text_coding_system): Check NILP (coding_system).
15248 (coding_inherit_eol_type): Check NILP (coding_system) and
15249 NILP (parent).
15250 (consume_chars): Fix for the case of raw-text.
15251
15252 * process.c (read_process_output): Handle carryover correctly.
15253
152542008-02-01 Dave Love <fx@gnu.org>
15255
15256 * regex.c (re_search_2): Fix last change.
15257
152582008-02-01 Kenichi Handa <handa@m17n.org>
15259
15260 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15261 target_multibyte. Even in a unibyte case, return a converted
15262 multibyte char.
15263 (GET_CHAR_AFTER): New macro.
15264 (PATFETCH): Translate via multibyte char.
15265 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15266 (SETUP_MULTIBYTE_RANGE): New macro.
15267 (regex_compile): Setup compiled code so that its multibyteness
15268 matches that of a target. Fix the handling of "[X-YZ]" using
15269 SETUP_MULTIBYTE_RANGE.
15270 (analyse_first) <charset>: For filling fastmap for all multibyte
15271 characters, don't check by BASE_LEADING_CODE_P.
15272 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15273 the same as RE_MULTIBYTE_P (bufp) now.
15274 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15275 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15276 (TRANSLATE_VIA_MULTIBYTE): New macro.
15277 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15278 It is the same as RE_MULTIBYTE_P (bufp) now.
15279 <exactn>: Translate via multibyte.
15280 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15281 translate it.
15282 <charset, charset_not>: Fetch a character by
15283 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15284 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15285 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15286 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15287 by GET_CHAR_AFTER.
15288 (bcmp_translate): Likewise.
15289
15290 * search.c (compile_pattern): Check the member target_multibyte,
15291 not the member multibyte of buf.
15292
15293 * lread.c (read1): While reading a string, set force_singlebyte
15294 and force_multibyte correctly.
15295
15296 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15297 up of unibyte_to_multibyte_table.
15298
152992008-02-01 Kenichi Handa <handa@m17n.org>
15300
15301 * coding.c (setup_coding_system): If coding has
15302 post-read-conversion or pre-write-conversion, set
15303 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15304 respectively.
15305 (decode_coding_gap): Run post-read-conversion if any.
15306
15307 * fileio.c (Finsert_file_contents): Even if we read into a
15308 unibyte buffer, check if we must decode the result or not.
15309
153102008-02-01 Kenichi Handa <handa@m17n.org>
15311
15312 * coding.c (make_conversion_work_buffer): Change the work buffer
15313 name to the same one as that of Emacs 21.
15314
153152008-02-01 Kenichi Handa <handa@m17n.org>
15316
15317 * coding.h (make_conversion_work_buffer): Adjust prototype.
15318 (code_conversion_restore): Don't extern it.
15319
15320 * coding.c (detected_mask): Delete unused variable.
15321 (decode_coding_iso_2022): Pay attention to the byte sequence of
15322 CTEXT extended segment, and retain those bytes as is.
15323 (decode_coding_ccl): Delete unused variable `valids'.
15324 (setup_coding_system): Delete unused variable `category'.
15325 (consume_chars): Delete unused variable `category'. Make it work
15326 for non-multibyte case.
15327 (make_conversion_work_buffer): Change argument.
15328 (saved_coding): Delete unused variable.
15329 (code_conversion_restore): Don't check saved_coding->destination.
15330 (code_conversion_save): New function.
15331 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15332 instead of record_unwind_protect.
15333 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15334 (detect_coding_system): Delete unused variable `mask'.
15335 (Fdefine_coding_system_internal): Delete unused variable id.
15336
15337 * fileio.c (kill_workbuf_unwind): New function.
15338 (Finsert_file_contents): On replacing, call
15339 make_conversion_work_buffer with correct args, and call
15340 record_unwind_protect with the first arg kill_workbuf_unwind.
15341
15342 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15343
153442008-02-01 Kenichi Handa <handa@m17n.org>
15345
15346 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15347 (fontset_add): Fix for the case that TO is less than TO1.
15348 (Ffontset_info): Don't use fallback fontset on checking the
15349 default fontset.
15350 (dump_fontset): New function for debugging.
15351
15352 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15353 coding_type is Qcharset.
15354
153552008-02-01 Kenichi Handa <handa@m17n.org>
15356
15357 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15358 (map_char_table): Don't inherit the value from the parent on
15359 initializing VAL. Adjust for the above change.
15360
153612008-02-01 Kenichi Handa <handa@m17n.org>
15362
15363 * coding.c (Qsignature, Qendian): Delete these variables.
15364 (syms_of_coding): Don't initialize them.
15365 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15366 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15367 detect_info->found.
15368 (decode_coding_utf_16): Don't detect BOM here.
15369 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15370 is NOT utf_16_without_bom.
15371 (setup_coding_system): For a coding system of type utf-16, check
15372 if the attribute :endian is Qbig or not (not nil or not), and set
15373 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15374 (detect_coding): If coding type is utf-16 and BOM detection is
15375 required, detect it.
15376 (Fdefine_coding_system_internal): For a coding system of type
15377 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15378
153792008-02-01 Kenichi Handa <handa@m17n.org>
15380
15381 * coding.c (coding_set_source): Fix for the case that the current
15382 buffer is different from coding->src_object.
15383 (decode_coding_object): Don't use the conversion work buffer if
15384 DST_OBJECT is a buffer.
15385
153862008-02-01 Dave Love <fx@gnu.org>
15387
15388 * lread.c (read_emacs_mule_char) [len==2]: Index
15389 emacs_mule_charset correctly.
15390
153912008-02-01 Dave Love <fx@gnu.org>
15392
15393 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15394 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15395 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15396 treated specially.)
15397 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15398 (detected_mask): Remove Big5 bits.
15399
154002008-02-01 Kenichi Handa <handa@m17n.org>
15401
15402 The following changes are to make the font rescaling facility
15403 compatible with Emacs 21.
15404
15405 * xfaces.c (Vface_font_rescale_alist): Rename from
15406 Vface_resizing_fonts.
15407 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15408 (font_rescale_ratio): Rename from font_resizing_ratio.
15409 (split_font_name): Set font->rescale_ratio.
15410 (better_font_p): Pay attention to font->rescale_ratio.
15411 (build_scalable_font_name): Likewise. Change RESX, and RESY
15412 fields.
15413 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15414
154152008-02-01 Kenichi Handa <handa@m17n.org>
15416
15417 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15418 (Qutf_16_le): Remove these variables.
15419 (syms_of_coding): Don't DEFSYM them.
15420 (decode_coding_utf_16): Fix handling of BOM.
15421 (encode_coding_utf_16): Fix handling of BOM.
15422
154232008-02-01 Kenichi Handa <handa@m17n.org>
15424
15425 * fileio.c (Finsert_file_contents): On replacing, before decoding
15426 the file into the work buffer, set point of the work buffer to the end.
15427
154282008-02-01 Dave Love <fx@gnu.org>
15429
15430 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15431
154322008-02-01 Dave Love <fx@gnu.org>
15433
15434 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15435 and fix C types.
15436
154372008-02-01 Kenichi Handa <handa@m17n.org>
15438
15439 * xdisp.c (SKIP_GLYPHS): New macro.
15440 (set_cursor_from_row): Pay attention to string display properties.
15441
15442 * category.c (copy_category_entry): Fix for the case that RANGE
15443 is an integer.
15444
15445 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15446
15447 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15448
154492008-02-01 Kenichi Handa <handa@m17n.org>
15450
15451 * charset.c (Fcharset_id_internal): New function.
15452 (syms_of_charset): Defsubr it.
15453
15454 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15455 with the last arg charset_list acquired from coding.
15456 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15457 the attribute coding_attr_ccl_valids.
15458
15459 * coding.h (enum define_coding_ccl_arg_index): Set the first
15460 member coding_arg_ccl_decoder to coding_arg_max.
15461
15462 * ccl.h (ccl_driver): Adjust prototype.
15463
15464 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15465 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15466 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15467 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15468 last arg Qnil.
15469
154702008-02-01 Kenichi Handa <handa@m17n.org>
15471
15472 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15473 call encode_char.
15474
15475 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15476
154772008-02-01 Dave Love <fx@gnu.org>
15478
15479 * composite.c (syms_of_composite): Make composition_hash_table weak.
15480
154812008-02-01 Kenichi Handa <handa@m17n.org>
15482
15483 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15484 (font_name_registry): Don't extern them.
15485 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15486
15487 * fontset.h (Qfontset): Don't extern it.
15488 (new_fontset_from_font_name): Extern it.
15489
15490 * fontset.c: Give 8 extra slots to fontset objects.
15491 (Qfontset_info): New variable.
15492 (syms_of_fontset): Defsym it.
15493 (FONTSET_FALLBACK): New macro.
15494 (fontset_face): Try also the default fontset.
15495 (make_fontset): Realize a fallback fontset from the default fontset.
15496 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15497 using split_font_name_into_vector and build_font_name_from_vector.
15498 (Fset_fontset_font): Access the elements of font_spec by enum
15499 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15500 name by using split_font_name_into_vector.
15501 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15502 generate a proper font name from the fontset name. Update
15503 Vfontset_alias_alist.
15504 (n_auto_fontsets): New variable.
15505 (new_fontset_from_font_name): New function.
15506 (Ffont_info): Store the information about fonts generated from the
15507 default fontset in the first extra slot of the returned char-table.
15508
15509 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15510 (font_name_registry): Delete function.
15511 (split_font_name_into_vector): New function.
15512 (build_font_name_from_vector): New function.
15513 (font_list): The argument REGISTRY is now a list of registry names.
15514 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15515 specifies an explicit font name, return the name as is. Make a
15516 list of registy names.
15517
15518 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15519 of x_new_fontset.
15520 (Fx_create_frame): Don't call x_new_fontset here. Just use
15521 x_list_fonts to check the existence of fonts.
15522
15523 * xterm.h (x_new_fontset): Adjust prototype.
15524
15525 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15526 string. Use new_fontset_from_font_name to create a fontset from a
15527 font name.
15528
155292008-02-01 Kenichi Handa <handa@m17n.org>
15530
15531 * syntax.c (Vfind_word_boundary_function_table): New name for
15532 Vnext_word_boundary_function_table.
15533 (find-word-boundary-function-table): New name for
15534 next-word-boundary-function-table.
15535
155362008-02-01 Dave Love <fx@gnu.org>
15537
15538 * Makefile.in: Fix some dependencies.
15539
15540 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15541 set it to nil before returning.
15542
15543 * composite.c (update_compositions): Fix type error.
15544
15545 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15546
155472008-02-01 Kenichi Handa <handa@m17n.org>
15548
15549 * xterm.c (x_new_font): Optimize for the case that the font is
15550 already set for the frame.
15551
155522008-02-01 Kenichi Handa <handa@m17n.org>
15553
15554 * chartab.c (char_table_ascii): Check if the char table contents
15555 is sub-char-table or not.
15556 (char_table_set, char_table_set_range): Fix argument to
15557 char_table_ascii.
15558
15559 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15560 (detect_coding_utf_8, detect_coding_utf_16)
15561 (detect_coding_emacs_mule, detect_coding_iso_2022)
15562 (detect_coding_sjis, detect_coding_big5)
15563 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15564 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15565 sequence is valid in this coding system. Change callers.
15566 (MAX_ANNOTATION_LENGTH): New macro.
15567 (ADD_ANNOTATION_DATA): New macro.
15568 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15569 ADD_ANNOTATION_DATA. Change the format of annotation data.
15570 (ADD_CHARSET_DATA): New macro.
15571 (emacs_mule_char): New argument ID. Change callers.
15572 (decode_coding_emacs_mule, decode_coding_iso_2022)
15573 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15574 Produce charset annotation data in coding->charbuf.
15575 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15576 to charset annotation data in coding->charbuf.
15577 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15578 coding->common_flags if the coding system is iso-2022 based and
15579 uses designation.
15580 (produce_composition): Adjust for the new annotation data format.
15581 (produce_charset): New function.
15582 (produce_annotation): Handle charset annotation.
15583 (handle_composition_annotation, handle_charset_annotation): New
15584 functions.
15585 (consume_chars): Handle charset annotation. Utilize the above two
15586 functions.
15587 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15588 buffer, get the deleted text as a string and set
15589 coding->src_object to that string.
15590 (detect_coding, detect_coding_system): Use the new struct
15591 coding_detection_info.
15592
15593 * coding.h (struct coding_detection_info): New structure.
15594 (struct coding_system): Adjust prototype of the member `detector'.
15595 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15596
155972008-02-01 Kenichi Handa <handa@m17n.org>
15598
15599 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15600
156012008-02-01 Dave Love <fx@gnu.org>
15602
15603 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15604 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15605 to new local and nullify apropos_accumulate before returning.
15606 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15607
156082008-02-01 Kenichi Handa <handa@m17n.org>
15609
15610 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15611 correctly.
e3eea1fc 15612
aac0c6e3
MR
156132008-02-01 Dave Love <fx@gnu.org>
15614
15615 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15616
156172008-02-01 Kenichi Handa <handa@m17n.org>
15618
15619 The following changes are to make character composition happen
15620 automatically on displaying.
15621
15622 * Makefile.in (lisp, shortlisp): Add composite.elc.
15623
15624 * composite.h (Qauto_composed, Vauto_composition_function)
15625 (Qauto_composition_function): Extern them.
15626
15627 * composite.c (Vcomposition_function_table)
15628 (Qcomposition_function_table): Delete variables.
15629 (Qauto_composed, Vauto_composition_function)
15630 (Qauto_composition_function): New variables.
15631 (run_composition_function): Don't call
15632 compose-chars-after-function.
15633 (update_compositions): Clear `auto-composed' text property.
15634 (compose_chars_in_text): Delete this function.
15635 (syms_of_composite): Staticpro Qauto_composed and
15636 Qauto_composition_function. Declare Vauto_composition_function as
15637 a Lisp variable.
15638
15639 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15640
15641 * xdisp.c (it_props): Add an entry for Qauto_composed.
15642 (handle_auto_composed_prop): New function.
15643
15644 * xselect.c (selection_data_to_lisp_data): Don't call
15645 compose_chars_in_text.
15646
156472008-02-01 Dave Love <fx@gnu.org>
15648
15649 * keyboard.c (read_char): Modify checking around use of
15650 Vkeyboard_translate_table.
15651
15652 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15653 and fix C types.
15654
156552008-02-01 Kenichi Handa <handa@m17n.org>
15656
15657 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15658 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15659 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15660 the case that the last byte is '\r' correctly.
15661 (decode_coding): Flush out the unprocessed data correctly.
15662 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15663
156642008-02-01 Dave Love <fx@gnu.org>
15665
15666 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15667 Add XK_ISO... case.
15668 (xaw_scroll_callback): Revert last change.
15669
156702008-02-01 Kenichi Handa <handa@m17n.org>
15671
15672 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15673
156742008-02-01 Kenichi Handa <handa@m17n.org>
15675
15676 * xfaces.c (Vface_resizing_fonts): New variable.
15677 (struct font_name): New member `resizing_ratio'.
15678 (font_resizing_ratio): New function.
15679 (split_font_name): Set font->resizing_ratio.
15680 (better_font_p): Pay attention to font->resizing_ratio.
15681 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15682 RESX, and RESY fields.
15683 (try_alternative_families): Try scalable fonts if
15684 Vscalable_fonts_allowed is not Qt.
15685 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15686
156872008-02-01 Dave Love <fx@gnu.org>
15688
15689 * xterm.c (xaw_scroll_callback): Cast correctly.
15690
156912008-02-01 Dave Love <fx@gnu.org>
15692
15693 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15694 (lispy_kana_keys): Comment out.
15695 (make_lispy_event) [XK_kana_A]: Comment out.
15696
15697 * xterm.c (xaw_scroll_callback): Cast call_data.
15698 (XTread_socket): Deal with ASCII keysyms.
15699 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15700
157012008-02-01 Dave Love <fx@gnu.org>
15702
15703 * xterm.c (Vx_keysym_table): New.
15704 (syms_of_xterm): Initialize it.
15705 (XTread_socket): Use it.
15706 From head: Eliminate incorrect optimization that tried to avoid
15707 decoding the output of X*LookupString.
15708 (x_get_font_repertory): Delete charset declaration.
15709
157102008-02-01 Kenichi Handa <handa@m17n.org>
15711
15712 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15713 return 0.
15714 (Fdefine_coding_system_internal): Setup
15715 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15716
157172008-02-01 Dave Love <fx@gnu.org>
15718
15719 * coding.c (Fcheck_coding_system): Doc fix.
15720
15721 * editfns.c (Finsert_byte): Return a proper value.
15722
157232008-02-01 Kenichi Handa <handa@m17n.org>
15724
15725 * coding.c (decode_coding): Fix args to translate_chars. Pay
15726 attention to Vstandard_translation_table_for_decode.
15727 (encode_coding): Fix args to translate_chars. Pay attention to
15728 Vstandard_translation_table_for_encode.
15729
15730 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15731 SINGLE_BYTE_CHAR_P.
15732
15733 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15734 not by SINGLE_BYTE_CHAR_P.
15735
15736 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15737 SINGLE_BYTE_CHAR_P.
15738
15739 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15740 SINGLE_BYTE_CHAR_P.
15741
15742 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15743 by SINGLE_BYTE_CHAR_P.
15744
15745 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15746 SINGLE_BYTE_CHAR_P.
15747
157482008-02-01 Dave Love <fx@gnu.org>
15749
15750 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15751
157522008-02-01 Dave Love <fx@gnu.org>
15753
15754 * fns.c (Flanginfo): Fix typo.
15755
15756 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15757
157582008-02-01 Kenichi Handa <handa@m17n.org>
15759
15760 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15761 (detect_coding_emacs_mule, detect_coding_iso_2022)
15762 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15763 incomplete byte sequence. Don't update *mask when correctly detected.
15764 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15765 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15766 (detect_coding, detect_coding_system): Adjust for the changes above.
15767
157682008-02-01 Kenichi Handa <handa@m17n.org>
15769
15770 * character.c (char_string): Rename from
15771 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15772 (string_char): Rename from string_char.
15773
15774 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15775 if C is greater than MAX_3_BYTE_CHAR.
15776 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15777 string_char instead of string_char_with_unification.
15778
157792008-02-01 Dave Love <fx@gnu.org>
15780
15781 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15782
157832008-02-01 Kenichi Handa <handa@m17n.org>
15784
15785 * keymap.c (push_key_description): Pay attention to force_multibyte.
15786
15787 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15788
157892008-02-01 Dave Love <fx@gnu.org>
15790
15791 * charset.c (define_charset_internal): Rename `supprementary'.
15792
15793 * Makefile.in (lisp, shortlisp): Remove latin-N.
15794
157952008-02-01 Dave Love <fx@gnu.org>
15796
15797 * xfns.c (x_window, x_window): Use use_xim.
15798
15799 * xterm.c (use_xim): Initialize.
15800 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15801 (x_term_init): Maybe set use_xim.
15802
15803 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15804
158052008-02-01 Kenichi Handa <handa@m17n.org>
15806
15807 * search.c (search_buffer): Fix case-fold-search of multibyte
15808 characters.
15809 (boyer_moore): Rename the last argument to char_high_bits.
15810
158112008-02-01 Kenichi Handa <handa@m17n.org>
15812
15813 * xdisp.c (display_string): Fix for the case of zero width glyph.
15814
15815 * xfns.c (x_set_font): Change the error message of the case that
15816 x_new_fontset returns Qt.
15817
15818 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15819 (Finternal_set_lisp_face_attribute): Use signal_error for the
15820 error of invalid fontset.
15821
15822 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15823 fontset, return Qt.
15824
158252008-02-01 Dave Love <fx@gnu.org>
15826
15827 * unexelf.c (unexec): Make .got handling not SGI-specific.
15828
15829 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15830
15831 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15832
15833 * keyboard.c (read_key_sequence): Fix type error.
15834
15835 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15836 type error.
15837
15838 * fontset.c (fontset_add): Return Lisp_Object.
15839
158402008-02-01 Dave Love <fx@gnu.org>
15841
15842 * charset.h (charset_ordered_list_tick): Declare extern.
15843
158442008-02-01 Kenichi Handa <handa@m17n.org>
15845
15846 The following changes (and some of 2008-02-01 changes of mine) are
15847 for handling syntax, category, and case conversion for unibyte
15848 characters by converting them to multibyte on the fly. With these
15849 changes, we don't have to setup syntax and case tables for unibyte
15850 characters in each language environment.
15851
15852 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15853 multibyte if necessary.
15854
15855 * bytecode.c (Fbyte_code): Likewise.
15856
15857 * character.h (LEADING_CODE_LATIN_1_MIN)
15858 (LEADING_CODE_LATIN_1_MAX): New macros.
15859 (unibyte_to_multibyte_table): Extern it.
15860 (unibyte_char_to_multibyte): New macro.
15861 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15862 (CHAR_LEADING_CODE): New macro.
15863 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15864
15865 * character.c (unibyte_to_multibyte_table): New variable.
15866 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15867 (multibyte_char_to_unibyte): If C is an eight-bit character,
15868 convert it to the corresponding byte value.
15869
15870 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15871 not 1, signals an error. Update the elements of
15872 unibyte_to_multibyte_table.
15873 (init_charset_once): Initialize unibyte_to_multibyte_table.
15874 (syms_of_charset): Define the charset `iso-8859-1'.
15875
15876 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15877 as is without converting it to unibyte. In a unibyte buffer,
15878 convert C to multibyte before checking the syntax.
15879
15880 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15881
15882 * minibuf.c (Fminibuffer_complete_word): Use the macro
15883 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15884
15885 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15886
15887 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15888 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15889 that is zero, convert an eight-bit char to multibyte.
15890 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15891 non-emacs case.
15892 (PATFETCH): Convert an eight-bit char to multibyte.
15893 (HANDLE_UNIBYTE_RANGE): New macro.
15894 (regex_compile): Setup the compiled pattern for multibyte chars
15895 even if the given regex string is unibyte. Use PATFETCH_RAW
15896 instead of PATFETCH in many places. To handle `charset'
15897 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15898 only for ASCII chars.
15899 (analyse_first) <exactn>: Simplify because the compiled pattern
15900 is multibyte.
15901 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15902 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15903 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15904 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15905 multibyte always 1.
15906 (re_search_2): In emacs, set the locale variable multibyte to 1,
15907 otherwise to 0. New local variable target_multibyte. Check it
15908 to decide the multibyteness of STR1 and STR2. If
15909 target_multibyte is zero, convert unibyte chars to multibyte
15910 before translating and checking fastmap.
15911 (TARGET_CHAR_AND_LENGTH): New macro.
15912 (re_match_2_internal): In emacs, set the locale variable multibyte
15913 to 1, otherwise to 0. New local variable target_multibyte. Check
15914 it to decide the multibyteness of STR1 and STR2. Use
15915 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15916 <charset, charset_not>: If multibyte is nonzero, check fastmap
15917 only for ASCII chars. Call bcmp_translate with
15918 target_multibyte, not with multibyte.
15919 <begline>: Declare the local variable C as `unsigned'.
15920 (bcmp_translate): Change the last arg name to target_multibyte.
15921
15922 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15923 the regexp pattern and the matching target. Set cp->buf.multibyte
15924 to the multibyteness of the regexp pattern. Set
15925 cp->but.target_multibyte to the multibyteness of the matching target.
15926 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15927 FETCH_STRING_CHAR_ADVANCE.
15928 (Freplace_match): Convert unibyte chars to multibyte.
15929
15930 * syntax.c (char_quoted, back_comment, scan_words)
15931 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15932 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15933 unibyte chars to multibyte.
15934 (skip_chars): Delete the arg syntaxp, and move the code for
15935 handling syntaxes to skip_syntaxes. Change callers.
15936 Fix the case that the multibyteness of STRING and the current
15937 buffer doesn't match.
15938 (skip_syntaxes): New function.
15939 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15940 SINGLE_BYTE_CHAR_P.
15941
159422008-02-01 Kenichi Handa <handa@m17n.org>
15943
15944 * xfaces.c (QCfontset): New variable.
15945 (LFACE_FONTSET): New macro.
15946 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15947 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15948 (Finternal_set_lisp_face_attribute)
15949 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15950 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15951 check also LFACE_FONTSET_INDEX.
15952 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15953 attrs[LFACE_FONT_INDEX].
15954 (syms_of_xfaces): Intern and staticpro QCfontset.
15955
15956 * dispextern.h (enum lface_attribute_index): New member
15957 LFACE_FONTSET_INDEX.
15958
15959 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15960
159612008-02-01 Kenichi Handa <handa@m17n.org>
15962
15963 * coding.c (coding_set_destination): Fix coding->destination for
15964 the case converting a region.
15965 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15966 (encode_coding_object): Fix coding->dst_pos and
15967 coding->dst_pos_byte for the case converting a region.
15968
15969 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15970
15971 * character.h (BYTE8_STRING): New macro.
15972
15973 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15974
159752008-02-01 Kenichi Handa <handa@m17n.org>
15976
15977 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15978 characters by octal form.
15979
15980 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15981
15982 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15983 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15984 _fetch_multibyte_char_len.
15985 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15986
15987 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15988
15989 * casefiddle.c (casify_object): Simplify. Handle the case that
15990 the case conversion change the byte length.
15991 (casify_region): Likewise.
15992
15993 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15994
15995 * character.c (_fetch_multibyte_char_len): Delete this variable.
15996 (syms_of_character): Setup Vprintable_chars.
15997
15998 * editfns.c (Fchar_equal): Fix for the unibyte case.
15999 (Finsert_byte): New function.
16000 (syms_of_editfns): Defsubr it.
16001
16002 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16003 of direct code 0x3ffff.
16004
16005 * search.c (Freplace_match): Fix for the unibyte case.
16006
160072008-02-01 Kenichi Handa <handa@m17n.org>
16008
16009 * lread.c (safe_to_load_p): Fix the logic.
16010
16011 * syntax.c (scan_words): Don't treat characters belonging to
16012 different scripts as constituting a word.
16013
16014 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16015
16016 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16017
16018 * emacs.c (main): In the case of --unibyte, instead of aborting on
16019 finding non-empty buffer, make it unibyte.
16020
160212008-02-01 Kenichi Handa <handa@m17n.org>
16022
16023 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16024 to create a fontset.
16025
160262008-02-01 Dave Love <fx@gnu.org>
16027
16028 * character.c (Funibyte_char_to_multibyte): Doc fix.
16029
16030 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16031
160322008-02-01 Kenichi Handa <handa@m17n.org>
16033
16034 * fontset.c (fontset_add): Make the type `int'.
16035 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16036
16037 * character.c (unibyte_char_to_multibyte)
16038 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16039 charset_unibyte, not charset_primary.
16040
16041 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16042
16043 * charset.c (charset_unibyte): Rename from charset_primary.
16044 (Funibyte_charset): Rename from Fprimary_charset.
16045 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16046 (syms_of_charset): Adjust for the above changes.
16047
16048 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16049 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16050 it->multibyte_p is zero.
16051
16052 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16053 Delete extern.
16054
160552008-02-01 Kenichi Handa <handa@m17n.org>
16056
16057 * coding.c (Fdefine_coding_system_internal): Fix category setting
16058 for a coding system of type iso-2022.
16059
160602008-02-01 Kenichi Handa <handa@m17n.org>
16061
16062 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16063
160642008-02-01 Kenichi Handa <handa@m17n.org>
16065
16066 * syntax.c (Vnext_word_boundary_function_table): New variable.
16067 (next-word-boundary-function-table): Declare it as a Lisp variable
16068 in syms_of_syntax.
16069 (scan_words): Call functions in Vnext_word_boundary_function_table
16070 if any.
16071
16072 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16073
16074 * fontset.c (fs_load_font): If fontp->charset is not negative,
16075 return fontp without setting its members.
16076
160772008-02-01 Dave Love <fx@gnu.org>
16078
16079 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16080
16081 * m/sparc.h (HAVE_ALLOCA): Delete.
16082
16083 * s/irix6-5.h: Don't include strings.h.
16084 (bcopy, bzero, bcmp): Don't undef.
16085
16086 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16087
16088 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16089 (TIOCSIGSEND): Don't test IRIX6.
16090 (bcopy, bzero, bcmp): Define conditionally.
16091
160922008-02-01 Kenichi Handa <handa@m17n.org>
16093
16094 * buffer.c (Qas, Qmake, Qto): New variables.
16095 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16096 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16097
16098 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16099 we are inserting a process output into a multibyte buffer.
16100
16101 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16102 multibyte_char_to_unibyte.
16103
16104 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16105 by the primary charset, make it eight-bit char.
16106 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16107
16108 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16109 (charset_8_bit__control, charset_8_bit_graphic)
16110 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16111 (define_charset_internal): New function.
16112 (syms_of_charset): Call define_charset_internal for pre-defined
16113 charsets.
16114
16115 * charset.h (charset_8_bit): Extern it.
16116
16117 * coding.c (make_conversion_work_buffer): Adjust for the change
16118 of Fset_buffer_multibyte.
16119 (encode_coding_raw_text): Increment p0 in the loop.
16120
16121 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16122
16123 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16124 for the change of Fset_buffer_multibyte.
16125
16126 * fns.c (Fstring_to_multibyte): New function.
16127 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16128
161292008-02-01 Dave Love <fx@gnu.org>
16130
16131 * xfns.c (x_put_x_image): Declare args.
16132
16133 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16134 (try_font_list): Declare an arg.
16135
16136 * xdisp.c (message2_nolog, set_message): Declare an arg.
16137
16138 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16139
16140 * syntax.c (scan_sexps_forward): Declare an arg.
16141
16142 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16143 Declare an arg.
16144
16145 * lisp.h (Fnew_fontset): Declare.
16146
16147 * keymap.c (push_key_description): Call CHARACTERP correctly.
16148
16149 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16150 (face_for_char): Delete unused vars.
16151 (Fset_fontset_font): Doc fix. Delete unused vars.
16152
16153 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16154
16155 * composite.c (update_compositions): Declare arg.
16156
16157 * cm.c (calccost, cmgoto): Declare args.
16158
16159 * charset.c: Remove `emacs' conditional. Doc fixes.
16160 (map_char_table_for_charset): Declare.
16161
16162 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16163
16164 * ccl.c: Remove `emacs' conditional.
16165
161662008-02-01 Kenichi Handa <handa@m17n.org>
16167
16168 The following changes are to allow specifying multiple font
16169 patterns for a character range (specified by script or charset).
16170
16171 * Makefile.in (abbrev.o): Depend on syntax.h.
16172 (xfaces.o): Depend on charset.h.
16173
16174 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16175 SINGLE_BYTE_CHAR_P.
16176
16177 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16178
16179 * character.h (Vchar_script_table): Extern it.
16180
16181 * character.c (Vscript_alist): Delete.
16182 (Vchar_script_table, Qchar_script_table): New variable.
16183 (syms_of_character): Declare Vchar_script_table as a lisp variable
16184 and initialize it.
16185
16186 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16187 have property char-table-extra-slots, make no extra slot.
16188
16189 * dispextern.h (struct face): Delete member `charset'.
16190 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16191 SINGLE_BYTE_CHAR_P.
16192 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16193 Add prototypes.
16194 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16195 (generate_ascii_font_name): Rename from generate_ascii_font.
16196
16197 * fontset.h (get_font_repertory_func): New prototype.
16198 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16199 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16200
16201 * fontset.c (Qprepend, Qappend): New variables.
16202 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16203 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16204 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16205 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16206 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16207 (load_font_get_repertory): New functions.
16208 (fontset_set): Delete.
16209 (fontset_face): New arg FACE. Return face ID, not face.
16210 Complete re-write to handle new fontset structure. Change caller.
16211 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16212 (face_for_char): Don't call lookup_face.
16213 (make_fontset_for_ascii_face): New arg FACE.
16214 (fs_load_font): New arg CHARSET_ID. Don't check
16215 Vfont_encoding_alist here.
16216 (find_font_encoding): New function.
16217 (list_fontsets): Use STRINGP, not ! NILP.
16218 (accumulate_script_ranges): New function.
16219 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16220 re-written to handle new fontset structure.
16221 (Ffontset_font): Return a copy of element.
16222 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16223 docstring of font-encoding-alist.
16224
16225 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16226 (Fset_fotset_font): Fix arguments to 5.
16227
16228 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16229
16230 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16231 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16232 (highlight_trailing_whitespace): Adjust for the change of
16233 lookup_named_face.
16234
16235 * xfaces.c: Include charset.h.
16236 (load_face_font): Delete argument C. Change caller.
16237 (generate_ascii_font_name): Rename from generate_ascii_font.
16238 (font_name_registry): New function.
16239 (cache_face): Store ascii faces before non-ascii faces in buckets.
16240 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16241 Lookup only ascii faces.
16242 (lookup_non_ascii_face): New function.
16243 (lookup_named_face): Delete argument C. Change caller.
16244 (lookup_derived_face): Delete argument C. Change caller.
16245 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16246 a string, just call font_list with it.
16247 (choose_face_font): Delete arguments FACE and C. New arg
16248 FONT_SPEC. Change caller.
16249 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16250 Change caller.
16251 (realize_non_ascii_face): New function.
16252 (realize_x_face): Call load_face_font here.
16253 (realize_tty_face): Delete argument C. Change caller.
16254 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16255 get a face ID.
16256 (dump_realized_face): Don't print charset of FACE.
16257
16258 * xfns.c (x_set_font): Always call x_new_fontset and
16259 store_frame_parameter.
16260 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16261 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16262
16263 * xterm.h (x_get_font_repertory): Extern it.
16264
16265 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16266 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16267 it->multibyte_p is zero.
16268 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16269 (x_new_fontset): If FONTSETNAME doesn't match any existing
16270 fontsets, create a new one.
16271 (x_get_font_repertory): New function.
16272
162732008-02-01 Kenichi Handa <handa@m17n.org>
16274
16275 * coding.c (Ffind_coding_systems_region_internal): Detect an
16276 ASCII only string correctly.
16277
16278 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16279 version is 0.
16280
162812008-02-01 Kenichi Handa <handa@m17n.org>
16282
16283 * lread.c: Include "coding.h".
16284 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16285 (load_each_byte, unread_char): New variables.
16286 (readchar_backlog): Delete.
16287 (readchar): Return a character unless load_each_byte is nonzero.
16288 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16289 cons. If unread_char is not -1, simply return it.
16290 (unreadchar): Handle the case that readcharfun is
16291 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16292 (read_multibyte): Delete.
16293 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16294 (read_emacs_mule_char): New functions.
16295 (Fload): Even if the file doesn't have the extension ".elc", if
16296 safe_to_load_p returns a positive version number, assume that the
16297 file contains bytecompiled code. If the version is less than 22,
16298 load the file while decoding multibyte sequences by emacs-mule.
16299 (readevalloop): Don't use readchar_backlog.
16300 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16301 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16302 (read_escape): Delete the arg BYTEREP.
16303 (read1): Set load_each_byte to 1 temporarily while handling
16304 #@NUMBER. Don't call read_multibyte.
16305 (read_vector): Call Fread with a cons. If readcharfun is
16306 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16307 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16308 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16309 and Qload_force_doc_strings.
16310
163112008-02-01 Kenichi Handa <handa@m17n.org>
16312
16313 * xdisp.c (face_before_or_after_it_pos): Call
16314 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16315
163162008-02-01 Kenichi Handa <handa@m17n.org>
16317
16318 * character.h (TRAILING_CODE_P): New macro.
16319 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16320 (string_char_with_unification): Fix prototype.
16321 (Vscript_alist): Extern it.
16322
16323 * character.c (Vscript_alist): New variable.
16324 (string_char_with_unification, str_as_unibyte)
16325 (string_escape_byte8): Add `const' to local variables.
16326 (syms_of_character): Declare script-alist as a Lisp variable.
16327
16328 * charset.h (Vcharset_ordered_list): Extern it.
16329 (charset_ordered_list_tick): Extern it.
16330 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16331 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16332 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16333 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16334 (Funify_charset): Adjust for the change of Funify_charset.
16335
16336 * charset.c (charset_ordered_list_tick): New variable.
16337 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16338 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16339 deunify intead of unify a charset.
16340 (string_xstring_p): Add `const' to local variables.
16341 (find_charsets_in_text): Add `const' to arguments and local variables.
16342 (encode_char): Adjust for the change of Funify_charset. Fix
16343 detecting of invalid code.
16344 (Fset_charset_priority): Increment charset_ordered_list_tick.
16345 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16346 and TO_CODE.
16347
16348 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16349 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16350 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16351 (decode_coding_ccl, consume_chars)
16352 (Ffind_coding_systems_region_internal)
16353 (Fcheck_coding_systems_region): Add `const' to local variables.
16354
16355 * print.c (print_object): Use octal form for printing the
16356 contents of a bool vector.
16357
163582008-02-01 Dave Love <fx@gnu.org>
16359
16360 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16361 <version == 20>: Refuse to load.
16362
163632008-02-01 Dave Love <fx@gnu.org>
16364
16365 * fns.c: Move coding.h.
16366 (Qcodeset, Qdays, Qmonths): New.
16367 (concat): Use CHARACTERP instead of INTEGERP.
16368 (Flocale_codeset): Delete.
16369 (Flanginfo): New function.
16370 (syms_of_fns): Change accordingly.
16371
16372 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16373
163742008-02-01 Dave Love <fx@gnu.org>
16375
16376 * casetab.c (init_casetab_once, init_casetab_once): Fix
16377 CHAR_TABLE_SET call.
16378
16379 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16380
16381 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16382
16383 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16384 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16385 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16386
16387 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16388
16389 * coding.c (ENCODE_DESIGNATION, decode_eol)
16390 (make_conversion_work_buffer, code_conversion_restore)
16391 (Fdefine_coding_system_internal): Convert Lisp types.
16392 (code_conversion_restore): Use EQ, not ==.
16393 (Fencode_coding_string): Fix code_convert_string call.
16394
16395 * coding.h (code_convert_region): Fix prototype.
16396
16397 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16398
16399 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16400 (Ffontset_info): Convert Lisp types.
16401
16402 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16403
16404 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16405
16406 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16407
16408 * chartab.c: Include "...h", not <...h> in some cases.
16409
16410 * callproc.c (Fcall_process): Remove unused variables.
16411
164122008-02-01 Dave Love <fx@gnu.org>
16413
16414 * coding.c (Fset_coding_system_priority): Allow null arg list.
16415
164162008-02-01 Dave Love <fx@gnu.org>
16417
16418 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16419 (Fself_insert_and_exit): Use CHARACTERP.
16420
16421 * callproc.c (Fcall_process): Remove unused vars.
16422
16423 * xterm.c (XTread_socket): Add extra dead keysyms.
16424
16425 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16426
16427 * dispextern.h: Remove prototypes for redraw_frame,
16428 redraw_garbaged_frames.
16429
16430 * cmds.c (Fself_insert_command): Use CHARACTERP.
16431
16432 * chartab.c (make_sub_char_table): Remove unused var.
16433 (Fset_char_table_default, Fmap_char_table): Doc fix.
16434
16435 * keymap.c (access_keymap): Remove generic char code.
16436 (push_key_description): Use CHARACTERP.
16437
164382008-02-01 Dave Love <fx@gnu.org>
16439
16440 * charset.c: Doc fixes.
16441 (Funify_charset): Extra checking.
16442
164432008-02-01 Dave Love <fx@gnu.org>
16444
16445 * lread.c: Remove some unused variables.
16446 (safe_to_load_p): If safe, return the magic number version byte.
16447 (Fload): Maybe use load-with-code-conversion.
16448
164492008-02-01 Kenichi Handa <handa@m17n.org>
16450
16451 * category.c (Fmodify_category_entry): Don't modify the contents
16452 of category_set for characters out of the range. Avoid
16453 unnecessary modification.
16454
16455 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16456 Vchar_unify_table. The default value of the table is now nil.
16457
16458 * character.c (syms_of_character): Setup Vchar_width_table for
16459 eight-bit-control and raw-byte chars.
16460
16461 * charset.h (enum define_charset_arg_index): Delete
16462 charset_arg_parents and add charset_arg_subset and
16463 charset_arg_superset.
16464 (enum charset_attr_index): Delete charset_parents and add
16465 charset_subset and charset_superset.
16466 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16467 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16468 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16469 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16470 (CHARSET_SUPERSET): New macros.
16471 (charset_work): Extern it.
16472 (ENCODE_CHAR): Use charset_work.
16473 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16474 (map_charset_chars): Extern it.
16475
16476 * charset.c (load_charset_map): Set the default value of encoder
16477 and deunifier char-tables to nil.
16478 (map_charset_chars): Change argument. Change callers. Use
16479 map_char_table_for_charset instead of map_char_table.
16480 (Fmap_charset_chars): New optional args from_code and to_code.
16481 (Fdefine_charset_internal): Adjust for the change of
16482 `define-charset' (:parents -> :subset or :superset).
16483 (charset_work): New variable.
16484 (encode_char, syms_of_charset): Adjust for the change of
16485 Fdefine_charset_internal.
16486 (Ffind_charset_string): Setup the vector `charsets' correctly.
16487
16488 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16489 the previous change.
16490 (char_table_ref_and_range): Adjust for the above change.
16491 (map_sub_char_table_for_charset): New function.
16492 (map_char_table_for_charset): New function.
16493
16494 * keymap.c (describe_vector): Handle a char-table directly here.
16495 (describe_char_table): Delete.
16496
16497 * lisp.h (map_charset_chars): Delete.
16498
164992008-02-01 Dave Love <fx@gnu.org>
16500
16501 * fns.c (count_combining): Comment out (unused).
16502 (Flocale_codeset): New.
16503 (syms_of_fns): Defsubr it.
16504
16505 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16506 (size_t): Remove.
16507
165082008-02-01 Dave Love <fx@gnu.org>
16509
16510 * Makefile.in (chartab.o): Depend on charset.h.
16511
165122008-02-01 Kenichi Handa <handa@m17n.org>
16513
16514 * character.c (syms_of_character): Set the default value of
16515 Vprintable_chars to Qnil.
16516
165172008-02-01 Dave Love <fx@gnu.org>
16518
16519 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16520
165212008-02-01 Kenichi Handa <handa@m17n.org>
16522
16523 * charset.c (load_charset_map): Handle the case that from < to
16524 correctly.
16525
16526 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16527 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16528 Pay attention to raw-8-bit chars.
16529
165302008-02-01 Kenichi Handa <handa@m17n.org>
16531
16532 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16533 It is not bytecompiled now.
16534
16535 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16536 (charset_jisx0208): New variables.
16537 (Fdefine_charset_internal): Setup them if appropriate.
16538 (init_charset_once): Initialize them to -1.
16539
16540 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16541 (charset_jisx0208): Extern them.
16542
16543 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16544 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16545 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16546 (setup_iso_safe_charsets): Fix arguments to Fassq.
16547 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16548 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16549 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16550 (encode_coding_iso_2022): Change the 1st arg to
16551 ENCODE_ISO_CHARACTER to a variable.
16552
165532008-02-01 Kenichi Handa <handa@m17n.org>
16554
16555 * charset.h (enum define_charset_arg_index): New enums
16556 charset_arg_min_code and charset_arg_max_code.
16557 (struct charset): New member char_index_offset.
16558
16559 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16560 Take charset->char_index_offset into account.
16561 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16562 args[charset_arg_max_code]. Setup charset.char_index_offset.
16563 (syms_of_charset): Fix args to Fdefine_charset_internal.
16564
165652008-02-01 Dave Love <fx@gnu.org>
16566
16567 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16568
165692008-02-01 Dave Love <fx@gnu.org>
16570
16571 * coding.c: Doc fixes.
16572 (Fcoding_system_aliases): Fix return value.
16573 (Qmac): Remove (duplicated) definition.
16574
165752008-02-01 Dave Love <fx@gnu.org>
16576
362654a6
JB
16577 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16578 New functions.
aac0c6e3
MR
16579
16580 * character.c (Fstring): Doc fix.
16581
16582 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16583
362654a6 16584 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16585 (font-encoding-alist): Doc fix.
16586
165872008-02-01 Dave Love <fx@gnu.org>
16588
16589 * term.c (costs_set): Declare static, non-initialized for pcc.
16590 (encode_terminal_code): Remove unused var.
16591
16592 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16593 for K&R.
16594
16595 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16596
16597 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16598 (suffixes): Move out of make_subsidiaries for K&R.
16599
16600 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16601
16602 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16603
166042008-02-01 Dave Love <fx@gnu.org>
16605
16606 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16607
16608 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16609
166102008-02-01 Yong Lu <lyongu@asia-infonet.com>
16611
16612 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16613
16614 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16615
166162008-02-01 Kenichi Handa <handa@m17n.org>
16617
16618 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16619 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16620
166212008-02-01 Kenichi Handa <handa@m17n.org>
16622
16623 * coding.c (decode_coding_charset): Adjust for the change of
16624 Fdefine_coding_system_internal.
16625 (Fdefine_coding_system_internal): For a coding system of
16626 `charset' type, store a list of charset IDs in
16627 `charset_attr_charset_valids' element of coding attributes.
16628
166292008-02-01 Kenichi Handa <handa@m17n.org>
16630
16631 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16632 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16633 caller. Handle 2-byte and 3-byte charsets correctly.
16634 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16635 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16636 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16637 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16638 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16639 sequence.
16640 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16641 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16642 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16643 and alt&rule composition.
16644 (decode_coding_iso_2022): Handle composition correctly.
16645 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16646
16647 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16648 re-defining a charset. If the charset has :emacs-mule-id, setup
16649 emacs_mule_bytes.
16650 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16651
166522008-02-01 Kenichi Handa <handa@m17n.org>
16653
16654 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16655 (encode_coding_big5, encode_coding_charset): If coding requires safe
16656 encoding, produce a character specified by
16657 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16658
166592008-02-01 Dave Love <fx@gnu.org>
16660
16661 * xterm.c (XSetIMValues): Declare.
16662
16663 * process.c: Conditionally include sys/wait.h, pty.h.
16664
16665 * print.c (print_object): Fix print format for 64-bit systems.
16666
16667 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16668
16669 * buffer.c (emacs_strerror): Declare.
16670
16671 * fontset.c (Fclear_face_cache): Declare.
16672 (accumulate_font_info): Comment-out (unused).
16673 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16674 variables.
16675
16676 * character.h (string_escape_byte8): Declare.
16677
16678 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16679 unused vars.
16680 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16681 (Fmap_charset_chars): Doc fix.
16682
16683 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16684 (Fset_coding_system_priority, Fset_coding_system_priority)
16685 (Fdefine_coding_system_internal): Doc fix.
16686
166872008-02-01 Dave Love <fx@gnu.org>
16688
16689 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16690
166912008-02-01 Kenichi Handa <handa@m17n.org>
16692
16693 * character.c (string_escape_byte8): Make multibyte string with
16694 correct size.
16695
16696 * charset.c (Fmake_char): Delete unnecessary code.
16697
166982008-02-01 Kenichi Handa <handa@m17n.org>
16699
16700 * xfns.c (x_encode_text): Allocate coding.destination here, and
16701 call encode_coding_object with dst_object Qnil.
16702
16703 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16704 multibyte form correctly.
16705
16706 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16707 against Vfont_encoding_alist.
16708
16709 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16710 handling of charset list.
16711 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16712 (decode_coding_object): Move point to coding->dst_pos before
16713 calling post-read-conversion function.
16714 (encode_coding_object): Give correct arguments to
16715 pre-write-conversion. Ignore the return value of
16716 pre-write-conversion function. Pay attention to the case that
16717 pre-write-conversion changes the current buffer. If dst_object is
16718 Qt, even if coding->src_bytes is zero, allocate at least one byte
16719 to coding->destination.
16720
16721 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16722
16723 * charset.c (Fmake_char): Make it more backward compatible.
16724 (Fmap_charset_chars): Fix docstring.
16725
167262008-02-01 Dave Love <fx@gnu.org>
16727
16728 * coding.c: Doc fixes.
16729 (Fdefine_coding_system_alias): Use names, not symbols, in
16730 coding-system-alist.
16731
167322008-02-01 Kenichi Handa <handa@m17n.org>
16733
16734 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16735 of calling free_realized_face.
16736
167372008-02-01 Yong Lu <lyongu@asia-infonet.com>
16738
16739 * charset.c (read_hex): Don't treat SPC as a comment starter.
16740 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16741 (Fdecode_char): Fix typo.
16742
167432008-02-01 Kenichi Handa <handa@m17n.org>
16744
16745 * charset.h (struct charset): New member `code_space_mask'.
16746
16747 * coding.c (coding_set_source): Delete the local variable beg_byte.
16748 (encode_coding_charset, Fdefine_coding_system_internal):
16749 Delete the local variable charset.
16750 (Fdefine_coding_system_internal): Setup
16751 attrs[coding_attr_charset_valids] correctly.
16752
16753 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16754 member to check if CODE is valid or not.
16755 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16756 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16757 is within the range of charset->min_code and carset->max_code.
16758
167592008-02-01 Dave Love <fx@gnu.org>
16760
16761 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16762
16763 * dispextern.h (generate_ascii_font): Fix return type.
16764
16765 * xfaces.c (generate_ascii_font): Fix arg declaration.
16766
16767 * coding.c (coding_inherit_eol_type)
16768 (Fset_terminal_coding_system_internal)
16769 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16770
167712008-02-01 Kenichi Handa <handa@m17n.org>
16772
16773 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16774 multiple charsets correctly.
16775
167762008-02-01 Kenichi Handa <handa@m17n.org>
16777
16778 * search.c (boyer_moore): Fix handling of multibyte character
16779 translation.
16780
16781 * xdisp.c (display_mode_element): When the variable `elt' is
16782 changed, update `this' and `lisp_string'.
16783
167842008-02-01 Kenichi Handa <handa@m17n.org>
16785
16786 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16787
16788 * callproc.c (Fcall_process): Be sure to give the current buffer
16789 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16790
16791 * charset.c (struct charset_map_entries): New struct.
16792 (load_charset_map): Rename from parse_charset_map. New args
16793 entries and n_entries. Change caller.
16794 (load_charset_map_from_file): Rename from load_charset_map.
16795 Change caller. New arg control_flag. Call load_charset_map at
16796 the tail.
16797 (load_charset_map_from_vector): New function.
16798 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16799 (encode_char): If the charset is compact, change a character index
16800 to a code point.
16801
16802 * coding.c (coding_alloc_by_making_gap): Check the case that the
16803 source and destination are the same correctly.
16804 (decode_coding_raw_text): Set coding->consumed_char and
16805 coding->consumed to 0.
16806 (produce_chars): If coding->chars_at_source is nonzero, update
16807 coding->consumed_char and coding->consumed before calling
16808 alloc_destination.
16809 (Fdefine_coding_system_alias): Register ALIAS in
16810 Vcoding_system_alist.
16811 (syms_of_coding): Define `no-conversion' coding system at the tail.
16812
16813 * fileio.c (Finsert_file_contents): Set coding_system instead of
16814 val. If the current buffer is multibyte, always call
16815 decode_coding_gap.
16816
16817 * xfaces.c (try_font_list): Give higher priority to fontset's
16818 family than face's family.
16819
168202008-02-01 Kenichi Handa <handa@m17n.org>
16821
16822 * callproc.c (Fcall_process): Be sure to give the current buffer
16823 to decode_coding_c_string.
16824
16825 * xfaces.c (try_font_list): Give a family specified in a fontset
16826 higher priority than a family specified in a face.
16827
168282008-02-01 Kenichi Handa <handa@m17n.org>
16829
16830 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16831 Fix arguments to insert_from_buffer.
16832
16833 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16834
168352008-02-01 Kenichi Handa <handa@m17n.org>
16836
16837 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16838 (decode_coding_gap): Set coding->dst_multibyte correctly.
16839
168402008-02-01 Kenichi Handa <handa@m17n.org>
16841
16842 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16843 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16844 (encode_coding_utf_16): Substitute coding->default_char for
16845 non-Unicode characters.
16846 (decode_coding): Don't call record_insert here.
16847 (setup_coding_system): Initialize `surrogate' of
16848 coding->spec.utf_16 to 0.
16849 (EMIT_ONE_BYTE): Fix for multibyte case.
16850
16851 * insdel.c (insert_from_gap): Call record_insert.
16852
168532008-02-01 Kenichi Handa <handa@m17n.org>
16854
16855 * casefiddle.c (casify_region): Fix multibyte case.
16856
16857 * character.c (c_string_width): Add return type `int'.
16858 (char_string_with_unification): Delete arg ADVANCED.
16859
16860 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16861 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16862 (CHAR_STRING_ADVANCE): Make it do-while statement.
16863
16864 * chartab.c (sub_char_table_set_range): Optimize for the case
16865 DEPTH == 3. Add workaround code for a GCC optimization bug.
16866
16867 * charset.c (parse_charset_map): Remove an unused variable.
16868
16869 * coding.c: Delete unused variables.
16870
16871 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16872 earlier. If inserted is zero and the coding system doesn't
16873 require flushing, don't call decode_coding_gap.
16874
16875 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16876
168772008-02-01 Kenichi Handa <handa@m17n.org>
16878
16879 The following changes are for using Unicode as an internal
16880 character model, and use UTF-8 format for buffer/string
16881 representation.
16882
16883 * .gdbinit (xchartable): Adjust for the change of char table structure.
16884 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16885
16886 * Makefile.in (obj): Add character.o and chartab.o.
16887 (lisp, shortlisp): Remove utf-8.elc.
16888 (*.o): For many files, change dependency on charset.h to
16889 character.h, and add dependency on character.h.
16890 (character.o, chartab.o): New targets.
16891
16892 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16893 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16894 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16895 of "charset.h".
16896
16897 * dired.c, filelock.c: Include "character.h".
16898
16899 * alloc.c: Include "character.h" instead of "charset.h".
16900 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16901 (syms_of_alloc): Remove defsubr for Smake_char_table.
16902
16903 * buffer.c: Include "character.h" instead of "charset.h", don't
16904 include "coding.h".
16905 (Fset_buffer_multibyte): Adjust for UTF-8.
16906
16907 * buffer.h: EXFUN Fbuffer_live_p.
16908
16909 * callproc.c: Include "character.h" instead of "charset.h".
16910 (Fcall_process): Big change for the new code-conversion APIs.
16911
16912 * casetab.c: Include "character.h" instead of "charset.h".
16913 (set_canon, set_identity, shuffle): Adjust for the new
16914 map_char_table spec.
16915 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16916 accessing the char table structure.
16917
16918 * chartab.c: New file that implements char table.
16919
16920 * category.c: Include "character.h".
16921 (copy_category_entry): New function.
16922 (copy_category_table): Call map_char_table and copy_category_entry.
16923 (Fmake_category_table): Initialize all top-level slots.
16924 (char_category_set): New function.
16925 (modify_lower_category_set): Delete.
16926 (Fmodify_category_entry): Call char_table_ref_and_range.
16927
16928 * category.h (CATEGORY_SET): Just call char_category_set.
16929
16930 * ccl.c: Include "character.h".
16931 (Qccl, Qcclp): New variables.
16932 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16933 it's less than 256.
16934 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16935 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16936 and DST type.
16937 (ccl_driver): Change types of argument, adjust code accordingly.
16938 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16939 ccl_driver.
16940 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16941
16942 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16943 New members src_multibyte, dst_multibyte, consumed, and produced.
16944 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16945 (CODING_SPEC_CCL_PROGRAM): New macro.
16946 (ccl_driver): Update prototype.
16947 (Qccl, Qcclp, Fccl_program_p): Extern them.
16948 (CHECK_CCL_PROGRAM): New macro.
16949
16950 * character.c, character.h, chartab.c: New files.
16951
16952 * charset.c: Mostly re-written. Move character and multibyte sequence
16953 handling codes to character.c.
16954
16955 * charset.h: Mostly re-written. Move character and multibyte sequence
16956 handling codes to character.h.
16957
16958 * coding.c, coding.h: Mostly re-written.
16959
16960 * composite.c: Include "character.h" instead of "charset.h".
16961 (CHAR_WIDTH): Move to character.h.
16962 (HASH_KEY, HASH_VALUE): Delete.
16963
16964 * composite.h (enum composition_method): Change order of enumeration
16965 symbols.
16966
16967 * data.c: Include "character.h" instead of "charset.h".
16968 (Faref): Call CHAR_TABLE_REF for a char table.
16969 (Faset): Call CHAR_TABLE_SET for a char table.
16970
16971 * dispextern.h (free_realized_face, check_face_attribytes)
16972 (generate_ascii_font): Extern them.
16973 (free_realized_multibyte_face): Delete extern.
16974
16975 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16976 table structure.
16977
16978 * editfns.c: Include "character.h" instead of "charset.h".
16979 (Fchar_to_string): Always call CHAR_STRING.
16980
16981 * emacs.c (main): Call init_charset_once, init_charset,
16982 syms_of_chartab, and syms_of_character.
16983
16984 * fileio.c: Include "character.h" instead of "charset.h".
16985 (Finsert_file_contents): Big change for the new code-conversion API.
16986 (choose_write_coding_system, Fwrite_region): Likewise.
16987 (build_annotations_2): Delete.
16988 (e_write): Big change for the new code-conversion API.
16989
16990 * fns.c: Include "character.h" instead of "charset.h".
16991 (copy_sub_char_table): Move to chartab.c.
16992 (Fcopy_sequence): Call copy_char_table for a char table.
16993 (concat): Delete codes calling count_multibyte.
16994 (string_char_to_byte, string_byte_to_char): Adjust for the new
16995 multibyte form.
16996 (internal_equal): Adjust for the change of char table structure.
16997 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16998 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16999 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17000 (char_table_translate, optimize_sub_char_table)
17001 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17002 chartab.c.
17003 (char_table_ref_and_index): Delete.
17004 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17005 (Fmd5): Call preferred_coding_system instead of accessing
17006 Vcoding_category_list. Adjust for the new code-conversion API.
17007 (syms_of_fns): Move defsubr for char table related functions to
17008 chartab.c.
17009
17010 * fontset.c: Mostly re-written.
17011
17012 * fontset.h (struct font_info): Change type of the member encoding_type.
17013 (enum FONT_SPEC_INDEX): New enum.
17014 (fontset_font_pattern, fs_load_font): Update prototype.
17015 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17016
17017 * indent.c: Include "character.h" instead of "charset.h".
17018 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17019
17020 * insdel.c: Include "character.h" instead of "charset.h".
17021 (copy_text): Don't refer to Vnonascii_translation_table.
17022 (insert_from_gap): New function.
17023
17024 * keyboard.c: Include "character.h" instead of "charset.h".
17025 (command_loop_1): Never call direct_output_forward_char before
17026 a non-ASCII character.
17027 (read_char): If Vkeyboard_translate_table is a char table, always
17028 translate a character.
17029
17030 * keymap.c: Include "character.h".
17031 (store_in_keymap): Handle the case that IDX is a cons.
17032 (Fdefine_key): Handle the case that KEY is a cons and the car part
17033 is also a cons (range).
17034 (push_key_description): Adjust for the new character code.
17035 (describe_vector): Call describe_char_table for a char table.
17036 (describe_char_table): New function.
17037
17038 * keymap.h (describe_char_table): Extern it.
17039
17040 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17041 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17042 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17043 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17044 Delete.
17045 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17046 structure.
17047 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17048 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17049 (CHARTAB_SIZE_BITS_3): New macros.
17050 (chartab_size): Extern it.
17051 (struct Lisp_Char_Table): Re-design.
17052 (struct Lisp_Sub_Char_Table): New structure.
17053 (HASH_KEY, HASH_VALUE): Move from fns.c.
17054 (CHARACTERBITS): Define as 22.
17055 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17056 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17057 (GC_SUB_CHAR_TABLE_P): New macro.
17058 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17059 (code_convert_string_norecord): Deleted extern.
17060 (init_character_once, syms_of_character, init_charset)
17061 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17062
17063 * lread.c: Include "character.h".
17064 (read_multibyte): New arg NBYTES.
17065 (read_escape): Change the meaning of returned *BYTEREP.
17066 (to_multibyte): Delete.
17067 (read1): Adjust the handling of char table and string.
17068
17069 * print.c: Include "character.h" instead of "charset.h".
17070 (print_string): Convert 8-bit raw bytes to octal form by
17071 string_escape_byte8.
17072 (print_object): Adjust for the new multibyte form. Print 8-bit
17073 raw bytes always in octal form. Handle sub char table correctly.
17074
17075 * process.c: Include "character.h" instead of "charset.h".
17076 (read_process_output, send_process): Adjust for the new
17077 code-conversion API.
17078
17079 * puresize.h (BASE_PURESIZE): Increase.
17080
17081 * regex.c: Include "character.h" instead of "charset.h".
17082 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17083 (regex_compile): Accept a range whose starting and ending
17084 character have different leading bytes.
17085 (analyse_first): Adjust for the above change.
17086
17087 * search.c: Include "character.h" instead of "charset.h".
17088 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17089 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17090
17091 * syntax.c: Include "character.h" instead of "charset.h".
17092 (syntax_parent_lookup): Delete.
17093 (Fmodify_syntax_entry): Accept a cons as CHAR.
17094 (skip_chars): Adjust for the new multibyte form.
17095 (init_syntax_once): Call char_table_set_range instead of directly
17096 accessing the structure of a char table.
17097
17098 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17099 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17100 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17101 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17102
17103 * term.c: Include "buffer.h" and "character.h".
17104 (encode_terminal_code, write_glyphs): Adjust for the new
17105 code-conversion API.
17106 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17107
17108 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17109
17110 * xdisp.c: Include "character.h".
17111 (get_next_display_element): Adjust for the new multibyte form.
17112 (disp_char_vector): Adjust for the new char table structure.
17113 (decode_mode_spec_coding): Adjust for the new structure of
17114 coding system.
17115 (decode_mode_spec): Adjust for the new code-conversion API.
17116
17117 * xfaces.c: Include "character.h" instead of "charset.h".
17118 (load_face_font): Adjust for the change of choose_face_font and
17119 FS_LOAD_FONT.
17120 (generate_ascii_font): New function.
17121 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17122 (set_font_frame_param): Adjust for the change of choose_face_font.
17123 (free_realized_face): Make it public.
17124 (free_realized_faces_for_fontset): Rename from
17125 free_realized_multibyte_face. Free also faces realized for ASCII.
17126 (choose_face_font): Change arguments. Adjust for the change of
17127 fontset_font_pattern and FS_LOAD_FONT.
17128
17129 * xfns.c: Include "character.h".
17130 (x_encode_text): Adjust for the new code-conversion API.
17131
17132 * xselect.c: Don't include "charset.h".
17133 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17134
17135 * xterm.c: Include "character.h".
17136 (x_encode_char): New argument CHARSET. Change caller.
17137 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17138 Call ENCODE_CHAR instead of SPLIT_CHAR.
17139 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17140 CHAR_WIDTH instead of CHARSET_WIDTH.
17141 (XTread_socket): Adjust for the new code-conversion API.
17142 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17143 (x_load_font): Adjust for the change of struct font.
17144
171452008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17146
17147 * xfaces.c (face_at_buffer_position): Remove unused vars.
17148
171492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17150
17151 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17152 Fix overflow checking.
17153
171542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17155
17156 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17157 Cancel previous change.
17158
171592008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17160
17161 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17162 ccl->eight_bit_control. Fix check for buffer overflow.
17163 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17164 (ccl_driver): Initialize extra_bytes to 0.
17165
171662008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17167
17168 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17169 return it ORed with ctrl_modifier.
17170
171712008-01-29 Miles Bader <miles@gnu.org>
17172
17173 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17174
171752008-01-28 Jason Rumney <jasonr@gnu.org>
17176
17177 * w32.c (stat): Don't double check for networked drive.
17178
171792008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17180
17181 * window.c (run_window_configuration_change_hook): New function.
17182 Code extracted from set_window_buffer. Set the selected frame.
17183 (set_window_buffer): Use it.
17184 * window.h (run_window_configuration_change_hook): Declare.
17185 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17186
17187 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17188
171892008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17190
17191 * Makefile.in: Remove references to unused macros.
17192
171932008-01-26 Eli Zaretskii <eliz@gnu.org>
17194
17195 * w32.c (g_b_init_get_sid_sub_authority)
17196 (g_b_init_get_sid_sub_authority_count): New static variables.
17197 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17198 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17199 (init_user_info): Use them to retrieve uid and gid.
17200 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17201 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17202 st_uid and st_gid of the file.
17203
172042008-01-26 Jason Rumney <jasonr@gnu.org>
17205
17206 * w32.c (logon_network_drive): New function.
17207 (stat): Use it.
17208
172092008-01-26 Chong Yidong <cyd@stupidchicken.com>
17210
17211 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17212 invisible text covered with an ellipsis.
17213
172142008-01-25 Richard Stallman <rms@gnu.org>
17215
17216 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17217 jump back to beginning. Move some other initializations after that.
17218 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17219 New variables.
17220 (syms_of_xdisp): Init them.
17221
17222 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17223
17224 * buffer.c (reset_buffer_local_variables):
17225 Implement `permanent-local-hook'.
17226 (Qpermanent_local_hook): New variable.
17227 (syms_of_buffer): Init and staticpro it.
17228
172292008-01-25 Michael Albinus <michael.albinus@gmx.de>
17230
17231 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17232
172332008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17234
17235 * fns.c (Fclrhash): Return TABLE.
17236
172372008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17238
17239 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17240 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17241 is set even without positional changes.
17242 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17243
17244 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17245
172462008-01-23 Jason Rumney <jasonr@gnu.org>
17247
17248 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17249
17250 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17251 the unicode range available in MULE by locale-coding-system.
17252 Improve dbcs lead byte detection. Set event timestamp and modifiers
17253 earlier.
17254
172552008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17256
17257 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17258 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17259 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17260 when used on child processes.
17261
172622008-01-21 Michael Albinus <michael.albinus@gmx.de>
17263
17264 * dbusbind.c (Fdbus_method_return_internal): Rename from
17265 Fdbus_method_return.
17266 (Fdbus_unregister_object): Move to dbus.el.
17267 (Fdbus_call_method, Fdbus_method_return_internal)
17268 (Fdbus_send_signal): Improve debug messages.
17269
172702008-01-20 Martin Rudalics <rudalics@gmx.at>
17271
17272 * undo.c (undo_inhibit_record_point): New variable.
17273 (syms_of_undo): Initialize it.
17274 (record_point): Don't record point when undo_inhibit_record_point
17275 is set.
17276
172772008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17278
17279 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17280
17281 * xdisp.c (Qauto_hscroll_mode): New var.
17282 (syms_of_xdisp): Initialize it.
17283 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17284 window's buffer.
17285 (hscroll_windows): Don't check automatic_hscrolling_p here.
17286
17287 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17288 vscroll if we're setting window-buffer to the value it already has.
17289
172902008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17291
17292 * m/intel386.h: Remove references to XENIX.
17293
172942008-01-17 Andreas Schwab <schwab@suse.de>
17295
17296 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17297 instead of HAVE_X86_64_LIB64_DIR.
17298 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17299
173002008-01-17 Glenn Morris <rgm@gnu.org>
17301
17302 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17303 to HAVE_X86_64_LIB64_DIR.
17304
173052008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17306
17307 * s/irix3-3.h:
17308 * s/irix4-0.h:
17309 * s/386-ix.h:
17310 * s/domain.h:
17311 * s/hpux9-x11r4.h:
17312 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17313
17314 * sysdep.c: Remove code containing references to symbols defined
17315 by unsupported systems.
17316
173172008-01-16 Glenn Morris <rgm@gnu.org>
17318
17319 * coding.c (select-safe-coding-system-function): Doc fix.
17320
173212008-01-15 Glenn Morris <rgm@gnu.org>
17322
17323 * config.in: Revert 2008-01-13 change: this is a generated file.
17324
173252008-01-13 Tom Tromey <tromey@redhat.com>
17326
17327 * lisp.h: Fix typo.
17328
173292008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17330
17331 * m/sequent-ptx.h:
17332 * m/sequent.h:
17333 * s/ptx.h:
17334 * s/ptx4-2.h:
17335 * s/ptx4.h: Remove files for systems no longer supported.
17336
17337 * callproc.c (Fcall_process): Fix previous change.
17338
173392008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17340
17341 * unexsunos4.c: Remove file, system not supported anymore.
17342
17343 * m/mips.h:
17344 * m/intel386.h:
17345 * callproc.c:
17346 * config.in:
17347 * ecrt0.c:
17348 * emacs.c:
17349 * fileio.c:
17350 * frame.c:
17351 * getpagesize.h:
17352 * keyboard.c:
17353 * lread.c:
17354 * process.c:
17355 * puresize.h:
17356 * sysdep.c:
17357 * systty.h:
17358 * syswait.h:
17359 * unexec.c:
17360 * xdisp.c:
17361 * alloc.c: Remove code containing references to symbols defined by
17362 unsupported systems.
17363
173642008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17365
17366 * coding.c (detect_coding_mask): Fix previous change.
17367
173682008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17369
17370 * coding.c (detect_coding_iso2022): New arg
17371 latin_extra_code_state. Allow Latin extra codes only
17372 when *latin_extra_code_state is nonzero.
17373 (detect_coding_mask): If there is a NULL byte, detect the encoding
17374 as UTF-16 or binary. If Latin extra codes exist, detect the
17375 encoding as ISO-2022 only when there's no other proper encoding is
17376 found.
17377
173782008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17379
17380 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17381 #ifdef MAC_OS.
17382
173832008-01-08 Richard Stallman <rms@gnu.org>
17384
17385 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17386
173872008-01-06 Nick Roberts <nickrob@snap.net.nz>
17388
17389 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17390 menu bar in parentheses.
17391
173922008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17393
17394 * m/7300.h:
17395 * m/acorn.h:
17396 * m/alliant-2800.h:
17397 * m/alliant.h:
17398 * m/alliant1.h:
17399 * m/alliant4.h:
17400 * m/altos.h:
17401 * m/amdahl.h:
17402 * m/apollo.h:
17403 * m/att3b.h:
17404 * m/aviion-intel.h:
17405 * m/aviion.h:
17406 * m/celerity.h:
17407 * m/clipper.h:
17408 * m/cnvrgnt.h:
17409 * m/convex.h:
17410 * m/cydra5.h:
17411 * m/delta88k.h:
17412 * m/dpx2.h:
17413 * m/dual.h:
17414 * m/elxsi.h:
17415 * m/f301.h:
17416 * m/gould-np1.h:
17417 * m/gould.h:
17418 * m/i860.h:
17419 * m/ibmps2-aix.h:
17420 * m/ibmrt-aix.h:
17421 * m/ibmrt.h:
17422 * m/irist.h:
17423 * m/is386.h:
17424 * m/isi-ov.h:
17425 * m/mega68.h:
17426 * m/mg1.h:
17427 * m/news-r6.h:
17428 * m/news-risc.h:
17429 * m/news.h:
17430 * m/nh3000.h:
17431 * m/nh4000.h:
17432 * m/ns16000.h:
17433 * m/ns32000.h:
17434 * m/nu.h:
17435 * m/orion.h:
17436 * m/orion105.h:
17437 * m/paragon.h:
17438 * m/pfa50.h:
17439 * m/plexus.h:
17440 * m/pyramid.h:
17441 * m/pyrmips.h:
17442 * m/sh3el.h:
17443 * m/sps7.h:
17444 * m/sr2k.h:
17445 * m/stride.h:
17446 * m/sun1.h:
17447 * m/sun2.h:
17448 * m/sun3-68881.h:
17449 * m/sun3-fpa.h:
17450 * m/sun3-soft.h:
17451 * m/sun3.h:
17452 * m/sun386.h:
17453 * m/symmetry.h:
17454 * m/tad68k.h:
17455 * m/tahoe.h:
17456 * m/targon31.h:
17457 * m/tek4300.h:
17458 * m/tekxd88.h:
17459 * m/tower32.h:
17460 * m/tower32v3.h:
17461 * m/ustation.h:
17462 * m/wicat.h:
17463 * m/xps100.h:
17464 * s/cxux.h:
17465 * s/cxux7.h:
17466 * s/dgux.h:
17467 * s/dgux4.h:
17468 * s/dgux5-4-3.h:
17469 * s/dgux5-4r2.h:
17470 * s/esix.h:
17471 * s/esix5r4.h:
17472 * s/hiuxmpp.h:
17473 * s/hiuxwe2.h:
17474 * s/iris3-5.h:
17475 * s/iris3-6.h:
17476 * s/isc2-2.h:
17477 * s/isc3-0.h:
17478 * s/isc4-0.h:
17479 * s/isc4-1.h:
17480 * s/newsos5.h:
17481 * s/newsos6.h:
17482 * s/osf1.h:
17483 * s/osf5-0.h:
17484 * s/riscix1-1.h:
17485 * s/riscix12.h:
17486 * s/sco4.h:
17487 * s/sco5.h:
17488 * s/sunos4-0.h:
17489 * s/sunos4-1.h:
17490 * s/sunos413.h:
17491 * s/sunos4shr.h:
17492 * s/umax.h:
17493 * s/unipl5-2.h:
17494 * s/xenix.h:
17495 * cxux-crt0.s:
17496 * unexapollo.c:
17497 * unexconvex.c:
17498 * unexenix.c:
17499 * unexsni.c: Remove files for systems no longer supported.
17500
17501 * m/intel386.h: Remove references to unsupported systems.
17502
17503 * w32.c (get_emacs_configuration): Remove reference to i860.
17504
17505 * sysdep.c: Remove dead code.
17506
175072008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17508
17509 * s/rtu.h:
17510 * m/masscomp.h: Remove files. Platform is obsolete.
17511
175122008-01-04 Michael Albinus <michael.albinus@gmx.de>
17513
17514 * dbusbind.c (Fdbus_method_return): New function.
17515 (xd_read_message): Add the serial number to the event.
17516 (Fdbus_register_method): Activate the function.
17517
175182008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17519
17520 * keyboard.c (read_key_sequence): Fix typo.
17521
175222008-01-03 Michael Albinus <michael.albinus@gmx.de>
17523
17524 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17525 (xd_signature, xd_append_arg): Handle element type detection for
17526 empty arrays.
17527 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17528 SDATA () calls; this must be solved more general.
17529 (Fdbus_register_signal): Use SBYTES instead of strlen.
17530
175312008-01-03 Magnus Henoch <magnus@zemdatav>
17532
17533 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17534 unsigned int for byte values (necessary for big-endian platform).
17535 (Fdbus_call_method): Handle the case of no returned arguments.
17536
175372007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17538
17539 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17540
175412007-12-31 Magnus Henoch <mange@freemail.hu>
17542
17543 * dbusbind.c (xd_signature): Signature of variant is just "v".
17544
175452007-12-30 Michael Albinus <michael.albinus@gmx.de>
17546
17547 * dbusbind.c: Fix several errors and compiler warnings.
17548 Reported by Tom Tromey <tromey@redhat.com>.
17549 (XD_ERROR, XD_DEBUG_MESSAGE)
17550 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17551 (xd_append_arg): Part for basic D-Bus types rewritten.
17552 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17553 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17554 appropriate.
17555 (xd_read_message): Return Qnil. Don't signal an error; it is not
17556 useful during event reading.
17557 (Fdbus_register_signal): Signal an error if the check for
17558 FUNCTIONP fails.
17559 (Fdbus_register_method): New function. The implementation is not
17560 complete, the call of the function signals an error therefore.
17561 (Fdbus_unregister_object): New function, renamed from
17562 Fdbus_unregister_signal. The initial check signals an error, if
17563 the object is not well formed.
17564
175652007-12-30 Richard Stallman <rms@gnu.org>
17566
17567 * textprop.c (get_char_property_and_overlay):
17568 Signal error if POSITION is out of range in a buffer.
17569
175702007-12-29 Martin Rudalics <rudalics@gmx.at>
17571
17572 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17573 because the original parameters are in pure storage now.
17574
175752007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17576
17577 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17578
175792007-12-22 Eli Zaretskii <eliz@gnu.org>
17580
17581 * callint.c (syms_of_callint) <command-history>: Add reference to
17582 history-length in the doc string.
17583
175842007-12-17 Jason Rumney <jasonr@gnu.org>
17585
17586 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17587 before passing as wParam.
17588
175892007-12-22 Michael Albinus <michael.albinus@gmx.de>
17590
17591 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17592 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17593 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17594 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17595 as number.
17596 (Fdbus_call_method): Fix docstring.
17597
175982007-12-21 Michael Albinus <michael.albinus@gmx.de>
17599
17600 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17601 New macros.
17602 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17603 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17604 Simplify.
17605 (xd_signature): New function.
17606 (xd_append_arg): Compute also signatures. Major rewrite.
17607 (xd_retrieve_arg): Make debug messages friendly.
17608 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17609 Check for signatures of arguments.
17610
176112007-12-19 Michael Albinus <michael.albinus@gmx.de>
17612
17613 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17614 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17615 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17616 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17617 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17618 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17619 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17620 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17621 (xd_retrieve_value): Remove. Functionality included in ...
17622 (xd_append_arg): New function.
17623 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17624
176252007-12-16 Michael Albinus <michael.albinus@gmx.de>
17626
17627 * dbusbind.c (top): Include <stdio.h>.
17628 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17629 dbus_message_new_method_call and dbus_message_new_signal.
17630 (Fdbus_register_signal): Rename unique_name to uname.
17631 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17632 non-existing unique name. Fix typos in matching rule. Return an
17633 object which is useful in Fdbus_unregister_signal.
17634 (Fdbus_unregister_signal): Reimplementation, in order to remove
17635 only the corresponding entry.
17636 (Vdbus_registered_functions_table): Change the order of entries.
17637 Apply these changes in xd_read_message and Fdbus_register_signal.
17638
176392007-12-16 Andreas Schwab <schwab@suse.de>
17640
17641 * fileio.c (Finsert_file_contents): Fix overflow check to not
17642 depend on undefined integer overflow.
17643
176442007-12-14 Jason Rumney <jasonr@gnu.org>
17645
17646 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17647 for characters above 127.
17648
176492007-12-13 Jason Rumney <jasonr@gnu.org>
17650
17651 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17652 before dereferencing array.
17653 (lookup_vk_code): Remove zero comparison.
17654
176552007-12-14 Michael Albinus <michael.albinus@gmx.de>
17656
17657 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17658 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17659 Use `unsigned int' instead of `uint'.
17660 (xd_read_message, Fdbus_register_signal): Split expressions into
17661 multiple lines before operators "&&" and "||", according to the
17662 GNU Coding Standards.
17663
176642007-12-14 Eli Zaretskii <eliz@gnu.org>
17665
17666 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17667
176682007-12-12 Juri Linkov <juri@jurta.org>
17669
17670 * buffer.c (Frename_buffer): In interactive spec replace
17671 `read-buffer' with `read-string' that uses `buffer-name-history'
17672 as history, and the current buffer's name as default.
17673
176742007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17675
17676 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17677 manipulating the backtrace manually.
17678 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17679 (struct backtrace, backtrace_list): Remove.
17680 (command_loop_1): Remove dead var `no_direct'.
17681
17682 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17683 preserve non-built-in buffer-local variables.
17684 (Fkill_all_local_variables): Don't re-create&re-set permanent
17685 buffer-local variables.
17686
176872007-12-09 Juri Linkov <juri@jurta.org>
17688
17689 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17690 Lisp code that uses `read-buffer' with current buffer as default.
17691
176922007-12-08 Michael Albinus <michael.albinus@gmx.de>
17693
17694 * dbusbind.c (xd_read_message): Generate an event for every
17695 registered handler. There might be several handlers registered
17696 for the same signal.
17697 (Fdbus_register_signal): Don't overwrite a registration for the
17698 same signal. Add a new registration if handlers are different.
17699 (Vdbus_registered_functions_table): Rework doc string.
17700
177012007-12-07 Michael Albinus <michael.albinus@gmx.de>
17702
17703 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17704 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17705 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17706 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17707 Unify argument lists.
17708 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17709 arguments and hash table keys. Use unique name for service.
17710 (Fdbus_unregister_signal): Remove checks.
17711 (Vdbus_registered_functions_table): Fix doc string.
17712
177132007-12-05 Magnus Henoch <mange@freemail.hu>
17714
17715 * process.c (make_process): Initialize pty_flag to 0.
17716
177172007-12-05 Jason Rumney <jasonr@gnu.org>
17718
17719 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17720 specified XBMs.
17721
177222007-12-05 Richard Stallman <rms@gnu.org>
17723
17724 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17725
177262007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17727
17728 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17729 New variable.
17730 (mac_try_close_socket) [MAC_OSX]: New function.
17731 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17732 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17733
17734 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17735 Use mac_try_close_socket.
17736
177372007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17738
17739 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17740 reloc_base.
17741 (copy_dysymtab): Compute relocation base here.
17742 (rebase_reloc_address) [__ppc64__]: New function.
17743 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17744 changed.
17745
177462007-12-05 Jason Rumney <jasonr@gnu.org>
17747
17748 * w32proc.c (sys_spawnve): Quote args with wildcards.
17749
177502007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17751
17752 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17753 __objc_* sections.
17754 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17755
177562007-12-05 Michael Albinus <michael.albinus@gmx.de>
17757
17758 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17759 Move check for Vdbus_registered_functions_table to
17760 xd_read_queued_messages.
17761 (xd_read_queued_messages): Protect xd_read_message calls by
17762 internal_condition_case_1.
17763
177642007-12-04 Michael Albinus <michael.albinus@gmx.de>
17765
17766 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17767 Qdbus_system_bus and Qdbus_session_bus, respectively.
17768 (Vdbus_intern_symbols): Remove.
17769 (Vdbus_registered_functions_table): New hash table.
17770 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17771 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17772 Rewrite in order to manage registered functions by hash table
17773 Vdbus_registered_functions_table.
17774
177752007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17776
17777 * xterm.c: Update URL to Window Manager Specification in comment.
17778
177792007-12-02 Michael Albinus <michael.albinus@gmx.de>
17780
17781 * config.in (HAVE_DBUS): Add.
17782
17783 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17784 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17785 (obj): Add $(DBUS_OBJ).
17786 (LIBES): Add $(DBUS_LIBS).
17787 (dbusbind.o): New target.
17788
17789 * dbusbind.c: New file.
17790
17791 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17792
17793 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17794 (Qdbus_event): New Lisp symbol.
17795 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17796 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17797 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17798
17799 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17800
178012007-12-01 Richard Stallman <rms@gnu.org>
17802
17803 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17804
178052007-11-30 Jason Rumney <jasonr@gnu.org>
17806
17807 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17808 (w32con_reset_terminal_modes): Clear screen buffer.
17809 (w32_face_attributes): Don't use color indexes that are out of range.
17810 Only reverse the default colors.
17811
17812 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17813 WINDOWSNT.
17814
17815 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17816
178172007-11-29 Jason Rumney <jasonr@gnu.org>
17818
17819 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17820 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17821 if the terminal colors are initialized.
17822 (unspecified_fg, unspecified_bg): Remove unused declarations.
17823
178242007-11-29 Andreas Schwab <schwab@suse.de>
17825
17826 * keyboard.c (apply_modifiers): Fix typo.
17827
178282007-11-29 Richard Stallman <rms@gnu.org>
17829
17830 * keymap.c (Fcurrent_local_map): Doc fix.
17831
178322007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17833
17834 * s/gnu-kfreebsd.h: New file.
17835
178362007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17837
17838 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17839 Don't cast redundantly.
17840
17841 * keyboard.c (KEY_TO_CHAR): New macro.
17842 (parse_modifiers, apply_modifiers): Accept integer arguments.
17843 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17844 for chars and symbol keys.
17845 After doing such remapping, apply function-key-map again.
17846
178472007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17848
17849 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17850 compiled anymore.
17851
178522007-11-26 Andreas Schwab <schwab@suse.de>
17853
17854 * process.c (list_processes_1): Fix indentation level of the
17855 command column.
17856
178572007-11-23 Andreas Schwab <schwab@suse.de>
17858
17859 * editfns.c (Fformat): Handle %c specially since it requires the
17860 argument to be of type int.
17861
178622007-11-23 Markus Triska <markus.triska@gmx.at>
17863
17864 * emacs.c (main): Call init_editfns before init_process, since
17865 init_process sets Vprocess_connection_type depending on OS release.
17866
178672007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17868
17869 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17870 (find_symbol_value): Use do_symval_forwarding.
17871
17872 * data.c (set_internal): Set the value in the `cons-cell' (for
17873 Buffer_Local_values) not only for frame-local variables.
17874
178752007-11-22 Andreas Schwab <schwab@suse.de>
17876
17877 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17878 values to sprintf.
17879 * keymap.c (Fsingle_key_description): Likewise.
17880 * print.c (print_object): Likewise.
17881
178822007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17883
17884 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17885 file for image is nil.
17886
178872007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17888
17889 * term.c: Include stdarg.h.
17890 (fatal): Implement using varargs.
17891 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17892
178932007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17894
17895 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17896 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17897 Update call to buffer_slot_type_mismatch.
17898 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17899 (buffer_slot_type_mismatch): Update.
17900 * buffer.c (buffer_local_types): Remove.
17901 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17902 (defvar_per_buffer): Set the type in the buffer_objfwd.
17903
179042007-11-21 Jason Rumney <jasonr@gnu.org>
17905
17906 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17907 CreateFileMapping returns NULL on failure.
17908
179092007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17910
17911 * search.c (Fset_match_data): Remove the `evaporate' feature.
17912 (unwind_set_match_data): Don't use the `evaporate' feature.
17913
179142007-11-21 Jason Rumney <jasonr@gnu.org>
17915
17916 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17917
17918 * w32console.c (w32con_write_glyphs): Remove unused variables.
17919
179202007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17921
17922 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17923
17924 * s/darwin.h (MULTI_KBOARD): Remove.
17925
17926 * macfns.c (x_create_tip_frame, Fx_create_frame)
17927 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17928
179292007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17930
17931 * buffer.c (Fbuffer_local_value): Remove redundant test.
17932 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17933 than in `current-buffer' to match the comment.
17934 Do the swap using swap_in_global_binding.
17935
17936 * data.c (store_symval_forwarding, set_internal):
17937 * eval.c (specbind): Remove dead code.
17938
17939 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17940 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17941 Since we do not want to see internal Lisp_*fwd objects here.
17942
179432007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17944
17945 * sysdep.c (init_system_name): Use getaddrinfo if available.
17946
17947 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17948 (x_scroll_bar_note_movement): start, end, with, height in struct
17949 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17950
179512007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17952
17953 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17954
179552007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17956
17957 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17958 This undoes Richard's change of 14-Oct-2002.
17959
17960 * alloc.c (allocate_other_vector):
17961 * lisp.h (allocate_other_vector): Remove.
17962
17963 * window.c (struct save_window_data): Move non-lisp data to the end
17964 and make it `int' rather than Lisp_Object.
17965 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17966 Done wrap/unwrap integer values.
17967 (Fset_window_configuration, compare_window_configurations):
17968 Update use of fields to their new types.
17969
17970 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17971 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17972 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17973 (SET_SCROLL_BAR_X_WINDOW): Remove.
17974 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17975 Access the new x_window field directly.
17976 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17977 Don't wrap/unwrap integers into Lisp_Objects.
17978 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17979 (x_scroll_bar_report_motion):
17980 Don't wrap/unwrap integers into Lisp_Objects.
17981 (x_term_init): Use SDATA.
17982 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17983 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17984 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17985 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17986 * xfns.c (x_set_background_color):
17987 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17988 Access the new x_window field directly.
17989
17990 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17991 (allocate_pseudovector): Make non-static.
17992
17993 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17994 (allocate_pseudovector): Declare.
17995 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17996
179972007-11-15 Andreas Schwab <schwab@suse.de>
17998
17999 * editfns.c (Fformat): Correctly format EMACS_INT values.
18000 Also take precision into account when formatting an integer.
18001
18002 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18003
180042007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18005
18006 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18007 (syms_of_keyboard): Defsubr it.
18008
18009 * data.c (swap_in_global_binding): Fix longstanding bug where
18010 store_symval_forwarding was not called with the right second argument,
18011 thus causing objfwd-ing from being dropped.
18012
180132007-11-14 Juanma Barranquero <lekktu@gmail.com>
18014
18015 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18016 (Fx_display_pixel_height, Fx_display_planes)
18017 (Fx_display_color_cells, Fx_server_max_request_size)
18018 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18019 (Fx_display_visual_class, Fx_display_save_under):
18020 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18021 (Fx_display_pixel_height, Fx_display_planes)
18022 (Fx_display_color_cells, Fx_server_max_request_size)
18023 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18024 (Fx_display_mm_height, Fx_display_mm_width)
18025 (Fx_display_backing_store, Fx_display_visual_class)
18026 (Fw32_select_font, Fx_display_save_under):
18027 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18028 (Fx_display_pixel_height, Fx_display_planes)
18029 (Fx_display_color_cells, Fx_server_max_request_size)
18030 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18031 (Fx_display_save_under): Fix typos in docstrings.
18032
180332007-11-14 Juanma Barranquero <lekktu@gmail.com>
18034
18035 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18036 corresponding to deleted entries; they are an implementation detail.
18037 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18038 Remove variables.
18039 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18040 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18041 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18042 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18043 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18044 (Fw32_define_rgb_color, Fw32_load_color_file)
18045 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18046 Fix typos in docstrings.
18047 (Fx_server_version): Reflow docstring.
18048 (Fw32_shell_execute): Doc fixes.
18049
180502007-11-13 Juanma Barranquero <lekktu@gmail.com>
18051
18052 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18053 if w32_parse_hot_key returned nil.
18054
180552007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18056
18057 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18058
180592007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18060
aac0c6e3
MR
18061 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18062
18063 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18064
18065 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18066 Remove W32_SCROLL_BAR_CLICK_EVENT.
18067
18068 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18069 Add MULTIMEDIA_KEY_EVENT.
18070
18071 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18072 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18073 (make_lispy_event) [WINDOWSNT]: Use it to translate
18074 MULTIMEDIA_KEY_EVENT.
18075
18076 * w32term.h (WM_APPCOMMAND): Define if not already.
18077 (GET_APPCOMMAND_LPARAM): Likewise.
18078
18079 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18080 WM_APPCOMMAND.
18081
18082 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18083 (syms_of_w32fns): Export and initialize it.
18084 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18085
180862007-11-09 Chong Yidong <cyd@stupidchicken.com>
18087
18088 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18089 twice.
18090
18091 * xdisp.c (handle_face_prop): Fix last change.
18092
180932007-11-09 Richard Stallman <rms@gnu.org>
18094
18095 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18096 not just for after-strings and before-strings.
18097 Call face_for_overlay_string and pass the overlay to it.
18098 (handle_display_prop): Determine whether property came from an overlay.
18099 Pass OVERLAY arg to handle_single_display_spec.
18100 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18101 (load_overlay_strings): Fill in it->string_overlays.
18102 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18103
18104 * xfaces.c (face_for_overlay_string): Function renamed from
18105 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18106
18107 * dispextern.h (struct it): New elt string_overlays.
18108 New elt from_overlay, also in stack.
18109 Rearrange a few elements.
18110 (face_for_overlay_string): Decl renamed from
18111 face_at_buffer_position_no_overlays, and add argument.
18112
181132007-11-09 Richard Stallman <rms@gnu.org>
18114
18115 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18116 to get the base face for an overlay string.
18117
18118 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18119
18120 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18121
18122 * xdisp.c (handle_stop): Move some code out of loop.
18123
181242007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18125
18126 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18127 Fix conversion from Lisp object to ATSUFontID.
18128
181292007-11-09 Jason Rumney <jasonr@gnu.org>
18130
18131 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18132
181332007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18134
18135 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18136 Don't assume regions are aligned to page boundary.
18137 (print_load_command_name): Add LC_UUID if defined.
18138
181392007-11-09 Richard Stallman <rms@gnu.org>
18140
18141 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18142
181432007-11-07 Jason Rumney <jasonr@gnu.org>
18144
18145 * s/windows95.h: Remove.
18146
181472007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18148
18149 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18150 abort with a message on unhandled store_type values.
18151
181522007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18153
18154 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18155 Remove HAVE_X11R5 and HAVE_X11R4.
18156
181572007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18158
18159 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18160
181612007-11-01 Johan Bockgård <bojohan@gnu.org>
18162
18163 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18164 Don't set s->stippled_p here, since it has already been set by
18165 x_set_glyph_string_gc from x_draw_glyph_string.
18166
181672007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18168
18169 * sunfns.c: Remove file.
18170
18171 * m/sun386.h:
18172 * m/sun2.h:
18173 * m/sparc.h: Remove Sun windows code.
18174
181752007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18176
18177 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18178 (init_keyboard): Set current_kboard's window-system to nil.
18179 (tty_read_avail_input): Typo.
18180 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18181
181822007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18183
18184 * s/usg5-4.h:
18185 * s/usg5-3.h:
18186 * s/ptx.h:
18187 * m/is386.h:
18188 * m/ibmps2-aix.h:
18189 * Makefile.in: Remove all mentions of X10.
18190
18191 * dispnew.c (syms_of_display): Don't mention version 10.
18192
181932007-10-28 Juanma Barranquero <lekktu@gmail.com>
18194
18195 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18196 ($(BLD)/abbrev.$(O)): Remove.
18197
181982007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18199
18200 Rewrite abbrev.c in Elisp.
18201 * image.c (Qcount): Don't declare as extern.
18202 (syms_of_image): Initialize and staticpro `Qcount'.
18203 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18204 * emacs.c (main): Don't call syms_of_abbrev.
18205 * Makefile.in (obj): Remove abbrev.o.
18206 (abbrev.o): Remove.
18207 * abbrev.c: Remove.
18208
182092007-10-26 Martin Rudalics <rudalics@gmx.at>
18210
18211 * window.c (window_min_size_2): Don't count header-line.
18212
182132007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18214
18215 * frame.h (struct frame): Move all bit fields after the first bit
18216 field to take advantage of the available space. Group all the
18217 chars together to reduce wasted space due to padding.
18218
182192007-10-26 Juanma Barranquero <lekktu@gmail.com>
18220
18221 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18222
18223 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18224 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18225 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18226 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18227 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18228 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18229 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18230 (last_marked, mark_object_loop_halt): Make static.
18231
18232 * frame.c (syms_of_frame) <delete-frame-functions>:
18233 Fix typo in docstring.
18234
182352007-10-25 Juanma Barranquero <lekktu@gmail.com>
18236
18237 * w32.c (init_environment): Fix tiny memory leak.
18238 (w32_get_resource): Remove unused variable `ok'.
18239
182402007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18241
18242 Make `window-system' into a keyboard-local variable (rather than
18243 frame-local as done originally by multi-tty).
18244
18245 * keyboard.h (struct kboard): Add Vwindow_system.
18246 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18247 (mark_kboards): Mark Vwindow_system.
18248
18249 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18250 (init_display): Don't set the obsolete `window-system' frame-param.
18251
18252 * xterm.c (x_term_init):
18253 * w32term.c (w32_create_terminal):
18254 * term.c (init_tty): Set Vwindow_system.
18255 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18256 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18257
18258 * xfns.c (Fx_create_frame, x_create_tip_frame):
18259 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18260 * macfns.c (Fx_create_frame):
18261 Don't set the obsolete `window-system' frame-param.
18262
18263 * frame.h (Qwindow_system): Remove.
18264 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18265 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18266
182672007-10-24 Richard Stallman <rms@gnu.org>
18268
18269 * frame.c (x_figure_window_size): For fullscreen case,
18270 set USPosition | PPosition without clobbering rest of window_prompting.
18271
18272 * keyboard.c (Fcurrent_idle_time): Doc fix.
18273
18274 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18275
182762007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18277
18278 * process.c (unwind_request_sigio): Only define if __ultrix__.
18279
18280 * callproc.c (child_setup): Remove spurious *.
18281
18282 * lisp.h (Fget_text_property): Declare.
18283 (have_menus_p): Declare it here rather than in sys-dep header files.
18284 * macterm.h (have_menus_p):
18285 * msdos.h (have_menus_p):
18286 * xterm.h (have_menus_p): Remove.
18287
18288 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18289 (Fmake_variable_frame_local): Just check the variable's const-ness
18290 rather than checking nil or t.
18291
182922007-10-22 Jason Rumney <jasonr@gnu.org>
18293
18294 * w32fns.c: Include math.h.
18295 (w32_abort): Declaration moved to nt/config.nt.
18296
18297 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18298 (abort): Redefinition moved to nt/config.nt.
18299
18300 * m/windowsnt.h: Remove.
18301
183022007-10-22 Juanma Barranquero <lekktu@gmail.com>
18303
18304 * emacs.c (Fdump_emacs): Fix typo in message.
18305 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18306 <installation-directory>: Reflow docstring.
18307
183082007-10-22 Juri Linkov <juri@jurta.org>
18309
18310 * minibuf.c: Allow minibuffer default to be a list of default values.
18311 With empty input use the first element of this list as returned default.
18312 (string_to_object)
18313 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18314 (read_minibuf): If defalt is cons, set histstring to its car.
18315 (Fread_string): If default_value is cons, set val to its car.
18316 (Fread_buffer): If def is cons, use its car.
18317 (Fcompleting_read): If defalt is cons, set val to its car.
18318
183192007-10-21 Michael Albinus <michael.albinus@gmx.de>
18320
18321 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18322
183232007-10-20 Juanma Barranquero <lekktu@gmail.com>
18324
18325 * doc.c (Fdocumentation): Check for advice in all cases.
18326
183272007-10-19 Chong Yidong <cyd@stupidchicken.com>
18328
18329 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18330
183312007-10-19 Richard Stallman <rms@gnu.org>
18332
18333 * doc.c (Fdocumentation): Check for and handle an advised function.
18334
183352007-10-19 Juanma Barranquero <lekktu@gmail.com>
18336
18337 * process.c (Fset_process_filter): Doc fix.
18338
183392007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18340
18341 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18342 which caused key-translation-map to applied repeatedly (thus breaking
18343 double-mode).
18344
183452007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18346
18347 * xselect.c (x_own_selection, x_handle_selection_clear)
18348 (x_clear_frame_selections):
18349 * w32menu.c (list_of_panes, list_of_items):
18350 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18351 * textprop.c (validate_plist, interval_has_all_properties)
18352 (interval_has_some_properties, interval_has_some_properties_list)
18353 (add_properties, text_property_list):
18354 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18355 * minibuf.c (Fassoc_string):
18356 * macselect.c (x_own_selection, x_clear_frame_selections)
18357 (Fx_disown_selection_internal):
18358 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18359 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18360
183612007-10-17 Chong Yidong <cyd@stupidchicken.com>
18362
18363 * process.c: Link to libs for calling res_init() if available.
18364 (Fmake_network_process): Call res_init() before getaddrinfo or
18365 gethostbyname, if possible.
18366
183672007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18368
18369 * lread.c (read1): Set pvectype for char_tables.
18370
18371 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18372 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18373 Add type checks.
18374 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18375
18376 * alloc.c (free_misc): Use XMISCTYPE.
18377 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18378
183792007-10-17 Glenn Morris <rgm@gnu.org>
18380
18381 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18382 (syms_of_minibuf): Add Qcompletion_ignore_case.
18383 * dired.c (Qcompletion_ignore_case): Change to external.
18384 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18385 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18386 (Fread_file_name): Use it rather than intern'ing.
18387
18388 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18389 (Fread_coding_system): Ignore case of user input.
18390
183912007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18392
18393 * xdisp.c (handle_display_prop): Ignore display specs after
18394 replacing one when string text is being replaced.
18395 (handle_single_display_spec): Pretend as if characters with display
18396 property haven't been consumed only when buffer text is being replaced.
18397
183982007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18399
18400 * xfns.c (Fx_create_frame, Fx_display_list):
18401 * window.c (window_fixed_size_p, enlarge_window)
18402 (shrink_window_lowest_first):
18403 * macterm.c (init_font_name_table):
18404 * macfns.c (Fx_create_frame, Fx_display_list):
18405 * lread.c (close_load_descs):
18406 * keyboard.c (read_char_x_menu_prompt):
18407 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18408 * coding.c (code_convert_region_unwind): Test the type of an object
18409 rather than just !NILP before extracting data from it.
18410
18411 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18412
18413 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18414 (XMISCANY): New macro.
18415 (XMISCTYPE): Use it.
18416 (struct Lisp_Misc_Any): New type.
18417 (union Lisp_Misc): Use it.
18418 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18419 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18420 (find_symbol_value, set_internal, default_value, Fset_default)
18421 (Fmake_variable_buffer_local, Fmake_local_variable)
18422 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18423 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18424 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18425 * alloc.c (allocate_buffer): Set the size and tag.
18426 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18427 Use XMISCANY.
18428 (die): Follow the GNU convention for error messages.
18429 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18430 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18431 tag any more.
18432 (set_buffer_internal_1):
18433 * frame.c (store_frame_param):
18434 * eval.c (specbind):
18435 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18436
18437 * doc.c (Fsnarf_documentation): Simplify.
18438
184392007-10-14 Juanma Barranquero <lekktu@gmail.com>
18440
18441 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18442 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18443
184442007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18445
18446 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18447
184482007-10-14 Juanma Barranquero <lekktu@gmail.com>
18449
18450 * eval.c (do_autoload): Don't save autoloads.
18451
18452 * data.c (Ffset): Save autoload of the function being set.
18453
184542007-10-07 John Paul Wallington <jpw@pobox.com>
18455
18456 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18457 parameter before setting up faces.
18458
184592007-10-13 Eli Zaretskii <eliz@gnu.org>
18460
18461 * ccl.c (Fregister_code_conversion_map):
18462 * keyboard.c (append_tool_bar_item): Reformat last change.
18463
18464 * lisp.h (eabs): Rename from `abs'. All callers changed.
18465
184662007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18467
18468 * buffer.c (add_overlay_mod_hooklist):
18469 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18470 * fontset.c (make_fontset):
18471 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18472 (append_tool_bar_item):
18473 * macmenu.c (grow_menu_items):
18474 * w32menu.c (grow_menu_items):
18475 * xmenu.c (grow_menu_items): Use larger_vector.
18476
184772007-10-13 Eli Zaretskii <eliz@gnu.org>
18478
18479 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18480 selected frame'' on MSDOS).
18481
184822007-10-12 Martin Rudalics <rudalics@gmx.at>
18483
18484 * frame.c (Qexplicit_name): New variable.
18485 (x_report_frame_params): Report it in parameter alist.
18486 (syms_of_frame): Intern and staticpro it.
18487
184882007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18489
18490 * macfns.c (x_create_tip_frame): Set terminal for frame.
18491
184922007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18493
18494 * frame.c (Qenvironment): Remove.
18495 (syms_of_frame) <Qenvironment>: Don't initialize.
18496 (Fdelete_frame): Don't treat the `environment' param specially.
18497 * frame.h (Qenvironment): Don't declare.
18498 * callproc.c (set_initial_environment): Don't set unused frame param.
18499
18500 * frame.c (Fframe_with_environment): Remove.
18501 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18502
18503 * lisp.h (Fframe_with_environment): Don't declare.
18504
185052007-10-10 Juanma Barranquero <lekktu@gmail.com>
18506
18507 * indent.c (indent_tabs_mode, last_known_column)
18508 (last_known_column_modified): Make static.
18509 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18510
185112007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18512
18513 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18514
185152007-10-09 Jason Rumney <jasonr@gnu.org>
18516
18517 * w32term.c (x_set_window_size): Disable code that attempts to tell
18518 Lisp code about a size change before it actually happens.
18519
185202007-10-09 Richard Stallman <rms@gnu.org>
18521
18522 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18523 return HANDLED_RETURN.
18524
185252007-10-08 Martin Rudalics <rudalics@gmx.at>
18526
18527 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18528 when there's an unread command event.
18529
18530 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18531 window autoselection act appropriately when leaving selected frame.
18532 (syms_of_frame): Initialize focus_follows_mouse.
18533 * frame.h (focus_follows_mouse): Extern it.
18534 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18535 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18536 * msdos.c (dos_rawgetc): Likewise.
18537 * w32term.c (w32_read_socket): Likewise.
18538 * xterm.c (handle_one_xevent): Likewise.
18539 * xdisp.c (syms_of_xdisp): In doc-string of
18540 mouse-autoselect-window mention focus-follows-mouse.
18541
185422007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18543
18544 * macterm.c (mac_load_query_font): Fix missing return value.
18545 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18546 Add BLOCK_INPUT.
18547
185482007-10-08 Richard Stallman <rms@gnu.org>
18549
18550 * xdisp.c (get_window_cursor_type): Implement documented behavior
18551 for cursor-in-non-selected-windows = t.
18552
185532007-10-08 Jason Rumney <jasonr@gnu.org>
18554
18555 * w32.c (w32_get_resource): Always close registry keys.
18556
185572007-10-08 Jason Rumney <jasonr@gnu.org>
18558
18559 * makefile.w32-in (LIBS): Add COMCTL32.
18560
18561 * w32fns.c (globals_of_w32fns): Init common controls.
18562
185632007-10-08 Richard Stallman <rms@gnu.org>
18564
18565 * image.c (our_memory_buffer): Rename from omfib_buffer.
18566
185672007-10-08 Richard Stallman <rms@gnu.org>
18568
18569 * buffer.c (Foverlays_at): Doc fix.
18570
185712007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18572
18573 * fns.c (Fplist_put): Preserve uneven tail data.
18574
185752007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18576
18577 * termhooks.h (enum event_kind): Remove trailing comma.
18578
18579 * frame.h (enum): Remove trailing comma.
18580
185812007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18582
18583 * w32proc.c (delete_child): Don't terminate threads of zombies.
18584
185852007-10-08 Martin Rudalics <rudalics@gmx.at>
18586
18587 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18588
18589 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18590 last-repeatable-command.
18591 (init_kboard): Initialize Vlast_repeatable_command.
18592 (command_loop_1): Set it to real_this_command unless that was
18593 bound to an input event.
18594 (mark_kboards): Mark it.
18595
185962007-10-08 Richard Stallman <rms@gnu.org>
18597
18598 * eval.c (condition-case): Doc fix.
18599
186002007-10-08 Masatake YAMATO <jet@gyve.org>
18601
18602 * xfaces.c (tty_supports_face_attributes_p): Fix code
18603 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18604 was copied and not edited.
18605
186062007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18607
18608 Add new `input-decode-map' keymap and use it for terminal
18609 escape sequences.
18610 * keyboard.h (struct kboard): Add Vinput_decode_map.
18611 Remove Vlocal_key_translation_map.
18612 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18613 (init_kboard): Init input-decode-map.
18614 Replace local-key-translation-map back with key-translation-map.
18615 (syms_of_keyboard): Declare input-decode-map.
18616 Remove local-key-translation-map. Update docstrings.
18617 (mark_kboards): Mark Vinput_decode_map.
18618 Don't mark Vlocal_key_translation_map.
18619 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18620 Replace local-key-translation-map back with key-translation-map.
18621 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18622 Bind in input-decode-map rather than function-key-map.
18623
18624 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18625 This was made redundant by the previous introduction of XSETPVECTYPE.
18626
186272007-10-09 Richard Stallman <rms@gnu.org>
18628
18629 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18630
186312007-09-29 Richard Stallman <rms@gnu.org>
18632
18633 * eval.c (internal_condition_case_2, internal_condition_case_1)
18634 (internal_condition_case): Reenable abort if x_catching_errors ()
18635 to see if that really happens and why.
18636
186372007-10-06 Andreas Schwab <schwab@suse.de>
18638
18639 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18640
186412007-10-04 Juanma Barranquero <lekktu@gmail.com>
18642
18643 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18644
186452007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18646
18647 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18648
186492007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18650
18651 * window.h (struct window):
18652 * window.c (struct save_window_data, struct saved_window):
18653 * termhooks.h (struct terminal):
18654 * process.h (struct Lisp_Process):
18655 * frame.h (struct frame):
18656 * buffer.h (struct buffer):
18657 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18658 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18659 The size field of (pseudo)vectors is now unsigned.
18660 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18661
18662 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18663 Turn `count' into an integer.
18664
18665 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18666 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18667 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18668 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18669 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18670
18671 * alloc.c (allocate_pseudovector): New fun.
18672 (ALLOCATE_PSEUDOVECTOR): New macro.
18673 (allocate_window, allocate_terminal, allocate_frame)
18674 (allocate_process): Use it.
18675 (mark_vectorlike): New function.
18676 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18677 (mark_terminals): Use it.
18678 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18679 (Fmake_byte_code): Use XSETPVECTYPE.
18680
18681 * frame.c (Fframe_parameters): Minor simplification.
18682
18683 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18684
18685 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18686
18687 * buffer.c (Fget_buffer_create, init_buffer_once):
18688 * lread.c (defsubr):
18689 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18690
18691 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18692 defined differently in the m/*.h files.
18693 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18694 (XSETPVECTYPE): New macro.
18695 (XSETPSEUDOVECTOR): Use it.
18696
18697 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18698 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18699
18700 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18701 * lread.c (defvar_per_buffer):
18702 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18703
18704 * window.c (candidate_window_p): Only consider as visible frames that
18705 are on the same terminal.
18706
18707 * m/ibms390x.h (MARKBIT): Remove unused macro.
18708
187092007-10-01 Juanma Barranquero <lekktu@gmail.com>
18710
18711 * lread.c (Fload): Fix typo in docstring.
18712
187132007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18714
18715 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18716 of a non-zero value can't yield zero.
18717
187182007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18719
18720 * term.c (term_clear_mouse_face, term_mouse_highlight)
18721 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18722
18723 * print.c (safe_debug_print): Use XHASH.
18724
18725 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18726 Lisp elements such as tags.
18727 (XHASH): New macro.
18728 (EQ): Use it.
18729 (SREF, SSET, STRING_COPYIN): Use SDATA.
18730 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18731
18732 * alloc.c (mark_terminal): Remove left-over declaration.
18733 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18734 (allocate_vectorlike): Remove type argument. Adjust callers.
18735 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18736 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18737
18738 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18739 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18740 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18741 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18742 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18743 Use them.
18744
18745 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18746 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18747 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18748
187492007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18750
18751 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18752 loaded by default.
18753
187542007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18755
18756 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18757 on this tty.
18758 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18759
18760 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18761 Update all users.
18762 (handle_one_term_event): Use Gpm_DrawPointer.
18763 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18764 Signal errors instead of returning nil. Always return nil.
18765 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18766 Make it a noop if gpm-mouse was not activated.
18767 (syms_of_term): Update names.
18768
187692007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18770
18771 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18772 (init_sys_modes): Check that gpm_tty is the current tty.
18773
18774 * alloc.c (allocate_terminal): Set the vector size to only count the
18775 lisp fields. Initialize those to nil.
18776 (mark_object): Don't treat terminals specially.
18777 (mark_terminal): Remove.
18778 (mark_terminals): Use mark_object instead.
18779
18780 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18781 the GC to the beginning.
18782
18783 * indent.h:
18784 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18785
18786 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18787
187882007-09-25 Jason Rumney <jasonr@gnu.org>
18789
18790 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18791
18792 * w32console.c (create_w32cons_output): Remove.
18793
18794 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18795
18796 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18797 (reset_sys_modes): Use reset_terminal_modes_hook.
18798
187992007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18800
18801 * eval.c (do_autoload): Don't output any message.
18802
188032007-09-24 Juri Linkov <juri@jurta.org>
18804
18805 * emacs.c (standard_args): Change priority of "--no-splash"
18806 from 40 to 3. Add "--no-desktop" with the same priority.
18807
188082007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18809
18810 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18811 and optimize the case where they are all 1.
18812
188132007-09-23 Johannes Weiner <hannes@saeurebad.de>
18814
18815 * lisp.h (abs): Define if not defined.
18816 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18817 Don't define `abs', since it's defined in lisp.h.
18818
188192007-09-22 Eli Zaretskii <eliz@gnu.org>
18820
18821 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18822 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18823 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18824 (init_tty): Use DEV_TTY instead of "/dev/tty".
18825 [WINDOWSNT]: No need to protect from NAME arg being null.
18826
188272007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18828
18829 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18830 up the tty state.
18831
188322007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18833
18834 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18835 (gpm_tty): Change its type.
18836 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18837 (gpm_tty): Change its type and initialize it.
18838 (Fterm_open_connection): Check the frame is indeed a tty.
18839 Use the new gpm_tty.
18840 (Fterm_close_connection): Use the new gpm_tty.
18841 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18842 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18843
188442007-09-21 Juanma Barranquero <lekktu@gmail.com>
18845
18846 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18847 underline_color, to draw strike-through.
18848
188492007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18850
18851 * lisp.h (allocate_terminal): Declare.
18852
18853 * window.c (candidate_window_p): Consider frames that are being placed
18854 by the user as somewhere between visible and iconified.
18855 (window_loop): Prefer windows on the current frame.
18856 (Fselect_window): Move the use of select-frame to the beginning so we
18857 can just delegate all the work (it'll call us back anyway).
18858
18859 * frame.c (Qdisplay_environment_variable):
18860 * frame.h (Qdisplay_environment_variable): Delete.
18861
18862 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18863 of the first arg, since that value may be a union.
18864
18865 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18866 parameter rather than Qdisplay_environment_variable. If all else
18867 fails, look for DISPLAY in initial-environment.
18868
188692007-09-21 Glenn Morris <rgm@gnu.org>
18870
18871 * Makefile.in (emacstool): Remove target.
18872 (lisp, shortlisp): Remove termdev.elc.
18873
188742007-09-21 Markus Triska <markus.triska@gmx.at>
18875
18876 * xterm.c (x_delete_display): Compile session management conditionally.
18877
188782007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18879
18880 * callproc.c (getenv_internal_1): New function.
18881 (getenv_internal): Use it.
18882 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18883
18884 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18885 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18886 (Fset_terminal_parameter): Work with dead terminals as well.
18887 (Fmodify_terminal_parameters): Remove.
18888
18889 * terminal.c (get_terminal): Handle terminals.
18890 Make sure the terminal returned is live.
18891 (create_terminal): Use allocate_terminal.
18892 (mark_terminals): Move to alloc.c.
18893 (delete_terminal): Use terminal->name as liveness status.
18894 NULL out fields after freeing their contents.
18895 Don't deallocate the object.
18896 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18897 rather than an int.
18898 (Fterminal_live_p): Accept non-integer arguments.
18899 (Fterminal_list): Return terminal objects rather than an ints.
18900
18901 * alloc.c (enum mem_type): New member for `terminal' objects.
18902 (allocate_terminal): New function.
18903 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18904 Handle terminals.
18905 (mark_terminal): New fun.
18906 (mark_terminals): Move from terminal.c.
18907
18908 * term.c (get_tty_terminal): Don't treat output_initial specially.
18909 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18910 (delete_tty): Use terminal->name as liveness status.
18911
18912 * termhooks.h (struct terminal): Make it into a pseudovector.
18913 Remove `deleted' replaced by checking `name's nullness.
18914
18915 * print.c (print_object): Handle terminals.
18916
18917 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18918 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18919
18920 * frame.c (make_terminal_frame):
18921 * keyboard.c (tty_read_avail_input):
18922 * w32term.c (x_delete_terminal):
18923 * xfns.c (Fx_create_frame, x_create_tip_frame):
18924 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18925
189262007-09-20 Glenn Morris <rgm@gnu.org>
18927
18928 * process.c (Fmake_network_process): Doc fix.
18929
189302007-09-19 Jason Rumney <jasonr@gnu.org>
18931
18932 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18933
189342007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18935
18936 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18937 Fix a C warning regarding variable constness.
18938
18939 * xterm.c (handle_one_xevent): Fix a C warning.
18940
189412007-09-18 Jason Rumney <jasonr@gnu.org>
18942
18943 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18944
189452007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18946
18947 * gtkutil.c (gdpy_def): New variable.
18948 (xg_initialize): Initialize gdpy_def.
18949 (xg_display_close): If no other display exists, set gdpy_def to a
18950 new connection.
18951
189522007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18953
18954 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18955 when we have no file name for the icon.
18956 (xg_tool_bar_expose_callback): Remove.
18957 (xg_create_tool_bar): Don't connect expose signal to
18958 xg_tool_bar_expose_callback.
18959 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18960
189612007-09-16 Andreas Schwab <schwab@suse.de>
18962
18963 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18964 values instead of zapping them.
18965
189662007-09-14 Glenn Morris <rgm@gnu.org>
18967
18968 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18969 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18970 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18971 scope and rename to omfib_buffer for clarity.
18972 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18973
189742007-09-14 Kenichi Handa <handa@m17n.org>
18975
18976 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18977
189782007-09-13 Jason Rumney <jasonr@gnu.org>
18979
18980 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18981
18982 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18983
18984 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18985 (mac_term_init): Call here instead, passing rif.
18986
189872007-09-13 Glenn Morris <rgm@gnu.org>
18988
18989 * s/hpux.h: No longer define `static' as nothing.
18990
189912007-09-13 Johan Bockgård <bojohan@gnu.org>
18992
18993 * callint.c (Fcall_interactively): Remove unused var `fun'.
18994
189952007-09-12 Romain Francoise <romain@orebokech.com>
18996
18997 * window.c (prefer_window_split_horizontally, display_buffer):
18998 Revert 2007-09-08 change.
18999
190002007-09-12 Glenn Morris <rgm@gnu.org>
19001
19002 * alloca.c: Remove file.
19003 * Makefile.in (alloca): Do not undef.
19004 (allocaobj, alloca.o): Remove.
19005 (otherobj): Remove allocaobj.
19006 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19007 * regex.c (C_ALLOCA): Remove all references and code that was only
19008 used when this was defined.
19009 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19010 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19011 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19012
19013 * Makefile.in (SOURCES, unlock, relock): Delete.
19014
19015 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19016 (menu_grab_callback): All uses changed.
19017
19018 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19019 (x_reply_selection_request): All uses changed.
19020
190212007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19022
19023 * lread.c (load_warn_old_style_backquotes): Change message to look
19024 better when it appears in the middle of byte-compiler messages.
19025
190262007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19027
19028 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19029
19030 * xterm.c (x_create_terminal): Add comment.
19031
19032 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19033
190342007-09-10 Richard Stallman <rms@gnu.org>
19035
19036 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19037
190382007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19039
19040 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19041 (DEFUN): Document `intspec', use it instead of `prompt'.
19042
19043 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19044
19045 * data.c (Finteractive_form): If the interactive specification starts
19046 with a `(', use it as a Lisp form.
19047
19048 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19049 name and file modes.
19050
19051 * callint.c (Fcall_interactively): Comment fixes.
19052
190532007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19054
19055 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19056 and compiled functions.
19057
190582007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19059
19060 * window.c (prefer_window_split_horizontally): New variable.
19061 (display_buffer): Consider splitting window horizontally depending
19062 on prefer_window_split_horizontally.
19063
190642007-09-08 Eli Zaretskii <eliz@gnu.org>
19065
19066 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19067
190682007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19069
19070 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19071
19072 * frame.c (x_set_frame_parameters): Check number is positive before
19073 using XFASTINT.
19074
19075 * window.c (freeze_window_start): Don't presume selected_window holds
19076 a window object.
19077 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19078
190792007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19080
19081 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19082
190832007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19084
19085 * window.c (Vsplit_window_preferred_function): New var.
19086 (Fdisplay_buffer): Use it.
19087 (syms_of_window): Export, and initialize it.
19088
190892007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19090
19091 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19092
190932007-09-06 Glenn Morris <rgm@gnu.org>
19094
19095 * gtkutil.c (menu_grab_callback) <cnt>:
19096 * xselect.c (x_reply_selection_request) <cnt>: Move static
19097 variable to file scope.
19098
190992007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19100
19101 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19102 consistent values of selected_frame and selected_window.
19103
191042007-09-04 Jason Rumney <jasonr@gnu.org>
19105
19106 * w32console.c (initialize_w32_display): Zero unused hooks.
19107
191082007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19109
19110 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19111 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19112
191132007-09-04 Jason Rumney <jasonr@gnu.org>
19114
19115 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19116 in w32console.c. Set up input. Remove XXX comments that have been
19117 confirmed as correct.
19118
19119 * s/ms-w32.h (MULTI_KBOARD): Define.
19120
19121 * w32console.c (one_and_only_w32cons): Remove.
19122 (initialize_w32_display): Take terminal argument.
19123
19124 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19125 initialize_w32_display.
19126 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19127
19128 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19129
19130 * keyboard.c (discard_mouse_events): Discard it.
19131 (make_lispy_event): Translate it to a lisp event.
19132 (lispy_wheel_names): Add wheel-left and right events.
19133 (syms_of_keyboard): Enlarge wheel_syms.
19134
19135 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19136 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19137
19138 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19139
19140 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19141 from WM_MOUSEHWHEEL.
19142 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19143
19144 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19145 terminal.
19146
19147 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19148 keyboard for the terminal.
19149
191502007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19151
19152 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19153 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19154 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19155 and resume-tty-function to resume-tty-hook.
19156 (Fsuspend_tty, Fresume_tty): Use new names.
19157
191582007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19159
19160 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19161 if it starts with "n:".
19162
191632007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19164
19165 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19166
191672007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19168
19169 * frame.h:
19170 * frame.c (Qterm_environment_variable): Remove.
19171 (syms_of_frame): Don't init and staticpro it.
19172
19173 * callproc.c (getenv_internal): Remove special case for $TERM.
19174
19175 * callproc.c (Vinitial_environment): New variable.
19176 (set_initial_environment): Initialize it.
19177 (syms_of_callproc): Declare it.
19178 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19179 TERM under which a process runs is never related to the TERM in which
19180 Emacs is running.
19181
191822007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19183
19184 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19185 * s/darwin.h: ... do it here.
19186
191872007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19188
19189 * lisp.h (set_initial_environment): Rename from set_global_environment.
19190
19191 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19192 removed by mistake on the multi-tty branch.
19193
19194 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19195 (Fmodify_frame_parameters): Return a value.
19196
19197 * image.c (png_load): Comment-out var only used in commented-out code.
19198
19199 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19200 before passing it to mark_object.
19201
19202 * xfaces.c (internal_resolve_face_name): Return a value.
19203 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19204
19205 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19206 (x_icon): Comment-out var only used in commented-out code.
19207
192082007-08-29 Romain Francoise <romain@orebokech.com>
19209
19210 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19211 QUIT hasn't been provided.
19212
192132007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19214
19215 * callproc.c (child_setup, getenv_internal): Use the
19216 display-environment-variable and term-environment-variable frame params.
19217 (set_initial_environment): Initialise Vprocess_environment.
19218
19219 * config.in: Disable multi-keyboard support on a mac.
19220
19221 * frame.c (Qterm_environment_variable)
19222 (Qdisplay_environment_variable): New variables.
19223 (syms_of_frame): Intern and staticpro them.
19224 (Fmake_terminal_frame): Disable output method test.
19225
19226 * frame.h: Declare them here.
19227
19228 * macfns.c (x_set_mouse_color): Get rif from the frame.
19229 (x_set_tool_bar_lines): Don't use updating_frame.
19230 (mac_window): Add 2 new parameters for consistency with other systems.
19231 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19232 frame parameters following what is done in X11 and w32. Don't use
19233 FRAME_MAC_DISPLAY_INFO.
19234 (Fx_open_connection, start_hourglass): Remove window-system check.
19235 (x_create_tip_frame): Get the keyboard from the terminal.
19236
19237 * macmenu.c: Reorder includes.
19238 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19239
19240 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19241 terminal parameter.
19242 (x_clear_frame): Add a frame parameter.
19243 (note_mouse_movement): Get rif from the frame.
19244 (mac_term_init): Initialize the terminal.
19245 (mac_initialize): Make static and move terminal initialization ...
19246 (mac_create_terminal): ... to this new function.
19247
19248 * macterm.h (struct mac_display_info): Add terminal.
19249 (mac_initialize): Delete declaration.
19250
19251 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19252
19253 * sysdep.c: Comment out text after #endif.
19254
19255 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19256 is defined. Better initialize ttys in windows. Use terminal
19257 specific mouse_position_hook.
19258
19259 * termhooks.h (union display_info): Add mac_display_info.
19260
19261 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19262 Set the default minibuffer frame, window_system and the rest of the
19263 frame parameters following what is done in X11.
19264
19265 * w32term.c (w32_initialize): Make static.
19266
19267 * xselect.c (x_handle_selection_clear): Only access
19268 terminal->kboard when MULTI_KBOARD is defined.
19269
19270 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19271 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19272
192732007-08-29 Jason Rumney <jasonr@gnu.org>
19274
19275 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19276 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19277
19278 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19279 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19280
19281 * keyboard.c (restore_kboard_configuration): Only define when
19282 MULTI_KBOARD defined.
19283
19284 * makefile.w32-in: Update dependancies from Makefile.in.
19285 (OBJ1): Add terminal.$(O)
19286
19287 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19288 Don't define function body.
19289 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19290
19291 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19292
19293 * w32.c (request_sigio, unrequest_sigio): Remove.
19294
19295 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19296 (w32con_clear_frame, w32con_clear_end_of_line)
19297 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19298 (w32con_delete_glyphs, w32con_set_terminal_window)
19299 (scroll_line, w32_sys_ring_bell): Add frame arg.
19300 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19301 Add terminal arg.
19302 (PICK_FRAME): Remove.
19303 (w32con_write_glyphs): Use frame specific terminal coding.
19304 (one_and_only_w32cons): New global variable.
19305 (initialize_w32_display): Use it for storing hooks.
19306 (create_w32cons_output): New function.
19307
19308 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19309 arg a frame.
19310
19311 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19312 Set window_system.
19313 (x_set_tool_bar_lines): Don't use updating_frame.
19314 (Fx_create_frame): Set terminal and ref count.
19315 (Fx_open_connection): Remove window-system check.
19316
19317 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19318
19319 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19320 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19321 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19322 Add frame arg.
19323 (x_delete_terminal, w32_create_terminal): New functions.
19324 (w32_term_init): Create a terminal.
19325 (w32_initialize): Move terminal specific initialization to
19326 w32_create_terminal.
19327
19328 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19329 (w32_clear_rect, w32_clear_area): Use background from frame.
19330 (w32_display_info): Add terminal.
19331 (w32_sys_ring_bell, x_delete_display): Declare here.
19332
19333 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19334
19335 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19336
193372007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19338
19339 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19340 Fix get_named_tty calls for the controlling tty.
19341
193422007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19343
19344 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19345
193462007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19347
19348 * term.c (tty_insert_glyphs): Add missing first parameter.
19349
193502007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19351
19352 * buffer.c (Fbuffer_list, Fbury_buffer):
19353 Take frame->buried_buffer_list into account.
19354
19355 * cm.c (current_tty): New variable, for cmputc().
19356 (cmputc): Use it.
19357 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19358 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19359 (cmgoto): Add tty parameter. Pass it on to calccost().
19360 Use emacs_tputs() instead of tputs().
19361
19362 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19363 tputs().
19364 (current_tty): New variable, for cmputc().
19365 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19366
19367 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19368 (internal_condition_case, internal_condition_case_1)
19369 (internal_condition_case_2): Don't abort when x_catching_errors.
19370
19371 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19372 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19373 prevent crashes caused by bogus longjmps in read_char.
19374
19375 * keymap.h (Fset_keymap_parent): Add EXFUN.
19376
19377 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19378 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19379 Remove redundant definition.
19380
19381 * macfns.c (x_set_mouse_color, x_make_gc):
19382 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19383
19384 * w32term.c (x_free_frame_resources):
19385 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19386 (w32_initialize): Use the accessor macros for terminal characteristics.
19387
19388 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19389 Use the accessor macros for terminal characteristics.
19390 * msdos.c (internal_terminal_init): Use the accessor macros for
19391 terminal characteristics.
19392 (ScreenVisualBell, internal_terminal_init):
19393 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19394
19395 * termopts.h (no_redraw_on_reenter): Declare.
19396
19397 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19398 (mark_terminals, mark_ttys): Declare.
19399 (Fgarbage_collect): Call them.
19400 (mark_object): Mark buried_buffer_list.
19401
19402 * prefix-args.c: Include stdlib.h for exit.
19403
19404 * syssignal.h: Add comment.
19405
19406 * indent.c: Include stdio.h.
19407
19408 * window.h (Vinitial_window_system): Declare.
19409 (Vwindow_system): Delete declaration.
19410
19411 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19412
19413 * image.c (lookup_image): Don't initialize `c' until the xasserts
19414 have been run.
19415
19416 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19417 FRAME_FOREGROUND_PIXEL.
19418
19419 * print.c (print_preprocess): Don't lose print_depth levels while
19420 iterating.
19421
19422 * widget.c (update_from_various_frame_slots):
19423 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19424
19425 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19426 frames.
19427 (window_internal_height): Remove bogus make_number call.
19428 (init_window_once): Call make_terminal_frame with two zero parameters.
19429
19430 * fileio.c (Fread_file_name): Update comment.
19431
19432 * callint.c (Fcall_interactively):
19433 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19434 Make sure it is correctly unwound.
19435
19436 * xsmfns.c (x_session_close): New function.
19437
19438 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19439 Delete declarations.
19440
19441 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19442 (x_output): Remove background_pixel and foreground_pixel fields.
19443 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19444 (x_delete_device, x_session_close): Declare.
19445
19446 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19447 (read_filtered_event): Call `read_char' with a local
19448 `wrong_kboard_jmpbuf'.
19449
19450 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19451 Don't call single_kboard_state. Use FRAME_RIF.
19452
19453 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19454 systems.
19455
19456 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19457 (Fframe_with_environment, Fset_input_meta_mode)
19458 (Fset_quit_char): EXFUN.
19459 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19460 (init_sys_modes, reset_sys_modes): Update prototypes.
19461 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19462
19463 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19464 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19465 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19466 Delete declarations.
19467 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19468 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19469 New declarations.
19470
19471 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19472 already does that during init_display(). Call syms_of_keymap
19473 before syms_of_keyboard. Call `syms_of_terminal'.
19474 Call set_initial_environment, not set_process_environment.
19475 (shut_down_emacs): Call reset_all_sys_modes() instead of
19476 reset_sys_modes().
19477
19478 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19479 (internal_resolve_face_name, resolve_face_name_error): New functions.
19480 (resolve_face_name): Protect against loops and errors thrown by Fget.
19481 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19482 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19483
19484 * scroll.c: Replace CURTTY() with local variables throughout the
19485 file (where applicable).
19486 (calculate_scrolling, calculate_direct_scrolling)
19487 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19488 characteristics.
19489
19490 * keymap.c (Vfunction_key_map): Remove.
19491 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19492 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19493 (Vkey_translation_map): Remove.
19494 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19495 (Fdescribe_buffer_bindings)
19496 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19497 Update for terminal-local key-translation-map.
19498
19499 * Makefile.in (callproc.o): Update dependencies.
19500 (lisp, shortlisp): Add termdev.elc.
19501 (obj): Add terminal.o.
19502 (terminal.o): Add dependencies.
19503 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19504 (data.o, fns.o): Add termhooks.h dependency.
19505 (SOME_MACHINE_LISP): Add dnd.elc.
19506 (minibuf.o): Fix typo.
19507 Update dependencies.
19508
19509 * data.c (do_symval_forwarding, store_symval_forwarding)
19510 (find_symbol_value): Use the selected frame's keyboard, not
19511 current_kboard.
19512
19513 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19514 Vwindow_system.
19515
19516 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19517 Fmenu_bar_open.
19518 (syms_of_xmenu): Update defsubr.
19519 (mouse_position_for_popup, Fx_popup_menu)
19520 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19521 (set_frame_menubar, free_frame_menubar)
b97439ce 19522 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19523 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19524 an X frame.
19525
19526 * xselect.c (x_own_selection): Abort if not an X frame.
19527 (some_frame_on_display): Check if it is an X frame.
19528 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19529
19530 * coding.c: Include frame.h and termhooks.h.
19531 (terminal_coding, keyboard_coding): Delete.
19532 (Fset_terminal_coding_system_internal)
19533 (Fset_keyboard_coding_system_internal)
19534 (Fkeyboard_coding_system)
19535 (Fterminal_coding_system): Add a terminal parameter.
19536 Get terminal_coding from the terminal.
19537 (init_coding_once): Don't call setup_coding_system here.
19538
19539 * dispextern.h (set_scroll_region, turn_off_insert)
19540 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19541 (tty_clear_end_of_line, tty_setup_colors)
19542 (delete_tty, updating_frame)
19543 (produce_special_glyphs, produce_glyphs, write_glyphs)
19544 (insert_glyphs): Remove.
19545 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19546 (tty_turn_off_highlight, get_tty_size): Add declaration.
19547 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19548
19549 * frame.h (enum output_method): Add output_initial.
19550 (struct x_output): Delete.
19551 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19552 Access foreground_pixel and background_pixel directly from the frame.
19553 (tty_display): Delete.
19554 (struct frame): Add buried_buffer_list, foreground_pixel,
19555 background_pixel and terminal. Delete kboard.
19556 (union output_data): Add tty.
19557 (FRAME_KBOARD): Get the kboard from the terminal.
19558 (FRAME_INITIAL_P): New macro.
19559 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19560 (Qterm_environment_variable, Qdisplay_environment_variable)
19561 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19562 New declarations.
19563
19564 * termchar.h (tty_output, tty_display_info): New structures.
19565 (tty_list): Declare.
19566 (FRAME_TTY, CURTTY): New macros.
19567 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19568 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19569 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19570 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19571
19572 * callproc.c: Include frame.h and termhooks.h, for terminal
19573 parameters.
19574 (add_env): New function.
19575 (child_setup): Use it.
19576 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19577 (getenv_internal): Fix get_terminal_param call.
19578 (Fgetenv_internal, egetenv): Update doc.
19579 (syms_of_callproc): Initialize Vprocess_environment to nil.
19580 Register and initialize them. Remove obsolete defvars. Update doc
19581 strings.
19582 (child_setup): Handle Vlocal_environment_variables.
19583 (getenv_internal): Add terminal parameter.
19584 Handle Vlocal_environment_variables.
19585 (Fgetenv_internal): Add terminal parameter.
19586 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19587 environment in a frame (not terminal) parameter. Update doc strings.
19588 (set_initial_environment): Rename from set_global_environment.
19589 Store Emacs environment in initial frame parameter.
19590
19591 * xdisp.c (redisplay_internal): Update references to
19592 `previous_terminal_frame'.
19593 (display_mode_line, Fformat_mode_line): Replace calls to
19594 `push_frame_kboard' with `push_kboard'.
19595 (get_glyph_string_clip_rects): Add extra parentheses and
19596 braces to prevent compiler warnings.
19597 (calc_pixel_width_or_height): Add xassert to check that the
19598 frame is alive. Don't call `lookup_image' on a termcap frame.
19599 (message2_nolog, message3_nolog, redisplay_internal)
19600 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19601 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19602 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19603 (Fx_display_pixel_width, Fx_display_pixel_height)
19604 (Fx_display_planes, Fx_display_color_cells)
19605 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19606 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19607 (Fx_display_backing_store, Fx_display_visual_class)
19608 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19609 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19610
19611 * xfns.c (x_set_foreground_color x_set_background_color)
19612 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19613 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19614 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19615 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19616 terminal that is being deleted.
19617 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19618 frame parameter, and make sure it overrides any user-supplied setting.
19619 (Fx_close_connection, Fx_synchronize): Unify argument names with
19620 the rest of the DEFUNs.
19621
19622 * dispnew.c (Fsend_string_to_terminal): Update call to
19623 `get_tty_terminal'.
19624 (Fredraw_frame, Fsend_string_to_terminal)
19625 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19626 FRAME_TERMCAP_P and FRAME_TTY.
19627 (window_change_signal): Don't believe width/height values that are
19628 impossibly small.
19629 (Vinitial_window_system): Rename from Vwindow_system.
19630 (termscript, Wcm, rif): Delete.
19631
19632 * termhooks.h (struct terminal): New struct containing the
19633 previously global text display hooks and new members NAME,
19634 DELETED and PARAM_ALIST.
19635 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19636 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19637 (FRAME_RIF): New macros.
19638 (get_terminal_param, get_device): New declarations.
19639 (termscript): Delete declaration.
19640
19641 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19642 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19643 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19644 FRAME_FOREGROUND_PIXEL.
19645 (x_fully_uncatch_errors): Disable definition.
19646 (x_scroll_bar_expose): Fix reference to foreground pixel.
19647 (XTread_socket): Disable loop on all X displays.
19648 (x_delete_terminal): Don't set terminal->deleted and let
19649 delete_terminal delete the frames on the terminal.
19650 (x_delete_display): Doc update to reflect changes in
19651 delete_terminal.
19652 (x_display_info) <terminal>: Move member earlier in the struct.
19653 (deleting_tty): Remove old variable.
19654 (Fsuspend_tty): Call clear_tty_hooks.
19655 (Fresume_tty, init_tty): Call set_tty_hooks.
19656 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19657 errors on X frames.
19658 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19659 (handle_one_xevent): Initialize `f' to NULL.
19660 (x_delete_terminal, x_create_terminal): New functions.
19661 (XTset_terminal_modes, XTreset_terminal_modes)
19662 (XTread_socket, x_connection_closed, x_term_init)
19663 (x_term_init, x_delete_display): Add terminal parameter.
19664 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19665 X connections.
19666
19667 * frame.c: Include termchar.h.
19668 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19669 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19670 (Qdisplay_environment_variable): New vars.
19671 (Fframep): Deal with output_initial.
19672 (Fframe-live-p): Doc fix.
19673 (Fwindow-system): New function.
19674 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19675 (make_terminal_frame): Don't create frames on a terminal that is
19676 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19677 (store_frame_param): Check for found_for_frame before calling XFRAME.
19678 (Fmake_terminal_frame): Handle NULL tty names correctly.
19679 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19680 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19681 frames to refer to a deleted frame in their 'environment parameter.
19682 (Fframe_with_environment): New function.
19683 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19684 (get_future_frame_param): New function.
19685 (Fmake_terminal_frame): Use it.
19686 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19687
19688 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19689 * sysdep.c (reset_sys_modes): Update for renames.
19690
19691 * keyboard.c (tty_read_avail_input): New function.
19692 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19693 (syms_of_keyboard): Defsubr them.
19694 (Fset_input_meta_mode, Fset_quit_char): New functions.
19695 (Fset_input_mode): Split to above functions.
19696 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19697 parameter. Use it in call to `read_char'.
19698 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19699 Set wrong_kboard_jmpbuf correctly in recursive calls.
19700 Use current_kboard to access Vkeyboard_translate_table.
19701 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19702 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19703 Update longjmp invocations. Remember the original current_kboard,
19704 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19705 changes it. Comment out unnecessary calls to
19706 `record_single_kboard_state' and `any_kboard_state'.
19707 Update recursive calls.
19708 (wrong_kboard_jmpbuf): Remove global variable.
19709 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19710 Handle deleted interrupted_kboards correctly; that is a legal
19711 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19712 and read_char calls. Abort if interrupted_kboard died in read_char.
19713 (any_kboard_state, single_kboard_state)
19714 (push_frame_kboard): Remove function.
19715 (pop_kboard): Switch out of single_kboard mode if the kboard has
19716 been deleted. Remove unused variable. Help debugging by not
19717 changing current_kboard unnecessarily. Set current_kboard to the
19718 kboard of the selected frame when the stored kboard object has
19719 been deleted before pop_kboard.
19720 (temporarily_switch_to_single_kboard): Change first parameter to a
19721 frame pointer. Throw an error when caller wants to change kboards
19722 while in single_kboard mode. Don't push_kboard if we weren't in
19723 single kboard state. Don't pop_kboard if we popped into any
19724 kboard state.
19725 (restore_kboard_configuration): Abort if pop_kboard changed the
19726 kboard in single_kboard mode. Call pop_kboard only after setting
19727 up single_kboard mode.
19728 (Frecursive_edit): Switch to single_kboard mode only in nested
19729 command loops.
19730 (cmd_error, command_loop, command_loop_1, timer_check):
19731 Comment out unnecessary call to `any_kboard_state' and
19732 `record_single_kboard_state'.
19733 (delete_kboard): Exit single_kboard mode if we have just deleted
19734 that kboard. Use FRAME_KBOARD.
19735 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19736 `fatal_error_signal'.
19737 (record_single_kboard_state): Don't push_kboard if we weren't in
19738 single kboard state. Don't pop_kboard if we popped into any
19739 kboard state.
19740 (push_frame_kboard): Rename to push_kboard.
19741 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19742 (read_avail_input): Read input from all terminals.
19743 (mark_kboards): Also mark Vkeyboard_translate_table.
19744 (kbd_buffer_store_event_hold): Simplify condition.
19745 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19746 (Vkeyboard_translate_table): Move to struct kboard.
19747 (init_kboard): Initialize Vkeyboard_translate_table.
19748 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19749 Vkeyboard_translate_table. Update doc strings. Update docs of
19750 local-function-key-map and function-key-map.
19751
19752 * terminal.c: New file.
19753
19754 * term.c: Include errno.h.
19755 (Vring_bell_function, device_list, initial_device)
19756 (next_device_id, ring_bell, update_begin, update_end)
19757 (set_terminal_window, cursor_to, raw_cursor_to)
19758 (clear_to_end, clear_frame, clear_end_of_line)
19759 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19760 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19761 (syms_of_term): Move their initialization to terminal.c.
19762 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19763 (Ftty_display_color_cells)
19764 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19765 (clear_tty_hooks, set_tty_hooks)
19766 (init_tty, maybe_fatal): New functions.
19767 (Ftty_type): Return nil if terminal is not on a tty instead of
19768 throwing an error. Doc update.
19769 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19770 Doc update. Initialize new subrs and variables.
19771 (delete_tty): Use terminal->deleted.
19772 (tty_set_terminal_modes): Rename from set_terminal_modes.
19773 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19774 (set_scroll_region): Rename to `tty_set_scroll_region'.
19775 (turn_on_insert): Rename to `tty_turn_on_insert'.
19776 (turn_off_insert): Rename to `tty_turn_off_insert'.
19777 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19778 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19779 (toggle_highligh): Rename to `tty_toggle_highlight'.
19780 (background_highlight): Rename to `tty_background_highlight'.
19781 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19782 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19783 (tty_set_scroll_region, tty_background_highlight)
19784 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19785 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19786 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19787 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19788 Add static modifier.
19789 (tty_reset_terminal_modes, tty_set_terminal_window)
19790 (tty_set_scroll_region, tty_background_highlight)
19791 (tty_highlight_if_desired, tty_cursor_to)
19792 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19793 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19794 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19795 renames.
19796
197972007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19798
19799 * keyboard.c: Qrtl is new.
19800 (parse_tool_bar_item): Handle :rtl keyword.
19801 (syms_of_keyboard): Intern :rtl keyword.
19802
19803 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19804
19805 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19806 so no Lisp code is executed.
19807 (file_for_image, find_rtl_image): New functions.
19808 (xg_get_image_for_pixmap): Use file_for_image.
19809 (update_frame_tool_bar): If direction is RTL, use RTL image if
19810 defined. Use Gtk stock images if defined.
19811
198122007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19813
19814 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19815 for nonexistent or zero-width glyph in composition glyph.
19816
198172007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19818
19819 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19820
19821 * xdisp.c (Finvisible_p): New function.
19822 (syms_of_xdisp): defsubr it.
19823
198242007-08-24 Juanma Barranquero <lekktu@gmail.com>
19825
19826 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19827 Doc fixes.
19828
198292007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19830
19831 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19832
198332007-08-24 Martin Rudalics <rudalics@gmx.at>
19834
19835 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19836 whether decoding has modified buffer contents.
19837
198382007-08-24 Jason Rumney <jasonr@gnu.org>
19839
19840 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19841 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19842 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19843 (init_svg_functions) [HAVE_NTGUI]: New function.
19844 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19845 (svg_load_image): Use them.
19846 (svg_load_image) [HAVE_NTGUI]: Implement background.
19847
198482007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19849
19850 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19851 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19852 (LIBX): Remove @RSVG_LIBS@.
19853 (LIBES): Add $(RSVG_LIBS).
19854
19855 * image.c (svg_load_image): Blend with specified background if exists.
19856 Use IMAGE_BACKGROUND. Add Mac OS Support.
19857
19858 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19859 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19860 Remove macros.
19861 [MAC_OSX] (socket_callback): Do nothing.
19862 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19863 ReceiveNextEvent.
19864 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19865 socket_callback.
19866 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19867
198682007-08-22 Glenn Morris <rgm@gnu.org>
19869
19870 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19871
198722007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19873
19874 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19875
19876 * image.c: Add support for SVG images. Some additional comments
19877 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19878 (svg_image_p): New function to test for SVG image.
19879 (svg_load): New function to load SVG image.
19880 (svg_load_image): New function, helper for svg_load.
19881 (Qsvg): New Lisp_object.
19882 (svg_keyword_index): New enum.
19883 (svg_format): New static `image_keyword' struct.
19884 (svg_type): New static `image_type' struct.
19885 (librsvg/rsvg.h): Include it.
19886
198872007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19888
19889 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19890
198912007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19892
19893 * lread.c (Qold_style_backquotes): New var.
19894 (syms_of_lread): Init and staticpro it.
19895 (load_warn_old_style_backquotes): New fun.
19896 (Fload): Use them to warn about old style backquotes.
19897 (end_of_file_error, Fload): Remove unused vars.
19898
19899 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19900
19901 * lread.c (Vold_style_backquotes): New var.
19902 (syms_of_lread): Init and export it to Elisp.
19903 (read1): Set it when we find an old-style (back)quote.
19904
199052007-08-22 Jason Rumney <jasonr@gnu.org>
19906
19907 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19908
199092007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19910
19911 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19912
199132007-08-19 Richard Stallman <rms@gnu.org>
19914
19915 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19916
199172007-08-19 Andreas Schwab <schwab@suse.de>
19918
19919 * alloc.c (pure): Round PURESIZE up.
19920
199212007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19922
19923 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19924 active frame.
19925
199262007-08-16 Richard Stallman <rms@gnu.org>
19927
19928 * eval.c (Fcommandp): Add parens to clarify.
19929
19930 * minibuf.c (Fall_completions): Use enum for type of table.
19931
19932 * emacs.c (USAGE2): Improve text.
19933
199342007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19935
19936 * term.c (tty_default_color_capabilities): Declare static
19937 variables in file scope, to avoid HPUX compiler problem.
19938
199392007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19940
19941 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19942 to gtk_toolbar_insert.
19943
199442007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19945
19946 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19947
19948 * insdel.c (reset_var_on_error): New fun.
19949 (signal_before_change, signal_after_change):
19950 Use it to reset (after|before)-change-functions to nil in case of error.
19951 Bind inhibit-modification-hooks to t.
19952 Don't bind (after|before)-change-functions to nil while they run.
19953
199542007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19955
19956 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19957 filling pixmap with stippled background.
19958
199592007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19960
19961 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19962 Don't use invisible frame as parent window for repositioning.
19963
199642007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19965
19966 * print.c (new_backquote_output): Rename from old_backquote_output.
19967 (print): Inverse its logic (according to its name) so as to match the
19968 behavior of new_backquote_flag in lread.c.
19969
199702007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19971
19972 * gmalloc.c (posix_memalign): New function.
19973
19974 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19975 ActivateControl/DeactivateControl here.
19976 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19977 frame-notice-user-settings is non-nil.
19978 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19979 for kEventParamFMFontStyle.
19980 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19981 mac_pass_command_to_system and mac_pass_control_to_system here.
19982 (XTread_socket): Call ActivateControl/DeactivateControl here.
19983 (XTread_socket) [TARGET_API_MAC_CARBON]:
19984 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19985 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19986 for window repositioning.
19987
199882007-08-08 Glenn Morris <rgm@gnu.org>
19989
19990 * Replace `iff' in doc-strings and comments.
19991
199922007-08-07 Chong Yidong <cyd@stupidchicken.com>
19993
19994 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19995
199962007-08-07 Martin Rudalics <rudalics@gmx.at>
19997
19998 * fileio.c (Finsert_file_contents): Run format-decode and
19999 after_insert_file_functions on entire buffer when REPLACE is
20000 non-nil and inhibit modification_hooks and point_motion_hooks.
20001 For consistency, run after_insert_file_functions iff something
20002 got inserted. Move signal_after_change and update_compositions
20003 after code running after_insert_file_functions. Make sure that
20004 undo_list doesn't record intermediate steps of the decoding process.
20005
200062007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20007
20008 * emacs.c (main)
20009 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20010 Call malloc_enable_thread on interactive startup.
20011
20012 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20013 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20014 [USE_PTHREAD]: Conditionalize with it.
20015 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20016 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20017 New functions.
20018
200192007-08-06 Chong Yidong <cyd@stupidchicken.com>
20020
20021 * xdisp.c (redisplay_window): When restoring original buffer
20022 position, make sure it is still valid.
20023
20024 * image.c (png_load): Ignore png-supplied background color.
20025
200262007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20027
20028 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20029 Use kCFAbsoluteTimeIntervalSince1970.
20030
20031 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20032 New variable.
20033 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20034 event loop should be quit.
20035 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20036 Quit dialog event loop if quit_dialog_event_loop is set.
20037
20038 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20039 (Selection): New typedef. Use instead of ScrapRef.
20040 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20041 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20042 (mac_clear_selection): Rename from clear_scrap.
20043 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20044 scrap_has_target_type. All uses changed.
20045 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20046 (mac_selection_has_target_p): New functions.
20047 (mac_put_selection_value): Rename from put_scrap_string.
20048 (mac_get_selection_value): Rename from get_scrap_string.
20049 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20050 (put_scrap_private_timestamp, scrap_has_target_type)
20051 (get_scrap_private_timestamp): Remove functions.
20052 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20053 (x_own_selection, x_get_local_selection):
20054 Use mac_valid_selection_value_p.
20055 (x_own_selection): Don't use put_scrap_private_timestamp.
20056 Record OWNERSHIP-INFO into Vselection_alist instead.
20057 (x_get_local_selection): Don't check type if request is local.
20058 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20059 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20060
200612007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20062
20063 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20064 add comment explaining why.
20065
200662007-08-03 Richard Stallman <rms@gnu.org>
20067
20068 * fileio.c (Fvisited_file_modtime): Use make_time.
20069
200702007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20071
20072 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20073 build.
20074
200752007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20076
20077 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20078
200792007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20080
20081 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20082
200832007-07-30 Richard Stallman <rms@gnu.org>
20084
20085 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20086
200872007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20088
20089 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20090
200912007-07-28 Nick Roberts <nickrob@snap.net.nz>
20092
20093 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20094 remote default-directory.
20095
20096 * buffer.c (mode-line-format): Update doc string.
20097
200982007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20099
20100 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20101 scroll bar gap.
20102 (x_scroll_bar_create): Set bar->fringe_extended_p.
20103 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20104 on frame edge. Check fringe background extension. Don't clear
20105 extended fringe background area.
20106
20107 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20108 (w32_fill_area): Enclose multiple statements with do ... while (0).
20109
20110 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20111 Extend fringe background to scroll bar gap.
20112 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20113 Set bar->fringe_extended_p.
20114 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20115 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20116 background extension. Don't clear extended fringe background area.
20117
20118 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20119 New member fringe_extended_p.
20120
201212007-07-25 Glenn Morris <rgm@gnu.org>
20122
20123 * Relicense all FSF files to GPLv3 or later.
20124
20125 * COPYING: Switch to GPLv3.
20126
201272007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20128
20129 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20130
20131 * data.c (Finteractive_form): Check for the presence of an
20132 `interactive-form' symbol property more thoroughly.
20133
20134 * data.c (Finteractive_form): Use an `interactive-form' property if
20135 present, analogous to the function-documentation property.
20136
201372007-07-24 Jason Rumney <jasonr@gnu.org>
20138
20139 * w32fns.c (x_real_positions): Get real position from OS instead of
20140 calculating it.
20141
201422007-07-23 Jason Rumney <jasonr@gnu.org>
20143
20144 * filelock.c (current_lock_owner): Allow for @ sign in username.
20145
201462007-07-22 Nick Roberts <nickrob@snap.net.nz>
20147
20148 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20149 remote default-directory.
20150
20151 * buffer.c (mode-line-format): Describe above case in doc string.
20152
201532007-07-20 Eli Zaretskii <eliz@gnu.org>
20154
20155 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20156 Define if not defined.
20157
201582007-07-18 Jason Rumney <jasonr@gnu.org>
20159
20160 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20161
201622007-07-18 Richard Stallman <rms@gnu.org>
20163
20164 * data.c (Fsetq_default): Doc fix.
20165
20166 * eval.c (Fsetq): Doc fix.
20167
201682007-07-18 Juanma Barranquero <lekktu@gmail.com>
20169
20170 * coding.c (Ffind_operation_coding_system):
20171 * eval.c (For, Fand): Doc fixes.
20172 Reported by Johan Bockgård.
20173
201742007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20175
20176 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20177
20178 * xterm.h: Declare x_ewmh_activate_frame.
20179
20180 * xterm.c (x_ewmh_activate_frame): New function.
20181 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20182
201832007-07-17 Martin Rudalics <rudalics@gmx.at>
20184
20185 * window.c (Fdisplay_buffer): If largest or LRU window is the
20186 only window, split it even if it is not eligible for splitting.
20187 This restores the original behavior broken by the 2007-07-15
20188 change.
20189
201902007-07-17 Glenn Morris <rgm@gnu.org>
20191
20192 * abbrev.c (abbrev_check_chars): New function.
20193 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20194 Call abbrev_check_chars to check abbrev characters are word
20195 constituents. Doc fix.
20196
201972007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20198
20199 * process.c (Fstart_process, Fmake_network_process)
20200 (read_process_output): Fix up last changes.
20201
202022007-07-16 Eli Zaretskii <eliz@gnu.org>
20203
20204 * makefile.w32-in (clean): Don't delete *~.
20205
202062007-07-16 Andreas Schwab <schwab@suse.de>
20207
20208 * window.c (Fdisplay_buffer): Use NILP.
20209 (Fset_window_scroll_bars): Likewise.
20210
202112007-07-15 Martin Rudalics <rudalics@gmx.at>
20212
20213 * window.c (window_min_size_2): New function.
20214 (window_min_size_1, size_window, Fdisplay_buffer)
20215 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20216 windows without mode- or header-lines when window-min-height is
20217 too small.
20218 (size_window): Reset nodelete_p after testing it, following an
20219 earlier note by Kim F. Storm.
20220 (display_buffer): Do not set split_height_threshold to twice the
20221 value of window_min_height to avoid changing the value of a
20222 customizable variable. Rather explicitly check whether the
20223 height of the window that shall be splitted is at least as large
20224 as split_height_threshold.
20225 (Fwindow_full_width_p): New defun.
20226 (syms_of_window): Defsubr it.
20227
20228 * window.h: Add EXFUN for Fwindow_full_width_p.
20229
202302007-07-14 Jason Rumney <jasonr@gnu.org>
20231
20232 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20233
202342007-07-14 Richard Stallman <rms@gnu.org>
20235
20236 * eval.c (maybe_call_debugger): New function.
20237 (find_handler_clause): Use maybe_call_debugger.
20238 Call it when the handler says `debug'.
20239 Eliminate DEBUGGER_VALUE_PTR.
20240 (Fsignal): Eliminate debugger_value.
20241 (Qdebug): New variable.
20242 (syms_of_eval): Initialize it.
20243
202442007-07-14 Juanma Barranquero <lekktu@gmail.com>
20245
20246 * eval.c (Fprogn):
20247 * keyboard.c (Ftrack_mouse):
20248 * print.c (Fwith_output_to_temp_buffer):
20249 * window.c (Fsave_window_excursion): Doc fix.
20250
202512007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20252
20253 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20254
202552007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20256
20257 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20258 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20259 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20260 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20261 Remove unused encoding_carryover.
20262 * process.c: Adjust all functions accordingly.
20263
202642007-07-12 Richard Stallman <rms@gnu.org>
20265
20266 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20267
202682007-07-11 Jason Rumney <jasonr@gnu.org>
20269
20270 * makefile.w32-in (LIBS): Include OLE32.
20271
20272 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20273 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20274
202752007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20276
20277 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20278 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20279 from a Lisp_Object into a bare pointer.
20280 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20281 Adjust the code correspondingly.
20282
20283 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20284
20285 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20286 (term_show_mouse_face): Remove unused var `j'.
20287 (handle_one_term_event): Remove unused vars `i' and `j'.
20288 Don't cast return value of ttyname since it's not necessary.
20289
202902007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20291
20292 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20293 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20294
20295 * fns.c (map_char_table): Use an array of int for `indices' rather than
20296 an array of Lisp_Objects (which are only ever integers anyway).
20297 (Fmap_char_table): Update caller.
20298 * lisp.h: Update prototype.
20299 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20300 * fontset.c (Ffontset_info):
20301 * casetab.c (set_case_table): Update callers.
20302
20303 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20304
20305 * keymap.c (struct accessible_keymaps_data)
20306 (struct where_is_internal_data): New structures.
20307 (accessible_keymaps_1, where_is_internal_1): Use them to change
20308 interface to adhere to the one used by map_keymap.
20309 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20310 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20311
20312 * keymap.h (map_keymap_function_t): More informative prototype.
20313
203142007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20315
20316 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20317 (looking_at_1): Don't change search_regs and last_thing_searched
20318 if `inhibit-changing-match-data' is non-nil.
20319 (string_match_1, search_buffer, set_search_regs): Likewise.
20320 (syms_of_search): Add Lisp level definition for
20321 `inhibit-changing-match-data' and set it to nil.
20322 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20323 start and end of the match, instead of using values in search_regs.
20324
203252007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20326
20327 * minibuf.c (Fcompleting_read): New value `confirm-only'
20328 for `require-match'.
20329
203302007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20331
20332 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20333 part of the 2007-06-27 change to syms_of_fileio.
20334
203352007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20336
20337 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20338 Check WINDOWP before using XWINDOW. Consolidate return statements.
20339
203402007-06-27 Richard Stallman <rms@gnu.org>
20341
20342 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20343
203442007-06-27 Juanma Barranquero <lekktu@gmail.com>
20345
20346 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20347
203482007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20349
20350 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20351 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20352 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20353 (_free_internal, memalign): Use them.
20354 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20355 Initialize to PTHREAD_MUTEX_INITIALIZER.
20356 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20357 (morecore_nolock): Rename from morecore. All uses changed.
20358 Use only nolock versions of internal allocation functions.
20359 (_malloc_internal_nolock, _realloc_internal_nolock)
20360 (_free_internal_nolock): New functions created from
20361 _malloc_internal, _realloc_internal, and _free_internal.
20362 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20363 Copy hook value to automatic variable before its use.
20364 (memalign): Copy hook value to automatic variable before its use.
20365
203662007-06-26 Kenichi Handa <handa@m17n.org>
20367
20368 * coding.c (Ffind_operation_coding_system): Docstring improved.
20369 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20370
203712007-06-25 David Kastrup <dak@gnu.org>
20372
20373 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20374 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20375 cater for additional parameter.
20376
20377 * keymap.h: Adjust number of parameters to `current-active-maps'.
20378
20379 * doc.c (Fsubstitute_command_keys): Adjust call of
20380 `current-active-maps'.
20381
203822007-06-25 David Kastrup <dak@gnu.org>
20383
20384 * callint.c (Fcall_interactively): Make the parsing of interactive
20385 specs somewhat more readable.
20386
203872007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20388
20389 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20390 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20391 if extended background has already been filled.
20392
203932007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20394
20395 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20396 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20397
20398 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20399 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20400 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20401 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20402 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20403 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20404 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20405 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20406 Run timers during dialog popup.
20407 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20408
204092007-06-21 Jason Rumney <jasonr@gnu.org>
20410
20411 * image.c (convert_mono_to_color_image): Swap fore and background.
20412
204132007-06-20 Jason Rumney <jasonr@gnu.org>
20414
20415 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20416 (w32_free_bdf_font): Unmap memory not handle.
20417
204182007-06-20 Sam Steingold <sds@gnu.org>
20419
20420 * gmalloc.c (__morecore): Fix the declaration to comply with the
20421 definition.
20422
204232007-06-20 Juanma Barranquero <lekktu@gmail.com>
20424
20425 * w32term.c (w32_delete_display): Remove leftover declaration.
20426 (w32_define_cursor, w32_initialize): Make static.
20427
20428 * w32.c (_wsa_errlist): Fix typo in error message.
20429 (init_environment): Ignore any environment variable from the
20430 registry having a null value.
20431
204322007-06-20 Glenn Morris <rgm@gnu.org>
20433
20434 * Makefile.in (LIBGIF): Default to -lgif.
20435
204362007-06-17 Jason Rumney <jasonr@gnu.org>
20437
20438 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20439 unicode strings.
20440
204412007-06-16 Juanma Barranquero <lekktu@gmail.com>
20442
20443 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20444 Fix typo in docstring.
20445
204462007-06-16 Eli Zaretskii <eliz@gnu.org>
20447
20448 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20449 and their keybindings.
20450
204512007-06-15 Chong Yidong <cyd@stupidchicken.com>
20452
20453 * composite.c (update_compositions): Fix last fix.
20454
204552007-06-14 Jason Rumney <jasonr@gnu.org>
20456
20457 * w32.c (get_process_times_fn): New function pointer.
20458 (globals_of_w32): Intialize it if present in kernel32.dll.
20459 (w32_get_internal_run_time): New function.
20460
20461 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20462
204632007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20464
20465 * composite.c (update_compositions): Check the validness of
20466 compositions.
20467
204682007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20469
20470 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20471 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20472
20473 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20474 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20475
20476 * macgui.h (USE_MAC_TOOLBAR): New define.
20477
20478 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20479 Return immediately unless popup is activated.
20480
20481 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20482 background to scroll bar gap.
20483 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20484 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20485 scroll bars on frame edge. Check fringe background extension.
20486 Don't clear extended fringe background area.
20487 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20488 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20489 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20490 [USE_MAC_TOOLBAR]: New macros.
20491 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20492 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20493 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20494 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20495 [USE_MAC_TOOLBAR]: New functions.
20496 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20497 manually if previous repositioning has failed.
20498 (mac_handle_keyboard_event): Use precomputed event kind.
20499 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20500 as tool bar item click. Handle mouse movement over tool bar items.
20501
20502 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20503 toolbar_win_gravity.
20504 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20505 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20506 Add externs.
20507
20508 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20509 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20510
205112007-06-14 Chong Yidong <cyd@stupidchicken.com>
20512
20513 * image.c (search_image_cache): Remove unused variable.
20514
205152007-06-13 Chong Yidong <cyd@stupidchicken.com>
20516
20517 * xfns.c, xmenu.c: Link to xaw3d if available.
20518
205192007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20520
20521 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20522 frame_foreground and frame_background.
20523
20524 * image.c (lookup_image): Save frame foreground and background colors.
20525 (search_image_cache): Check if saved and current frame colors match.
20526
205272007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20528
20529 * regex.c (regex_compile): Remove the `regnum' counter.
20530 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20531
205322007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20533
20534 * term.c: Include intervals.h to declare Fget_text_property.
20535
205362007-06-10 Jason Rumney <jasonr@gnu.org>
20537
20538 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20539
205402007-06-08 Juanma Barranquero <lekktu@gmail.com>
20541
20542 * callint.c (Fcall_interactively):
20543 * editfns.c (Fdelete_and_extract_region):
20544 * fileio.c (Fread_file_name):
20545 * fns.c (Fmapconcat):
20546 * keyboard.c (cmd_error_internal):
20547 * keymap.c (Fkey_description):
20548 * lread.c (openp):
20549 * minibuf.c (read_minibuf):
20550 * search.c (wordify):
20551 * sunfns.c (sel_read):
20552 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20553 * xfns.c (x_default_scroll_bar_color_parameter):
20554 * xmenu.c (menu_help_callback):
20555 * xselect.c (Fx_get_atom_name):
20556 * xterm.c (x_term_init): Use empty_unibyte_string.
20557
205582007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20559
20560 * alloc.c (init_strings): Initialize canonical empty strings.
20561 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20562 canonical empty string when the requested size is 0.
20563
20564 * emacs.c (empty_unibyte_string): Rename from empty_string.
20565 (empty_multibyte_string): New canonical empty string.
20566 (syms_of_emacs): Don't initialize empty_string.
20567
20568 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20569 string, if appropriate.
20570 (empty_unibyte_string, empty_multibyte_string): New externs.
20571 (empty_string): Remove extern.
20572
20573 * lread.c (syms_of_lread): Use empty_unibyte_string.
20574
205752007-06-07 Jason Rumney <jasonr@gnu.org>
20576
20577 * s/ms-w32.h: Don't define HAVE_TZNAME.
20578
20579 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20580
205812007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20582
20583 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20584
20585 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20586 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20587
20588 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20589 Don't call next handler.
20590 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20591 Remove argument. Install handler to application.
20592 (set_frame_menubar): Don't change deep_p.
20593 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20594 FRAME_OUTER_TO_INNER_DIFF_Y.
20595 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20596 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20597 [HAVE_DIALOGS]: New macros.
20598 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20599 Use them.
20600 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20601
20602 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20603 init_service_handler. All callers changed. Return OSStatus value.
20604
20605 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20606 All callers changed so as not to call SetPortWindowPort.
20607 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20608 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20609 mac_draw_string_common.
20610 (mac_draw_image_string_qd): Likewise.
20611 (mac_draw_string_common): Use them. Add INLINE.
20612 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20613 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20614 GetGlobalMouse.
20615 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20616 and FRAME_OUTER_TO_INNER_DIFF_Y.
20617 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20618 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20619 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20620 repositioning window to mac_handle_window_event.
20621 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20622 saving window location to mac_handle_window_event
20623 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20624 (install_menu_target_item_handler): Remove argument in extern.
20625 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20626 Also accept command events.
20627 (do_keystroke): New function created from XTread_socket.
20628 (init_command_handler): Remove functions.
20629 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20630 and save window location by kEventWindowShowing and kEventWindowHiding
20631 handlers here. Don't call next handler for window state change and
20632 focus events.
20633 (mac_handle_application_event, mac_handle_keyboard_event)
20634 [TARGET_API_MAC_CARBON]: New functions.
20635 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20636 kEventWindowShowing and kEventWindowHiding events. Move installation
20637 of mouse, font, text input and menu target item handlers to
20638 install_application_handler.
20639 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20640 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20641 New function.
20642 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20643 Register it.
20644 (XTread_socket) [TARGET_API_MAC_CARBON]:
20645 Consolidate SendEventToEventTarget calls.
20646 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20647 Move application activation handler to mac_handle_application_event.
20648 Move keyboard handler to mac_handle_keyboard_event.
20649 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20650 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20651 init_command_handler. Call install_application_handler.
20652
20653 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20654 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20655
206562007-06-07 Glenn Morris <rgm@gnu.org>
20657
20658 * emacs.c (main): Use `emacs-copyright' in --version output.
20659
206602007-06-06 Chong Yidong <cyd@stupidchicken.com>
20661
20662 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20663
206642007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20665
20666 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20667
20668 * macgui.h: Replace WindowPtr with WindowRef.
20669
20670 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20671 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20672 Replace ControlHandle with ControlRef.
20673 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20674
20675 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20676 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20677 Replace ControlHandle with ControlRef.
20678 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20679 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20680
20681 * macterm.h (struct scroll_bar): Rename member control_handle_low
20682 and control_handle_high to control_ref_low and control_ref_high.
20683 All uses changed.
20684 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20685 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20686 respectively. All uses changed.
20687 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20688 (install_window_handler, remove_window_handler): Replace WindowPtr
20689 with WindowRef in externs.
20690
206912007-06-05 Juanma Barranquero <lekktu@gmail.com>
20692
20693 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20694
206952007-06-03 Nick Roberts <nickrob@snap.net.nz>
20696
20697 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20698
20699 * frame.c (Fmouse_position, Fmouse_pixel_position):
20700 Condition on HAVE_GPM too.
20701
20702 * term.c (term_mouse_highlight): Remove unused variables.
20703 (Fterm_open_connection): Set gpm_zerobased to 1.
20704 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20705 Use zero based co-ordinates.
20706 (handle_one_term_event): Report a drag as mouse movement too.
20707
20708 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20709
207102007-06-03 Chong Yidong <cyd@stupidchicken.com>
20711
20712 * image.c (search_image_cache): New function. Require background
20713 color match if background color is unspecified in the image spec.
20714 (uncache_image, lookup_image): Use it.
20715
207162007-06-01 Juanma Barranquero <lekktu@gmail.com>
20717
20718 * window.c (Fshrink_window): Reflow docstring.
20719
207202007-06-02 Chong Yidong <cyd@stupidchicken.com>
20721
20722 * Version 22.1 released.
20723
207242007-06-01 Richard Stallman <rms@gnu.org>
20725
20726 * xfns.c (x_encode_text): Add GCPRO.
20727
207282007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20729
20730 * xfns.c (x_set_name_internal): Save encoded name before
20731 x_encode_text in case string data is relocated.
20732
207332007-05-31 Richard Stallman <rms@gnu.org>
20734
20735 * buffer.c (syms_of_buffer): Doc fix.
20736
207372007-05-30 Nick Roberts <nickrob@snap.net.nz>
20738
20739 * sysdep.c (init_sys_modes): Add rather than replace with
20740 O_NONBLOCK.
20741
20742 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20743 term_mouse_moveto.
20744
20745 * termhooks.h (term_mouse_moveto): New extern.
20746
20747 * term.c (mouse_face_window): Rename...
20748 (Qmouse_face_window): ...to this.
20749 (term_show_mouse_face, term_clear_mouse_face)
20750 (term_mouse_highlight): Use Qmouse_face_window.
20751 (term_mouse_moveto): New function.
20752 (term_mouse_position): Make it work.
20753 (syms_of_term): Uncomment assignment to mouse_position_hook.
20754 Staticpro Qmouse_face_window.
20755
207562007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20757
20758 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20759 around current_column call.
20760
207612007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20762
20763 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20764 * xdisp.c (next_element_from_buffer):
20765 * window.c (delete_window):
20766 * term.c (term_mouse_highlight):
20767 * msdos.c (getdefdir):
20768 * macterm.c (mac_create_bitmap_from_bitmap_data)
20769 (init_font_name_table):
20770 * fns.c (Fsxhash):
20771 * data.c (Fmake_local_variable):
20772 * ccl.c (ccl_driver): Likewise.
20773
207742007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20775
20776 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20777 Call mac_wakeup_from_rne on window size change.
20778
207792007-05-25 Chong Yidong <cyd@stupidchicken.com>
20780
20781 * image.c (uncache_image): Fix typo.
20782
207832007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20784
20785 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20786
207872007-05-22 Richard Stallman <rms@gnu.org>
20788
20789 * xterm.c (x_connection_closed): Remove NO_RETURN.
20790
207912007-05-22 Martin Rudalics <rudalics@gmx.at>
20792
20793 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20794
207952007-05-21 Chong Yidong <cyd@stupidchicken.com>
20796
20797 * image.c (uncache_image): New function.
20798 (Fimage_refresh): New function.
20799
208002007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20801
20802 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20803
208042007-05-20 Nick Roberts <nickrob@snap.net.nz>
20805
20806 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20807 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20808
208092007-05-20 Nick Roberts <nickrob@snap.net.nz>
20810
20811 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20812 conditional on [HAVE_GPM_H].
20813
208142007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20815
20816 * syntax.c (skip_chars): Update syntax-table only after we checked that
20817 the new location is valid.
20818
208192007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20820
20821 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20822 mac_get_window_bounds.
20823
208242007-05-20 Nick Roberts <nickrob@snap.net.nz>
20825
20826 * Makefile.in (LIBGPM): Allow it to be set from configure.
20827 If set then link Emacs with it.
20828
20829 * config.in: Regenerate.
20830
20831 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20832 New externs.
20833
20834 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20835 Include gpm.h.
20836 (handle_one_term_event, term_gpm): New externs.
20837
20838 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20839 and allow it to be interrupted by SIGIO.
20840
20841 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20842 (wait_reading_process_output): Wait on gpm_fd too.
20843 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20844 (add_gpm_wait_descriptor_called_flag): New variable.
20845 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20846
20847 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20848 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20849 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20850 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20851 (make_lispy_event): Add case GPM_CLICK_EVENT.
20852 (read_avail_input): Handle mouse input.
20853
20854 * term.c (write_glyphs_with_face): New function.
20855 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20856 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20857 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20858 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20859 (last_mouse_x, last_mouse_y): New variables.
20860 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20861 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20862 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20863 (Fterm_close_connection): New functions.
20864 (term_init): Initialise mouse_face_window.
20865
208662007-05-19 Chong Yidong <cyd@stupidchicken.com>
20867
20868 * xdisp.c (redisplay_window): If first window line is a
20869 continuation line, recompute the new window start instead of
20870 recentering.
20871
208722007-05-18 Glenn Morris <rgm@gnu.org>
20873
20874 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20875 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20876
208772007-05-17 Glenn Morris <rgm@gnu.org>
20878
20879 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20880
208812007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20882
20883 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20884 dead key repeat and up events.
20885
208862007-05-14 Chong Yidong <cyd@stupidchicken.com>
20887
20888 * image.c (pbm_load): Check image size for monochrome pbm.
20889
208902007-05-13 Chong Yidong <cyd@stupidchicken.com>
20891
20892 * xterm.c (XTread_socket): Revert last change.
20893
208942007-05-12 Chong Yidong <cyd@stupidchicken.com>
20895
20896 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20897
20898 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20899
209002007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20901
20902 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20903 mixup (YAILOM).
20904
209052007-05-07 Andreas Schwab <schwab@suse.de>
20906
20907 * keymap.c (Flookup_key): Fix typo in last change.
20908
209092007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20910
20911 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20912 mapping for unibyte strings.
20913
209142007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20915
20916 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20917 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20918
209192007-04-29 Richard Stallman <rms@gnu.org>
20920
20921 * insdel.c (replace_range): For undo, record insertion first.
20922
209232007-04-29 Andreas Schwab <schwab@suse.de>
20924
20925 * lisp.h (VECSIZE): Use OFFSETOF.
20926
209272007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20928
20929 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20930 disabled lines.
20931
209322007-04-28 Richard Stallman <rms@gnu.org>
20933
20934 * lread.c (read_escape): In a string, \s is always space.
20935
209362007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20937
20938 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20939
20940 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20941 submenu for menu bar items.
20942
20943See ChangeLog.10 for earlier changes.
20944
20945;; Local Variables:
20946;; coding: utf-8
20947;; add-log-time-zone-rule: t
aac0c6e3
MR
20948;; End:
20949
76b6f707 20950 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20951
20952 This file is part of GNU Emacs.
20953
20954 GNU Emacs is free software: you can redistribute it and/or modify
20955 it under the terms of the GNU General Public License as published by
20956 the Free Software Foundation, either version 3 of the License, or
20957 (at your option) any later version.
20958
20959 GNU Emacs is distributed in the hope that it will be useful,
20960 but WITHOUT ANY WARRANTY; without even the implied warranty of
20961 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20962 GNU General Public License for more details.
20963
20964 You should have received a copy of the GNU General Public License
20965 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20966
20967;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40