(xg_tool_bar_proxy_help_callback): Fix missing return.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
2cc7b62f
AS
12009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2
eba5eb94
AS
3 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
4
2cc7b62f
AS
5 Fix implicit function declarations.
6 * cmds.c: Include "frame.h".
7 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
8 * frame.h: Move declaration of delete_frame outside of
9 HAVE_WINDOW_SYSTEM.
10
a4ef73c8
CY
112009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
12
13 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
14
15 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
16 GTK builds.
17
944a300c
AS
182009-12-07 Andreas Schwab <schwab@linux-m68k.org>
19
20 * unexelf.c (unexec): Don't search for .data twice.
21
022eef62
CY
222009-12-05 Chong Yidong <cyd@stupidchicken.com>
23
426ac949
CY
24 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
25 if push failed.
26 (handle_line_prefix): Set avoid_cursor_p here. Check return value
27 of push_display_prop (Bug#5000).
28
022eef62
CY
29 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
30 value of font_list_entities (Bug#5085).
31
be95bee9
JB
322009-12-04 Juanma Barranquero <lekktu@gmail.com>
33
34 Fix `string-to-number' to deal consistently with integers and floats.
35 * lread.c (isfloat_string): New argument ignore_trailing to accept all
36 trailing characters, not just whitespace.
37 (read1): Pass new arg 0 to keep old behavior.
38 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
39 trailing chars, as it is already done for integers. Doc fixes.
40 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
41
24c2d7ce
EZ
422009-12-04 Eli Zaretskii <eliz@gnu.org>
43
44 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
45 unused enumeration value.
46
7e694795
EZ
472009-12-03 Eli Zaretskii <eliz@gnu.org>
48
49 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
50
84b31826
SM
512009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
52
53 * process.c (Fmake_network_process): Fix up the tests for
54 "connectionless socket", so they DTRT for seqpacket sockets as well.
55
f00c449b
SM
562009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
57
58 * process.c (Qseqpacket): New symbol.
59 (HAVE_SEQPACKET): New macro.
60 (Fmake_network_process): Accept new :type `seqpacket'.
61 (init_process): Add `seqpacket' feature when applicable.
62 (syms_of_process): Initialize Qseqpacket.
63
8096a0ff
YM
642009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
65
66 * font.c (font_load_for_lface, font_open_by_name): Don't store name
67 if entity is Qnil.
68
3e0de07f
SM
692009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
70
71 * print.c (print_preprocess): Preprocess the key_and_value table of
72 hashtables, even tho they're "hidden" (bug#5082).
73
abeafb2a
JD
742009-11-29 Jan Djärv <jan.h.d@swipnet.se>
75
76 * frame.c (frame_make_pointer_invisible)
77 (frame_make_pointer_visible): Declare f before statements.
78
4bf47195
EZ
792009-11-28 Eli Zaretskii <eliz@gnu.org>
80
81 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
82 omitted dependencies on lisp.h.
83
c525b3f2
JD
842009-11-27 Jan Djärv <jan.h.d@swipnet.se>
85
ece2d4ed
JD
86 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
87 is NULL.
88
89 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
90
91 * frame.c (frame_make_pointer_invisible)
3e0de07f 92 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
93 frame.
94
c525b3f2
JD
95 * search.c (simple_search): Remove warning by making *p const.
96
2f00e299
DN
972009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
98
99 * xdisp.c (power_letter): Remove duplicate const.
100
084b049b
JD
1012009-11-25 Jan Djärv <jan.h.d@swipnet.se>
102
a1fadc6f
JD
103 * term.c (delete_tty): Remove check for last terminal (bug#4970).
104
084b049b
JD
105 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
106 defaults (bug #5025).
107
28259cac
SM
1082009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
109
110 * insdel.c (adjust_markers_for_delete): Move it in the
111 right direction! (bug#4803)
112
e8e14166
YM
1132009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
114
115 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
116
117 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
118
86677b58
GM
1192009-11-24 Glenn Morris <rgm@gnu.org>
120
121 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
122
581e51e8
JD
1232009-11-23 Jan Djärv <jan.h.d@swipnet.se>
124
cfc86c7a
JD
125 * Makefile.in: Must create deps for ecrt0.o in its rule.
126
581e51e8
JD
127 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
128 because that is what Gtk+ font dialog understands.
129
130 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
131 of Fcopy_sequence.
132 (font_open_by_name): Put name given into QCname for font-object returned.
133
134 * frame.c (x_set_font): Save original font name as frame parameter
135 font-parameter.
136
137 * xsettings.c (set_default_xft_settings): New function.
138 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
139 is found.
140
8b264ecb
AS
1412009-11-22 Andreas Schwab <schwab@linux-m68k.org>
142
143 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
144 searching backwards through multibyte buffer.
145
872870b2
JD
1462009-11-21 Jan Djärv <jan.h.d@swipnet.se>
147
148 * xterm.c: #include xgselect.h.
149 (x_initialize): Call xgselect_initialize.
150
151 * xsettings.c (something_changedCB): C++ comments => C comments.
152 (init_gconf): Do not deal with any GLib file descriptors, xg_select
153 does that now.
154
155 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
156 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
157 (scroll_bar_button_cb): Remove.
158 (create_menus): C++ comments => C comments. Don't bind grab-notify
159 event.
160 (xg_create_scroll_bar): Don't bind button-press-event and
161 button-release-event.
162
163 * process.c: Include xgselect.h if defined (USE_GTK) ||
164 defined (HAVE_GCONF).
165 (wait_reading_process_output): Call xg_select for the same condition.
166
167 * xgselect.c (xg_select): New function to better integrate with
168 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
169
170 * xgselect.h: New file, declare xg_select, xgselect_initialize.
171
172 * Makefile.in (XOBJ): Add xgselect.o.
173
62a6e103
AS
1742009-11-21 Andreas Schwab <schwab@linux-m68k.org>
175
176 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
177 ignored second argument. All callers changed.
178 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
179 (RE_STRING_CHAR_AND_LENGTH): Likewise.
180 * xdisp.c (string_char_and_length): Likewise.
181
b0ca0f33
DN
1822009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
183
184 * xterm.c (x_new_font):
185 * print.c (print_object):
186 * cmds.c (Fself_insert_command): Move declarations before statements.
187
dd5a6279
CY
1882009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
189
190 * s/cygwin.h: Remove unneeded linker flags.
191
4a8e097d
JD
1922009-11-20 Jan Djärv <jan.h.d@swipnet.se>
193
0d1d0d26
JD
194 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
195
196 * xsettings.h: Declare xsettings_get_system_font.
197
198 * xsettings.c (xsettings_get_system_font): New function.
199 (init_gconf): No use initiating gconf unless we have Xft also.
200 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
201 HAVE_GCONF.
202
4a8e097d
JD
203 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
204 add a blank entry so it doesn't collapse into nothing.
205
8ab1650e
SM
2062009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
207
208 * lread.c (Funintern): Comment out last change.
209
82c602f0
RS
2102009-11-19 Richard Stallman <rms@gnu.org>
211
212 * lread.c (Funintern): Error if symbol is t or nil.
213
87e32266
SM
2142009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
215
216 * insdel.c (make_gap_larger): Don't make as many assumptions about the
217 representation of Lisp integers.
218 Reported by MJ Chan <mjchan.inbox@gmail.com>.
219
1b9ac145
AS
2202009-11-17 Andreas Schwab <schwab@linux-m68k.org>
221
222 * lisp.h: Remove declaration of Ffont_get_system_font.
223 * xfns.c: Move include of "xsettings.h".
224 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
225
dfb3c4c6
JD
2262009-11-17 Jan Djärv <jan.h.d@swipnet.se>
227
87e32266
SM
228 * xsettings.c (something_changedCB, Ffont_get_system_font):
229 Check use_system_font.
dfb3c4c6
JD
230 (syms_of_xsettings): DEFVAR font-use-system-font.
231
9370c1d8
AS
2322009-11-17 Andreas Schwab <schwab@linux-m68k.org>
233
25fe851a
AS
234 * xfns.c (x_default_font_parameter): Remove dead assignment.
235
9370c1d8
AS
236 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
237
637fa988
JD
2382009-11-17 Jan Djärv <jan.h.d@swipnet.se>
239
87e32266 240 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 241 not have FC_LCD_*. #define them if not there.
a6eb20d8 242
87e32266 243 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 244
637fa988
JD
245 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
246
247 * xterm.c (handle_one_xevent): Call xft_settings_event for
248 ClientMessage, PropertyNotify and DestroyNotify.
249 (x_term_init): If we have XFT, get DPI from Xft.dpi.
250 Call xsettings_initialize.
251
252 * xftfont.c (xftfont_fix_match): New function.
253 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
254 Call xftfont_fix_match after XftFontMatch.
255
256 * xfont.c (xfont_driver): Initialize all members.
257
87e32266
SM
258 * xfns.c (x_default_font_parameter):
259 Try font from Ffont_get_system_font.
637fa988
JD
260 Do not get font from x_default_parameter if we got one from
261 Ffont_get_system_font.
87e32266 262 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
263
264 * w32font.c (w32font_driver): Initialize all members.
265
266 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
267
268 * lisp.h: Declare syms_of_xsettings.
269
87e32266
SM
270 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
271 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
272
273 * ftfont.c (ftfont_filter_properties): New function.
274
275 * frame.c (x_set_font): Remove unused variable lval.
276
87e32266 277 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
278
279 * font.c (font_put_extra): Don't return if val is nil, it means
280 boolean option is off.
281 (font_parse_fcname): Collect all extra properties in extra_props
282 and call filter_properties for all drivers with extra_props and
283 font as parameter.
87e32266
SM
284 (font_open_entity): Do not use cache, it does not pick up new
285 fontconfig settings like hinting.
637fa988
JD
286 (font_load_for_lface): If spec had a name in it, store it in entity.
287
288 * emacs.c (main): Call syms_of_xsettings
289
290 * config.in: HAVE_GCONF is new.
291
292 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
293 xsettings.o is new.
294
5a942932
KH
2952009-11-17 Kenichi Handa <handa@m17n.org>
296
297 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
298 back to the default font in case that no suitable font is found.
299
b7c7a4d1
SM
3002009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
301
302 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
303 Suggested by Chad Brown <yandros@mit.edu>.
304 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
305
072f1e39
JD
3062009-11-16 Jan Djärv <jan.h.d@swipnet.se>
307
308 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
309
5d1e70a2
AS
3102009-11-14 Andreas Schwab <schwab@linux-m68k.org>
311
87e32266 312 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 313
a53cfbe5
JD
3142009-11-14 Jan Djärv <jan.h.d@swipnet.se>
315
473a99b7
JD
316 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
317 has a parent.
318
a53cfbe5
JD
319 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
320 dependency files in deps/. Include those files into Makefile.
321
322 * config.in: Generated (AUTO_DEPEND).
323
f04bb9b2
MA
3242009-11-13 Michael Albinus <michael.albinus@gmx.de>
325
b7c7a4d1 326 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
327 Vdbus_registered_functions_table, because it contains also
328 properties. Fix docstring.
b7c7a4d1 329 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 330
8f11f7ec
SM
3312009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
332
333 * alloc.c (mark_object): Don't reprocess marked strings.
334 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
335 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
336
8a605fe8
KH
3372009-11-13 Kenichi Handa <handa@m17n.org>
338
8f11f7ec 339 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
340 semantics of Vword_combining_categories.
341 (Vword_combining_categories): Describe the slight change of the
342 semantics.
343
241c4680
EZ
3442009-11-13 Eli Zaretskii <eliz@gnu.org>
345
346 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
347
348 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
349
5d58e44c
SM
3502009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
351
352 * xdisp.c (syms_of_xdisp): Fix typo in last change.
353
5e13f9d3
JB
3542009-11-12 Juanma Barranquero <lekktu@gmail.com>
355
356 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
357
cf54c754
DR
3582009-11-11 David Reitter <david.reitter@gmail.com>
359
360 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
361 variables to fix 2009-11-09 change.
362
a4ada374
DN
3632009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
364
91433552
DN
365 * process.c (ifflag_def): Make flag_sym constant.
366 (Fnetwork_interface_info): Use a constant pointer.
367 (ifflag_table):
368 * xfns.c (cursor_bits):
369 * xdisp.c (power_letter):
370 * termcap.c (speeds, esctab):
371 * sysdep.c (baud_convert):
372 * keyboard.c (lispy_accent_codes, modifier_names):
373 * image.c (xbm_format, xpm_format, pbm_format, png_format)
374 (jpeg_format, tiff_format, gif_format, svg_format)
375 (interlace_start, interlace_increment, gs_format):
376 * gtkutil.c (separator_names):
377 * fringe.c (swap_nibble):
378 * fns.c (base64_value_to_char, base64_char_to_value):
379 * fileio.c (make_temp_name_tbl):
380 * coding.c (suffixes): Make constant.
381
f4265f6c
DN
382 * frame.c (make_initial_frame):
383 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
384 build_string.
385 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
386
04420943
DN
387 * s/freebsd.h:
388 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
389
0a5d24ae
DN
390 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
391 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
392
a4ada374
DN
393 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
394 * xterm.c (syms_of_xterm):
395 * xfaces.c (syms_of_xfaces):
396 * xdisp.c (syms_of_xdisp):
397 * lread.c (syms_of_lread):
398 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
399 build_string.
91433552 400
a4ada374
DN
401 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
402
af98fc7f
SM
4032009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
404
8ab1650e 405 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 406
e90292a9
JD
4072009-11-10 Jan Djärv <jan.h.d@swipnet.se>
408
409 * keyboard.h: Declare timer_check.
410
411 * keyboard.c (timer_check_2): New function that does what the old
412 timer_check did.
413 (timer_check): Call timer_check_2 until -1 or a non-zero time is
414 returned, i.e. don't return -1 with timers pending.
415
416 * process.c: Remove extern declaration of timer_check.
417
418 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
419 even if timer_check returned -1.
420
af98fc7f
SM
421 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
422 xg_dialog_data.
e90292a9
JD
423 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
424 the event loop.
425 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
426 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
427 Destroy the dialog after xg_dialog_run.
428
045b83c0
SM
4292009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
430
431 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
432
1fb99a3a
JD
4332009-11-10 Jan Djärv <jan.h.d@swipnet.se>
434
435 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
436
04e452cb
JB
4372009-11-09 Juanma Barranquero <lekktu@gmail.com>
438
439 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
440
ef7417fd
SM
4412009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
442
443 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
444 w32menu.c, and nsmenu.m.
445 Simplify the obsolete case where position is nil.
446 (cleanup_popup_menu): New function, moved from nsmenu.m.
447 (struct skp): Remove slot `notreal'.
448 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
449 adjust callers.
450 (single_menu_item): Adjust call to parse_menu_item.
451 (syms_of_menu): Defsubr x-popup-menu.
452 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
453 (keymap_panes): Don't export any more.
454 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
455 (xmenu_show): Declare.
456 * keyboard.c (parse_menu_item): Remove arg `notreal'.
457 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
458 * keyboard.h (parse_menu_item): Update declaration.
459 * xmenu.c (Fx_popup_menu): Remove.
460 (syms_of_xmenu): Don't defsubr x-popup-menu.
461 * w32menu.c (Fx_popup_menu): Remove.
462 (syms_of_w32menu): Don't defsubr x-popup-menu.
463 * nsmenu.m (cleanup_popup_menu): Remove.
464 (ns_menu_show): Rename from ns_popup_menu and remove all the code
465 moved to menu.c's Fx_popup_menu.
466 (Fx_popup_menu): Remove.
467 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
468 menu_items (it's done in menu.c already).
469
424d6179
SM
4702009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
471
472 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
473 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
474
c0df13a6 4752009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
476
477 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 478 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
479 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
480 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
481
2de9f71c
SM
4822009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
483
484 Let integers use up 2 tags to give them one extra bit and thus double
485 their range.
486 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
487 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
488 New macros.
489 (enum Lisp_Type): Use them. Give explicit values.
490 (Lisp_Type_Limit): Remove.
491 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
492 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
493 Pay attention to USE_2_TAGS_FOR_INTS.
494 (INTEGERP): Use LISP_INT_TAG_P.
495 * fns.c (internal_equal): Simplify the default case.
496 (sxhash): Use case_Lisp_Int.
497 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
498 any more.
499 (Ftype_of): Use case_Lisp_Int.
500 (store_symval_forwarding): Take into account the fact that Ints can
501 now have more than one tag.
502 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
503 buffer_slot_type_mismatch):
504 * xfaces.c (face_attr_equal_p):
505 * print.c (print_object):
506 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
507 Use case_Lisp_Int.
508
323637a2
EZ
5092009-11-06 Eli Zaretskii <eliz@gnu.org>
510
7ac65b38
EZ
511 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
512
323637a2
EZ
513 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
514 warning.
515
e511451f
JD
5162009-11-06 Jan Djärv <jan.h.d@swipnet.se>
517
518 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
519
520 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
521
522 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
523 ButtonPressRelease and MotionNotify (bug#4870).
524
5e2327cf
DN
5252009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
526
5adc433e
DN
527 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
528
d67b4f80
DN
529 * xterm.c (syms_of_xterm):
530 * xselect.c (syms_of_xselect):
531 * xmenu.c (syms_of_xmenu):
532 * xfns.c (syms_of_xfns):
533 * xfaces.c (syms_of_xfaces):
534 * xdisp.c (syms_of_xdisp):
535 * window.c (syms_of_window):
536 * w32fns.c (syms_of_w32fns):
537 * undo.c (syms_of_undo):
538 * textprop.c (syms_of_textprop):
539 * terminal.c (syms_of_terminal):
540 * syntax.c (syms_of_syntax):
541 * sound.c (syms_of_sound):
542 * search.c (syms_of_search):
543 * print.c (syms_of_print):
544 * minibuf.c (syms_of_minibuf):
545 * macros.c (syms_of_macros):
546 * keymap.c (syms_of_keymap, initial_define_key)
547 (initial_define_lispy_key):
548 * keyboard.c (syms_of_keyboard):
549 * insdel.c (syms_of_insdel):
550 * image.c (syms_of_image):
551 * fringe.c (syms_of_fringe):
552 * frame.c (syms_of_frame):
553 * fontset.c (syms_of_fontset):
554 * fns.c (syms_of_fns):
555 * fns.c (syms_of_fns):
556 * fileio.c (syms_of_fileio):
557 * fileio.c (syms_of_fileio):
558 * eval.c (syms_of_eval):
559 * doc.c (syms_of_doc):
560 * dispnew.c (syms_of_display):
561 * dired.c (syms_of_dired):
562 * dbusbind.c (syms_of_dbusbind):
563 * data.c (syms_of_data):
564 * composite.c (syms_of_composite):
565 * coding.c (syms_of_coding):
566 * cmds.c (syms_of_cmds):
567 * charset.c (define_charset_internal, syms_of_character):
568 * ccl.c (syms_of_ccl):
569 * category.c (syms_of_category, init_category_once):
570 * casetab.c (syms_of_casetab):
571 * casefiddle.c (syms_of_casefiddle):
572 * callint.c (syms_of_callint):
573 * bytecode.c (syms_of_bytecode):
574 * buffer.c (keys_of_buffer, syms_of_buffer):
575 * alloc.c (syms_of_alloc):
576 * process.c (syms_of_process, init_process):
577 * lread.c (syms_of_lread, init_obarray):
578 * font.c (build_style_table):
579 * emacs.c (syms_of_emacs, main): Replace calls to intern with
580 intern_c_string, calls to make_pure_string with
581 make_pure_c_string. Use pure_cons instead of Fcons.
582
5e2327cf
DN
583 * process.c (socket_options): Make it const.
584 (set_socket_option, init_process): Use a const pointer.
585
586 * lread.c (intern_c_string): New function.
587 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
588 (defvar_int): Uset it. Make the name const char*.
589
590 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
591 (defvar_int): Update prototypes.
592 (DEFUN, EXFUN): Support for prototypes is now required.
593 (intern_c_string): New prototype.
594 (struct Lisp_Subr): Make symbol_name constant.
595
596 * font.c (struct table_entry): Remove unused member. Make NAMES
597 constant.
598 (weight_table, slant_table, width_table): Make constant.
599
600 * emacs.c (struct standard_args): Make name and longname constant.
601
602 * character.h (DEFSYM): Use intern_c_string.
603
a56eaaef
DN
6042009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
605
606 * alloc.c (make_pure_c_string): New function.
607
608 * eval.c (Fautoload): Purecopy all arguments.
609
f6a07420
KH
6102009-11-05 Kenichi Handa <handa@m17n.org>
611
612 * fileio.c (Finsert_file_contents): Be sure set coding-system of
613 the buffer in case of replace.
614
5d28d4b1
DN
6152009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
616
617 * puresize.h (BASE_PURESIZE): Increase to 1620000.
618
b349d111
SM
6192009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
620
d528b1ce
SM
621 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
622 when applicable (bug#4851).
623
b349d111
SM
624 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
625 (P_): Support for prototypes is now required.
626
c38eb027
CY
6272009-10-31 Chong Yidong <cyd@stupidchicken.com>
628
629 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
630 (Bug#4827).
631
0405f8d9
EZ
6322009-10-30 Eli Zaretskii <eliz@gnu.org>
633
d528b1ce 634 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 635
ca0a881a
DN
6362009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
637
638 * puresize.h (BASE_PURESIZE): Increase to 1470000.
639
d528b1ce
SM
640 * lread.c (Fload): Purecopy the file name when building
641 Vpreloaded_file_list.
ca0a881a 642
47e0e0e4
JR
6432009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
644
645 * w32fns.c (syms_of_w32fns): Change default value of
646 w32-scroll-lock-modifier to nil. (Bug#2827)
647
057bce6f
JB
6482009-10-26 Juanma Barranquero <lekktu@gmail.com>
649
782a943e 650 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 651
242bc74c
AS
6522009-10-26 Andreas Schwab <schwab@redhat.com>
653
654 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
655
522d013a
JB
6562009-10-26 Juanma Barranquero <lekktu@gmail.com>
657
658 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
659 For delta < 0, skip check that only makes sense when the mini-window
660 is going to be enlarged. (Bug#4534)
661
18060980
CY
6622009-10-25 Chong Yidong <cyd@stupidchicken.com>
663
664 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
665 string in menu maps (Bug#4471).
666
fec8f0fe
CY
6672009-10-24 Chong Yidong <cyd@stupidchicken.com>
668
669 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
670 FRAME_NS_VIEW on terminal frames (Bug#4765).
671
10d66ec0
AS
6722009-10-24 Andreas Schwab <schwab@linux-m68k.org>
673
1cae01f7
AS
674 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
675 DBUS_TYPE_UINTnn separately to get proper sign extension.
676
58a12889
AS
677 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
678 can properly handle unsigned types.
d528b1ce 679 (make_uid, make_gid): Remove.
58a12889 680
987c9327
AS
681 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
682 types again.
683
522d013a 684 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
685 (system_process_attributes): Likewise.
686
905a9ed3
DN
6872009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
688
689 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
690
691 * eval.c (Fautoload): Purecopy the filename. Simplify.
692
693 * category.c (Fdefine_category): Purecopy docstring.
694
a599b3e8
AS
6952009-10-23 Andreas Schwab <schwab@linux-m68k.org>
696
7b792fc9
AS
697 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
698
a599b3e8
AS
699 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
700
b35ac83e
CY
7012009-10-23 Chong Yidong <cyd@stupidchicken.com>
702
703 * window.c (Fwindow_edges, Fwindow_pixel_edges)
704 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
705 (Bug#4775).
706
e8903e00
SM
7072009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
708
709 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
710 (init_fileio_once):
711 * lisp.h (init_fileio_once): Remove.
712 * emacs.c (main): Don't call init_fileio_once.
713
8f43cbf3
DN
7142009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
715
716 * puresize.h (BASE_PURESIZE): Increase to 1430000.
717
26898943
AS
7182009-10-21 Andreas Schwab <schwab@linux-m68k.org>
719
720 * doprnt.c (doprnt): Fix overflow check.
721
5c646d5a
JD
7222009-10-21 Jan Djärv <jan.h.d@swipnet.se>
723
3132a7ea
JD
724 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
725
5c646d5a
JD
726 * xterm.h (x_wait_for_event): Declare it.
727
728 * xterm.c (pending_event_wait): New variable.
729 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
730 see pending_event_wait.eventtype.
731 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
732 (x_new_font): Call change_frame_size with new rows/columns before we
733 try to resize the frame.
5c646d5a 734 (x_wait_for_event): New function.
d528b1ce
SM
735 (x_set_window_size_1): Don't change gravity unless change_gravity
736 is set.
5c646d5a
JD
737 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
738 don't change frame size, instead wait for the ConfigureNotify.
739 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
740 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
741 (x_initialize): Initialize pending_event_wait.
742
743 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
744 size.
745
746 * widget.c (EmacsFrameSetValues): Add comment.
747 (EmacsFrameSetCharSize): Just call x_set_window_size.
748
749 * gtkutil.c (xg_frame_set_char_size): Flush events and call
750 x_wait_for_event.
d528b1ce 751 (flush_and_sync): Remove again.
5c646d5a
JD
752 (xg_get_font_name): Suggest monospace if no previous font is known.
753
e9c1637d
SM
7542009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
755
756 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 757 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 758
5a72cccb
YM
7592009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
760
761 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
762 processing pending events when event is filtered for input method.
ab04798f 763 (Bug#3681)
5a72cccb 764
2629aa37
JB
7652009-10-20 Juanma Barranquero <lekktu@gmail.com>
766
767 * fns.c: Add #endif accidentally removed in previous change.
768
c3417a74
DN
7692009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
770
771 * fns.c: Remove code for unsupported system: MAC_OS.
772 * image.c: Likewise. Include setjmp.h.
773
9685cef2
JD
7742009-10-19 Jan Djärv <jan.h.d@swipnet.se>
775
776 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
777 pixel -1 (bug #4742).
778
d7306fe6
DN
7792009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
780
019d2c4c
DN
781 * process.c (create_pty): Remove conditionals for no longer
782 supported systems: UNIPLUS and RTU.
783
ee6bacd4
DN
784 * xterm.c:
785 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
786
d7306fe6
DN
787 * alloc.c: Do not define struct catchtag.
788 * eval.c: Move struct catchtag definition ...
789 * lisp.h: ... here.
790
791 * image.c: Move png.h #include earlier to avoid warnings.
792
793 * xterm.c:
794 * xsmfns.c:
795 * xselect.c:
796 * xrdb.c:
797 * xmenu.c:
798 * xftfont.c:
799 * xfont.c:
800 * xfns.c:
801 * xfaces.c:
802 * xdisp.c:
803 * window.c:
804 * widget.c:
805 * w32xfns.c:
806 * w32uniscribe.c:
807 * w32term.c:
808 * w32select.c:
809 * w32reg.c:
810 * w32proc.c:
811 * w32menu.c:
812 * w32inevt.c:
813 * w32heap.c:
814 * w32font.c:
815 * w32fns.c:
816 * w32console.c:
817 * w32.c:
818 * w16select.c:
819 * vm-limit.c:
820 * unexsol.c:
821 * unexec.c:
822 * unexcw.c:
823 * unexaix.c:
824 * undo.c:
825 * tparam.c:
826 * textprop.c:
827 * terminfo.c:
828 * terminal.c:
829 * termcap.c:
830 * term.c:
831 * syntax.c:
832 * sound.c:
833 * sheap.c:
834 * search.c:
835 * scroll.c:
836 * region-cache.c:
837 * regex.c:
838 * ralloc.c:
839 * process.c:
840 * print.c:
b024548b
DN
841 * nsterm.m:
842 * nsselect.m:
843 * nsmenu.m:
844 * nsimage.m:
845 * nsfont.m:
846 * nsfns.m:
d7306fe6
DN
847 * msdos.c:
848 * minibuf.c:
849 * menu.c:
850 * marker.c:
851 * macros.c:
852 * keymap.c:
853 * keyboard.c:
854 * intervals.c:
855 * insdel.c:
856 * indent.c:
857 * gtkutil.c:
858 * ftxfont.c:
859 * ftfont.c:
860 * fringe.c:
861 * frame.c:
862 * fontset.c:
863 * font.c:
864 * fns.c:
865 * floatfns.c:
866 * filelock.c:
867 * fileio.c:
868 * emacs.c:
869 * editfns.c:
870 * dosfns.c:
871 * doprnt.c:
872 * doc.c:
873 * dispnew.c:
874 * dired.c:
875 * dbusbind.c:
876 * data.c:
877 * composite.c:
878 * coding.c:
879 * cmds.c:
880 * cm.c:
881 * chartab.c:
882 * charset.c:
883 * character.c:
884 * ccl.c:
885 * category.c:
886 * casetab.c:
887 * casefiddle.c:
888 * callproc.c:
889 * callint.c:
890 * bytecode.c:
891 * buffer.c:
892 * atimer.c: Include setjmp.h. (Bug#4643)
893
fd5f21e6
SM
8942009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
895
4c0354d7
SM
896 Remove leftover table unibyte_to_multibyte_table.
897 * character.c (unibyte_to_multibyte_table): Remove.
898 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
899 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
900 * character.h (UNIBYTE_TO_CHAR): New macro.
901 (MAKE_CHAR_MULTIBYTE): Use it.
902 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
903 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
904 (message_dolog, set_message_1):
905 * search.c (Freplace_match):
906 * editfns.c (Fcompare_buffer_substrings):
907 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
908 (concat):
909 * insdel.c (copy_text, count_size_as_multibyte):
910 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
911 * term.c (produce_glyphs):
912 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
913 * regex.c (RE_CHAR_TO_MULTIBYTE):
914 * cmds.c (internal_self_insert):
915 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
916
fd5f21e6
SM
917 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
918
4418646e
DN
9192009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
920
921 * puresize.h (BASE_PURESIZE): Increase to 1310000.
922
35f5c1d2
JB
9232009-10-16 Juanma Barranquero <lekktu@gmail.com>
924
925 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
926
a0cd8f6b
AR
9272009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
928
929 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
930 still needed under Tiger.
931
932 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
933
934 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
935 __Apple__.
936
937 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
938
01a8d3fa
KH
9392009-10-15 Kenichi Handa <handa@m17n.org>
940
941 * print.c (print_object): Escape a symbol like "2E10" too.
942
bf6c75c9 9432009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
944
945 Cleanups and changes for 64-bit compile under Snow Leopard.
946 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
947
948 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
949
c5959062 950 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
951 (ns_findfonts, nsfont_list_family): Use long format in printf, and
952 cast argument.
953 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 954 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
955
956 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
957
958 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
959 where appropriate.
960
961 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
962 where appropriate.
6e4780c5
JB
963 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
964 Use stringWithUTF8String.
bf6c75c9
AR
965 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
966
6e4780c5
JB
967 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
968 Add formal protocol mention to inheritance.
bf6c75c9
AR
969 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
970
6e4780c5
JB
971 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
972 Fix printf format.
bf6c75c9
AR
973 (ns_query_color): Use CGFloat where appropriate.
974 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
975 (EmacsScroller-mouseDown:) Use long format in printf, and cast
976 argument.
977
3d87f118
AR
978 * config.in (NS_HAVE_NSINTEGER): Drop.
979
a95c8102
AR
980 * dbusbind.c (dbus-method-return-internal)
981 (dbus-method-error-internal): Use long format in printf, and cast
982 argument.
983
984 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
985 in printf, and cast argument.
986
6873acca 987 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
988 cast argument.
989
9ec6f100
GM
9902009-10-11 Glenn Morris <rgm@gnu.org>
991
992 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
993
5be883cd
JD
9942009-10-08 Jan Djärv <jan.h.d@swipnet.se>
995
996 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
997 menu bar with a small width so it doesn't enlarge the frame.
998
d7a39b51
JB
9992009-10-08 Juanma Barranquero <lekktu@gmail.com>
1000
1001 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1002
0c2b6f8e
GM
10032009-10-06 Glenn Morris <rgm@gnu.org>
1004
1005 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1006 SOME_MACHINE_LISP (this enters indirectly via DOC).
1007
e02131a2
EZ
10082009-10-05 Eli Zaretskii <eliz@gnu.org>
1009
1010 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1011
b4744254
EZ
10122009-10-04 Eli Zaretskii <eliz@gnu.org>
1013
1014 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1015 Doc fix.
1016
dbf64827
JB
10172009-10-03 Martin Rudalics <rudalics@gmx.at>
1018
1019 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1020
e9a0aef8
MA
10212009-10-02 Michael Albinus <michael.albinus@gmx.de>
1022
d528b1ce 1023 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1024 used anymore outside fileio.c.
1025
1026 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1027
64eb2b56
JB
10282009-10-01 Juanma Barranquero <lekktu@gmail.com>
1029
1030 * lisp.h (Qdelete_directory_internal):
1031 Declare, instead of Qdelete_directory.
1032
1033 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1034
9d28c33e
SM
10352009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1036
1037 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1038
9d8f3bd9
MA
10392009-10-01 Michael Albinus <michael.albinus@gmx.de>
1040
9d28c33e 1041 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1042 Fdelete_directory. It is not a command anymore. It has no file
1043 name handler.
1044
9694740b
SM
10452009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1046
1047 * xdisp.c (get_next_display_element): Use an enum in last change.
1048
748e162f
KH
10492009-09-28 Kenichi Handa <handa@m17n.org>
1050
9694740b 1051 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1052 unibyte_display_via_language_environment in handling
1053 Vnobreak_char_display.
1054
17efd58d
AR
10552009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1056
1057 * nsterm.h (ns_app_name): New extern variable.
1058
1059 * nsterm.m (ns_app_name): New variable.
1060 (ns_term_init): Set and use it.
1061 (ns_term_shutdown): Use it.
1062
1063 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1064 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1065
1066 * nsfns.m (ns_set_name_iconic, ns_set_name)
1067 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1068 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1069
9694740b
SM
1070 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1071 Remove double-casting in client_data comparison.
31c2d412 1072
3208cb35
YM
10732009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1074
1075 * keyboard.c (make_lispy_event): Remember last wheel direction.
1076 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1077
b7d552d6
GM
10782009-09-26 Glenn Morris <rgm@gnu.org>
1079
1080 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1081 internal.elc. Add term/pc-win.elc.
1082 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1083 term/x-win.elc.
1084 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1085 term/w32-win.elc.
1086 (NS_SUPPORT): New.
1087 (lisp): Add NS_SUPPORT.
1088 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1089
4ff670a8
DR
10902009-09-25 David Reitter <david.reitter@gmail.com>
1091
1092 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1093 on Mac OS X 10.6+ (bug#4513).
1094
feabfb6c
JB
10952009-09-24 Juanma Barranquero <lekktu@gmail.com>
1096
1097 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1098 some parts of Emacs code (like font selection) don't grok them.
1099 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1100
de59072a
AS
11012009-09-24 Andreas Schwab <schwab@redhat.com>
1102
1103 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1104
a489517b
JB
11052009-09-24 Juanma Barranquero <lekktu@gmail.com>
1106
1107 * dired.c (Fdirectory_files): Fix typo in docstring.
1108
0592970c
AR
11092009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1110
1111 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1112 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1113 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1114 under GNUstep.
1115 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1116
1117 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1118 glyph advancement.
1119
48e8a88b
AR
11202009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1121
1122 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1123 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1124
1125 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1126 deleted (bug #4492).
1127
e14f0a78
AR
1128 * nsfont.m (Vns_reg_to_script): New lisp variable.
1129 (syms_of_nsfont): Declare it.
1130 (ns_registry_to_script): New function.
1131 (ns_get_req_script): Call it.
1132 (ns_findfonts): Don't give up on non-unicode registry.
1133
1134 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1135
5b650faa
SM
11362009-09-20 Tom Tromey <tromey@redhat.com>
1137
1138 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1139 batch mode (bug#4228).
1140
a489517b 11412009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1142
1143 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1144 carefully. (Bug #4339)
0bae4e09 1145
fcfe06f3
CY
11462009-09-18 Chong Yidong <cyd@stupidchicken.com>
1147
d798ba87 1148 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1149
31642728
AR
11502009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1151
1152 * emacs.c (inhibit_x_resources): Update doc string for NS.
1153 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1154 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1155
1156 * nsterm.h (ns_no_defaults): Remove.
1157
1158 * nsterm.m (ns_no_defaults): Remove.
1159 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1160 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1161 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1162 don't update the NSWindow itself.
1163 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1164 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1165
1166 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1167 ns_use_qd_smoothing.
1168
1169 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1170 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1171 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1172 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1173
8686ac71
JB
11742009-09-17 Juanma Barranquero <lekktu@gmail.com>
1175
1176 * emacs.c (inhibit_x_resources): New variable.
1177 (main) [HAVE_NS]: Don't process --quick command line option.
1178 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1179
1180 * lisp.h (inhibit_x_resources): Declare it extern.
1181
1182 * w32reg.c (x_get_string_resource):
1183 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1184
e227ba05
EZ
11852009-09-17 Eli Zaretskii <eliz@gnu.org>
1186
362654a6
JB
1187 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1188 Add lisp/term/internal.elc.
e227ba05 1189
742d40e8
SM
11902009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1191
1192 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1193 (bug#4461).
1194
005bd5a2
DN
11952009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1196
1197 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1198
1199 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1200 (OBJECTS_MACHINE): Remove, unused.
1201
f9af9719
SM
12022009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1203
1204 * frame.c (x_get_resource_string): Remove unused.
1205
0307c7d2
JD
12062009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1207
1208 * xterm.c (x_new_font): Call change_frame_size before calling
1209 x_set_window_size, in case frame size won't change.
1210
1211 * frame.c (x_set_font): Remove dead code.
1212
428b13d6
SM
12132009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1214
1215 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1216
5766c380
SM
12172009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1218
1219 * lread.c (Fload): Don't output a message after loading an obsolete
1220 package any more (done in Lisp now).
1221
2fd0161b
CY
12222009-09-12 Chong Yidong <cyd@stupidchicken.com>
1223
1224 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1225
bc5e75b6
SM
12262009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1227
1228 * keymap.c (Fwhere_is_internal): Use nconc2.
1229
c31c985e
AM
12302009-09-11 Alan Mackenzie <acm@muc.de>
1231
1232 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1233 batch mode.
1234
78012bd2
AS
12352009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1236
1237 * xdisp.c (display_mode_element): Detect cycles.
1238
9d889332
SM
12392009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1240
1241 * keymap.c (where_is_internal): Don't erroneously return nil right after
1242 filling the cache.
1243 (where_is_internal_1): Fix up typo.
1244
7ab5d780
GM
12452009-09-11 Glenn Morris <rgm@gnu.org>
1246
1247 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1248 share a common doc-string.
1249
5238a749
SM
12502009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1251
66d77eda
SM
1252 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1253 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1254
5238a749
SM
1255 * keymap.c (QCadvertised_binding): New constant.
1256 (syms_of_keymap): Initialize it.
1257 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1258 if applicable.
1259
19f48442
SM
12602009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1261
50d4ba39
SM
1262 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1263 (parse_menu_item): Streamline since bindings are recomputed all the
1264 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1265 more and don't support lmenu's menu-alias any more either.
1266
a88a5372
SM
1267 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1268 (where_is_internal): Strip it down to only traverse the keymaps.
1269 Move the cache handling from Fwhere_is_internal to here.
1270 (Fwhere_is_internal): Move the handling of remapping and the choice of
1271 the best binding from where_is_internal to here.
1272 Unify the cached/noncached paths, so remapping is also handled
1273 correctly when the cache is used, and so the cache can be used to
1274 speed up remap-handling when applicable.
1275 Give preference to non-remapped bindings.
1276 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1277 non-remapped bindings.
1278 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1279 command remapping.
1280
19f48442
SM
1281 * xdisp.c (display_mode_element): Move list length limit from 50 to
1282 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1283
599498c3 12842009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1285
1286 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1287
f9b7b5ac
SM
12882009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1289
a53af587
JB
1290 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1291 (Bug#4334)
1292
f9b7b5ac
SM
1293 * keymap.c (where_is_internal): Filter out shadowed remappings.
1294 Assume that where_is_internal returns unshadowed bindings to simplify
1295 the code and get rid of the gotos. Use ASIZE.
1296
04f4b72d
JD
12972009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1298
4da146f2
JD
1299 * xterm.c (x_focus_changed): If we get a focusout and pointer
1300 is invisible, make it visible.
1301
04f4b72d
JD
1302 * xterm.h: Remove condition for declaration of
1303 x_*_window_to_frame.
1304
7cef7ce3
SM
13052009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1306
1307 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1308 initial terminal as well.
1309
a54fa5b7
JD
13102009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1311
1312 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1313 x_menubar_window_to_frame.
a54fa5b7
JD
1314
1315 * xterm.c: Remove declarations also in xterm.h
1316 (XTmouse_position): Do not return valid positions
1317 for clicks in the menubar and the toolbar for Gtk+.
1318
1319 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1320 if the widget for the event has the same top level as a frame,
1321 return the frame.
1322 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1323 internal windows, bug #4122.
1324 (x_non_menubar_window_to_frame): Remove.
1325
5a021dd0
GM
13262009-09-02 Glenn Morris <rgm@gnu.org>
1327
1328 * buffer.c (default-major-mode): Move most of the doc from here...
1329 (major-mode): ... to here.
1330
548fe2f3
NR
13312009-08-30 Nick Roberts <nickrob@snap.net.nz>
1332
1333 * process.c (wait_reading_process_output): Keep the descriptor
1334 when pty is used by a non-child process, e.g., in I/O buffer of
1335 GDB this allows inferior to be restarted.
1336
e0840eef
EZ
13372009-08-29 Eli Zaretskii <eliz@gnu.org>
1338
1339 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1340 both branches into one.
1341
82e98df4
SM
13422009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1343
1344 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1345 (main): Use enable-multibyte-characters rather than
1346 default-enable-multibyte-characters. Output a warning message when
1347 running a unibyte session.
1348
890617cb
YM
13492009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1350
1351 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1352 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1353 (copy_data_segment): Also copy __program_vars section.
1354 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1355 (dump_it) [LC_DYLD_INFO]: Use it.
1356
1357 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1358
e7adeadc
EZ
13592009-08-28 Eli Zaretskii <eliz@gnu.org>
1360
1361 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1362 $(SRC)/buildobj.h.
1363 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1364 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1365 $(SRC)/buildobj.h.
1366 (clean): Add buildobj.h.
1367
3ed8bbdc
TZ
13682009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1369
1370 * print.c (print_object): Set escapeflag to 1 when printing
1371 hashtable keys and values.
1372
155a6764
SM
13732009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1374
1375 * lread.c (read_integer): Use doubles (and potentially return a float
1376 number) as we do in string-to-number.
1377 (read1): Use strtol to read integers, signal errors on strtol's
1378 overflow and use floats if strtol's output is too large for
1379 Elisp integers.
1380
877610de
EZ
13812009-08-27 Eli Zaretskii <eliz@gnu.org>
1382
1383 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1384 (make-buildobj-SH): Fix last change.
1385 (SRC): Move to before where it's first used.
1386
ef73e7be
KH
13872009-08-27 Kenichi Handa <handa@m17n.org>
1388
550c8289
KH
1389 * process.c (send_process): Use encode_coding_object instead of
1390 encode_coding_string to perform eol-conversion even if the string
1391 is unibyte.
1392
60afa08d
KH
1393 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1394 character.
1395
ef73e7be 1396 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1397 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1398
7b3a82d7
DN
13992009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1400
5654bf63
DN
1401 * callproc.c (Fcall_process): Remove always true #if.
1402
7b3a82d7
DN
1403 * lisp.h: Replace #if 0 code for checking with text pointing to
1404 the --enable-checking configure flag.
1405
1406 * emacs.c (main): Mention the --enable-profiling configure flag
1407 instead of using CFLAGS.
1408
878bde49
KR
14092009-08-26 Ken Raeburn <raeburn@raeburn.org>
1410
1411 * Makefile.in (buildobj.h): New target.
1412 (doc.o): Depend on it.
1413 (temacs${EXEEXT}): Don't generate buildobj.lst.
1414 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1415 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1416 ($(BLD)/doc.$(O)): Depend on it.
1417 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1418 provided by Eli Zaretskii.)
1419 ($(TEMACS)): Don't generate buildobj.lst.
1420 * doc.c: Include buildobj.h.
1421 (buildobj): New static variable.
1422 (Fsnarf_documentation): Use it, instead of opening and reading
1423 buildobj.lst.
1424
1574224c
MA
14252009-08-25 Michael Albinus <michael.albinus@gmx.de>
1426
1427 * dbusbind.c (Fdbus_call_method)
1428 (Fdbus_call_method_asynchronously): Use English numeric format for
1429 timeout values in doc string.
1430
d9da2f45
KH
14312009-08-25 Kenichi Handa <handa@m17n.org>
1432
ef73e7be
KH
1433 * alloc.c (mark_char_table): New function.
1434 (mark_object): Use mark_char_table for a char-table.
1435
d9da2f45
KH
1436 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1437 (CHAR_TABLE_REF): Use it.
1438
c8edcc01
KR
14392009-08-23 Ken Raeburn <raeburn@raeburn.org>
1440
1441 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1442 before invoking the newly build emacs to check for load-path
1443 shadowing.
1444
7763401b
GM
14452009-08-22 Glenn Morris <rgm@gnu.org>
1446
1447 * Makefile.in (bootstrap_exe): New variable.
1448 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1449 Use ${bootstrap_exe}.
1450
729eadda
EZ
14512009-08-22 Eli Zaretskii <eliz@gnu.org>
1452
1453 * coding.h (encode_coding_string): Don't encode unibyte strings.
1454 (Bug#4047)
1455
eb4c6ace
MA
14562009-08-22 Michael Albinus <michael.albinus@gmx.de>
1457
1458 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1459
1460 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1461 intended as hotfix only.
1462 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1463
36e34d1b
AR
14642009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1465
1466 * nsterm.m (ns_get_color): Update documentation properly for last
1467 change, and clean up loose ends in the code left by it. Fix
1468 longstanding bug with 16-bit hex parsing, and add support for
1469 yet another X11 format (rgb:r/g/b) for compatibility.
1470 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1471 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1472
f983eb8a
SM
14732009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1474
1475 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1476
3f56d3c6
MA
14772009-08-20 Michael Albinus <michael.albinus@gmx.de>
1478
1479 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1480 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1481 (xd_initialize, xd_pending_messages): Check, whether
1482 $DBUS_SESSION_BUS_ADDRESS is set.
1483
fb641d68
YM
14842009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1485
1486 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1487
1488 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1489
cf59a374
GM
14902009-08-20 Glenn Morris <rgm@gnu.org>
1491
1492 * emacs.c (system-type): Doc fix.
1493
1373f3be
SM
14942009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1495
1496 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1497 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1498
058ed861
MA
14992009-08-18 Michael Albinus <michael.albinus@gmx.de>
1500
1373f3be
SM
1501 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1502 New functions.
058ed861
MA
1503 (xd_initialize): Revert change from 2009-08-16.
1504
563a866e 15052009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1506
1507 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1508 font-group vector, return nil.
5fc05db0 1509
e42bdf01
CY
15102009-08-17 Chong Yidong <cyd@stupidchicken.com>
1511
1512 * process.c (status_notify): Don't perform redisplay.
1513 (Fdelete_process, list_processes_1, process_send_signal):
1514 Expliticly perform redisplay.
1515 (wait_reading_process_output): Always check process status, but
1516 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1517
4230ab74
KR
15182009-08-17 Ken Raeburn <raeburn@raeburn.org>
1519
1373f3be 1520 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1521 (XFLOAT_INIT): New macro for storing a float value.
1522 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1523 * fns.c (sxhash): Copy out the value of a float in order to
1524 examine its bytes.
1525 * dbusbind.c (xd_append_arg): Likewise.
1526
4230ab74
KR
1527 * emacs.c (main): Don't call syms_of_data twice.
1528
a0645cdd
MA
15292009-08-16 Michael Albinus <michael.albinus@gmx.de>
1530
1531 * dbusbind.c (xd_initialize): Add connection file descriptor to
1532 input_wait_mask, in order to let select() detect, whether a new
1533 message has been arrived.
ca4f31ea 1534 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1535
485db0ba
MA
15362009-08-15 Michael Albinus <michael.albinus@gmx.de>
1537
1373f3be
SM
1538 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1539 New functions.
485db0ba
MA
1540
1541 * lisp.h (xd_pending_messages): Declare.
1542
1543 * keyboard.c (readable_events): Call xd_pending_messages.
1544
b5b98ff4
CY
15452009-08-15 Chong Yidong <cyd@stupidchicken.com>
1546
1373f3be 1547 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1548
f8354c6e
CY
1549 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1550
b5b98ff4
CY
1551 * buffer.c (set_buffer_internal_1)
1552 (swap_out_buffer_local_variables): Check for unbound local
1553 variables (Bug#4138).
1554
8b9fc636
EZ
15552009-08-14 Eli Zaretskii <eliz@gnu.org>
1556
1557 * process.c (create_pty): Fix last change.
1558
ce959360
CY
15592009-08-13 Chong Yidong <cyd@stupidchicken.com>
1560
1561 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1562 (xbm_load_image): Caller changed.
64b807c9 1563 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1564
c7baf7e9
NR
15652009-08-13 Nick Roberts <nickrob@snap.net.nz>
1566
1567 * process.c (create_pty): New function.
1568 (Fstart_process): Use it to allow Emacs to just associate a pty
1569 with the buffer. See associated change in gdb-mi.el.
1570 (list_processes_1): Deal with no program name.
1571 (start_process_unwind): Use pid == -2 to mean no process.
1572
1ac9108a
SM
15732009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1574
1575 * cmds.c (nonundocount): New global variable.
1576 (keys_of_cmds): Initialize it.
1577 (Fself_insert_command): Use it to combine upto 20 sequential chars
1578 into a single undo entry, just like the Qself_insert_command code in
1579 keyboard.c does.
1580 Call frame_make_pointer_invisible, also like the Qself_insert_command
1581 code in keyboard.c does.
1582 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1583 than its own local replacement for it.
1584
e267324c
KR
15852009-08-10 Ken Raeburn <raeburn@raeburn.org>
1586
1ac9108a 1587 * fns.c (concat): Don't re-set string length to its current value.
77437343 1588
1ac9108a
SM
1589 * coding.h (decode_coding_string, encode_coding_string):
1590 Use SBYTES macro.
f0bed503 1591
1ac9108a 1592 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1593 (doprnt): Merge with doprnt1, discarding lispstrings code.
1594 * lisp.h (doprnt_lisp): Don't declare.
1595
416e006d
JL
15962009-08-07 Juri Linkov <juri@jurta.org>
1597
1598 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1599
6f7d5780
DN
16002009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1601
1602 * print.c (syms_of_print): Undo previous change.
1603
f19a0f5b
TZ
16042009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1605
1606 * lread.c (read1, syms_of_lread): Read hashtables back from the
1607 readable format.
1608
1609 * print.c (print_preprocess, print_object): Print hashtables fully
1610 and readably.
1611 (syms_of_print): Provide 'hashtable-print-readable.
1612
b9173dc2
AR
16132009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1614
1615 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1616 no family set.
1617 (nsfont_open): Handle case when entity has no family.
1618
1586503c
AR
16192009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1620
1621 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1622 element, not a list, for match case.
1623
087048cd
KH
16242009-07-28 Kenichi Handa <handa@m17n.org>
1625
1626 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1627 rigidly.
1628
1629 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1630 font_parse_xlfd. Check font properties more rigidly.
1631
780c2506
DN
16322009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1633
31fd7c5c
JB
1634 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1635 bsd-common.h.
780c2506 1636
a8c0cc18
KH
16372009-07-27 Kenichi Handa <handa@m17n.org>
1638
1639 * xfaces.c (face_with_height): Call font_clear_prop.
1640
4fbe2306
CY
16412009-07-26 Chong Yidong <cyd@stupidchicken.com>
1642
111d9af3
CY
1643 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1644
1645 * xterm.c (x_term_init): Use Qx.
1646
4fbe2306
CY
1647 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1648
1ac9108a 1649 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1650 (ns_get_color): Revert 2009-07-16 change.
1651
beb0b7f9
EZ
16522009-07-25 Eli Zaretskii <eliz@gnu.org>
1653
1654 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1655 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1656
2baf5e76
KR
16572009-07-25 Ken Raeburn <raeburn@raeburn.org>
1658
1ac9108a
SM
1659 * coding.h (decode_coding_string, encode_coding_string):
1660 Use SCHARS macro.
8890e5f5 1661
2baf5e76 1662 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1663 (load_depth): Delete.
2baf5e76
KR
1664 (Qload_in_progress): New variable.
1665 (load_unwind): Don't reference load_depth or load_in_progress.
1666 (Fload): Likewise; specbind Qload_in_progress instead.
1667 (init_lread): Don't initialize load_depth.
1668 (syms_of_lread): Initialize and protect Qload_in_progress.
1669
1395c6f5
AR
16702009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1671
1672 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1673
4e2f36cf
AR
16742009-07-23 Yavor Doganov <yavor@gnu.org>
1675
1676 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1677
5dd9a6f7
AR
16782009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1679
1680 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1681 Bugs 3792, 3720, 2402.
1682 (ns_lookup_indexed_color): Check for bad index.
1683 (ns_index_color): Init unused slot to 0.
1684 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1685 Bug 3714, possibly 3082.
5dd9a6f7 1686
c902b920
JR
16872009-07-22 Jason Rumney <jasonr@gnu.org>
1688
1ac9108a
SM
1689 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1690 Position IME window at cursor (Bug#2570).
c902b920
JR
1691 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1692 (globals_of_w32fns): Dynamically load functions required above.
1693
1694 * w32term.c (w32_draw_window_cursor): Send message to reposition
1695 any IME window.
1696
090101cf
CY
16972009-07-21 Chong Yidong <cyd@stupidchicken.com>
1698
1699 * fileio.c: Revert 2009-07-16 changes.
1700 (Vauto_save_include_big_deletions): New variable.
1701 (Fdo_auto_save): Disable auto-save only if
1702 auto-save-include-big-deletions is nil.
1703
e6583e3d
CY
17042009-07-21 Chong Yidong <cyd@stupidchicken.com>
1705
1706 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1707 the overflowed pixels into account (Bug#3879).
1708
ece435a5
KR
17092009-07-21 Ken Raeburn <raeburn@raeburn.org>
1710
1711 * lread.c (load_depth): New variable.
1712 (Fload, load_unwind, init_lread): Set it to the load recursion
1713 depth; set load_in_progress as a simple boolean based on the
1714 current load_depth. (Bug#3892)
1715
40b2d973
AR
17162009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1717
1718 * nsfont.m (ns_has_attribute): Remove.
1719 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1720
10be7e0d
JL
17212009-07-18 Juri Linkov <juri@jurta.org>
1722
1723 * process.c (Fset_process_query_on_exit_flag): Mention killing
1724 a buffer in docstring.
1725
fa055055
KH
17262009-07-17 Kenichi Handa <handa@m17n.org>
1727
1728 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1729
042f7b69
YM
17302009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1731
1732 * nsfns.m (Fns_set_alpha): Remove function.
1733 (syms_of_nsfns): Don't defsubr it.
1734
1735 * nsterm.m (ns_get_color): Remove incompatible color formats.
1736 (ns_color_to_lisp): Generate #rrggbb color format string.
1737
4be941e3
RS
17382009-07-16 Richard Stallman <rms@gnu.org>
1739
1740 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1741 (Fset_buffer_auto_saved): Handle save_length = -2.
1742
4e6b227d
CY
17432009-07-16 Chong Yidong <cyd@stupidchicken.com>
1744
1745 * xterm.c (Qx_gtk_map_stock): New var.
1746
1747 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1748 of calling intern each time.
1749
a1856973
YM
17502009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1751
1752 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1753 does tiling.
1754
1755 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1756
497e54d8
KH
17572009-07-14 Kenichi Handa <handa@m17n.org>
1758
72d36834
KH
1759 * font.c (font_vconcat_entity_vectors): New function.
1760 (struct font_sort_data): New member font_driver_preference.
1761 (font_compare): Check font_driver_preference.
1762 (font_sort_entities): The format of the first argument changed.
1763 (font_delete_unmatched): Likewise.
1764 (font_list_entities): The return type changed.
1765 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1766 (font_find_for_lface): Adjuste for the above changes.
1767 Don't suppress the checking of C even if the repertory supports it.
1768 (Flist_fonts): Adjust for the above changes.
72d36834 1769
1ac9108a
SM
1770 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1771 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1772 Reject a font who has adstyle property that is different from a
1773 langname derived from registry property.
1ac9108a 1774 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1775
b6046155
EZ
17762009-07-13 Eli Zaretskii <eliz@gnu.org>
1777
1778 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1779 local copy of dirfilename.
1780
fb6b6049
KH
17812009-07-13 Kenichi Handa <handa@m17n.org>
1782
e2402a5e
KH
1783 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1784 against max_char.
1785
fb6b6049
KH
1786 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1787 calling XSYMBOL (sym).
1788
65156807
EZ
17892009-07-11 Eli Zaretskii <eliz@gnu.org>
1790
1ac9108a
SM
1791 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1792 New function.
1793 (directory_files_internal) [WINDOWSNT]:
1794 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1795 the filesystem of the directory is fast or slow.
1796
1797 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1798 file name.
1799 (is_slow_fs): New function.
1800 (stat): Use it to determine whether to issue more system calls to
1801 get accurate file attributes, when w32-get-true-file-attributes is
1802 `local'.
1803
e0ab5fcf
JD
18042009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1805
1806 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1807 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1808 parameter font-parameter as default to the font dialog.
1809
784ceded
KH
18102009-07-10 Kenichi Handa <handa@m17n.org>
1811
1812 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1813
fb8edc0b
EZ
18142009-07-09 Eli Zaretskii <eliz@gnu.org>
1815
1ac9108a 1816 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1817
fb8edc0b
EZ
1818 * w32.c (stat): Treat UNC file names as residing on remote
1819 drives. (Bug#3542)
1820
635c75b1
KH
18212009-07-09 Kenichi Handa <handa@m17n.org>
1822
1823 * fontset.c (fontset_find_font): Fix previous change.
1824
c1d5ce94
MA
18252009-07-08 Michael Albinus <michael.albinus@gmx.de>
1826
1827 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1828 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1829 error flag.
1830
edb61b39
KH
18312009-07-08 Kenichi Handa <handa@m17n.org>
1832
374bf7e4
KH
1833 * fontset.c (fontset_find_font): Fix the logic of handling
1834 charset_matched.
1835 (font_for_char): Delete unused var.
1836 (generate_ascii_font_name): Delete it.
1837
edb61b39
KH
1838 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1839
1840 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1841 (encode_coding_sjis): Fix the code range check.
1842
0f3f018c
CY
18432009-07-07 Chong Yidong <cyd@stupidchicken.com>
1844
1845 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1846 (Fexpand_file_name): Copy string data properly (Bug#3772).
1847
fcaf6f3a
JD
18482009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1849
1850 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1851 first MapNotify.
1852
6809ca75
KH
18532009-07-07 Kenichi Handa <handa@m17n.org>
1854
1855 * character.h (unibyte_has_multibyte_table): Delete extern.
1856 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1857
1858 * charset.c (Fset_charset_priority): Update charset_unibyte.
1859 (syms_of_charset): Initialize charset_unibyte.
1860
1861 * character.c (unibyte_has_multibyte_table): Delete it.
1862 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1863 charset_unibyte.
1864 (multibyte_char_to_unibyte_safe): Likewise.
1865 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1866
1ac9108a 1867 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1868 (x_produce_glyphs): Likewise.
1869
1870 * .gdbinit (xcharset): Fix the treating $arg0.
1871
ad9e2d54
EZ
18722009-07-04 Eli Zaretskii <eliz@gnu.org>
1873
1874 Emulation of `getloadavg' on MS-Windows.
1875 * w32.c: Include float.h
1876 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1877 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1878 (get_native_system_info, get_system_times): New functions.
1879 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1880 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1881 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1882 g_b_init_get_system_times, and num_of_processors.
1883
0a3472c7
JR
18842009-07-03 Jason Rumney <jasonr@gnu.org>
1885
1886 * w32term.c (w32_initialize): Use standard types.
1887
80904120
EZ
18882009-07-03 Eli Zaretskii <eliz@gnu.org>
1889
1890 * dired.c (Ffile_attributes): Decode user and group names by the
1891 locale's encoding. (Bug#3443)
1892
6978862d
DN
18932009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1894
f8d23104
DN
1895 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1896 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1897
1898 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1899
1900 * term.c (init_tty): Remove spurious #ifdef.
1901
6978862d
DN
1902 * m/mips.h: Mention this file is also used for netbsd.
1903 * m/pmax.h: Remove file.
1904
e044e4fc
JD
19052009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1906
1907 * xterm.h (struct x_display_info): Add invisible_cursor.
1908 (struct x_output): Add current_cursor.
1909
1910 * xterm.c (XTtoggle_invisible_pointer): New function.
1911 (x_define_frame_cursor): Don't define cursor if invisible or the
1912 same as before. Set current_cursor.
1913 (x_create_terminal): Set toggle_invisible_pointer_hook.
1914
1915 * xfns.c (make_invisible_cursor): New function.
1916 (x_set_mouse_color): Call make_invisible_cursor.
1917 Set current_cursor.
1918 (x_window): Set current_cursor.
1919
1920 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1921
1922 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1923 inserting a character.
1924 (read_avail_input): Call frame_make_pointer_visible.
1925
1926 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1927 (frame_make_pointer_invisible, frame_make_pointer_visible):
1928 New functions.
e044e4fc
JD
1929 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1930
1931 * frame.h: Declare frame_make_pointer_invisible and
1932 frame_make_pointer_visible.
1933 (struct frame): Add pointer_invisible.
1934
574c8efa
JD
19352009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1936
7b507248
JD
1937 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1938 frame isn't visible.
1939 (xg_frame_resized): If width/height is -1, get size of window
1940 from X server.
1941
1942 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1943 for MapNotify.
1944
835bdaa7 1945 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1946 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1947 (flush_and_sync): Reintroduce.
574c8efa 1948
3f1c6666 19492009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1950
31fd7c5c 1951 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1952
1953 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1954 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1955
1956 * frame.h: Declare Qsticky.
1957
cad9ef74
JD
1958 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1959
1960 * nsfns.m (ns_frame_parm_handlers): Ditto.
1961
1962 * frame.c: Declare Qsticky.
1963 (frame_parms): Add sticky.
1964
1965 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1966
1967 * xterm.h: Declare x_set_sticky.
1968
1969 * xterm.c (x_set_sticky): New function.
1970
69b16610
JD
1971 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1972 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1973 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1974
1975 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1976
1977 * frame.c: Qmaximized is new.
1978 (x_set_frame_parameters): Do not handle fullscreen specially.
1979 Only set width and height if explicitly set.
1980 (x_set_fullscreen): Handle Qmaximized.
1981 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1982 (syms_of_frame): Initialize Qmaximized.
1983
1ac9108a
SM
1984 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1985 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1986
1987 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1988 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1989 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1990 set gravity to NorthWestGravity when USE_GTK.
1991 (set_wm_state): New function.
31fd7c5c 1992 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1993 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1994 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1995 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1996 to x_real_positions and x_fullscreen_adjust.
1997
1998 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1999 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2000 flush_and_sync.
2001 (xg_height_changed): New function.
2002 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2003 and gtk_window_set_policy. Set frame gravity after parsing the
2004 geometry string.
3f1c6666
JD
2005 (xg_update_frame_menubar, free_frame_menubar)
2006 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2007 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2008 Remove calls to xg_frame_set_char_size.
2009
fd503d99
KH
20102009-07-01 Kenichi Handa <handa@m17n.org>
2011
2012 * keyboard.c (decode_keyboard_code): New function.
2013 (tty_read_avail_input): Decode the input bytes if necessary.
2014
1ac9108a
SM
2015 * coding.c (setup_coding_system):
2016 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2017 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2018 use Qno_conversion.
2019
24ed93fb
YM
20202009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2021
2022 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2023
99061dfc
CY
20242009-06-30 Chong Yidong <cyd@stupidchicken.com>
2025
1ac9108a 2026 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2027
ff90fbde
JR
20282009-06-30 Jason Rumney <jasonr@gnu.org>
2029
2030 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2031 is already loaded.
2032 Set user model ID if supported (bug#1849).
2033
5f445726
JM
20342009-06-29 Jim Meyering <meyering@redhat.com>
2035
2036 Remove useless if-before-xfree test.
2037 * nsfont.m (nsfont_close): Remove useless test.
2038 * term.c (delete_tty): Likewise.
2039 * w32.c (system_process_attributes): Likewise.
2040 * w32font.c (w32font_close): Likewise.
2041 * xfaces.c (x_free_gc): Likewise.
2042 * xselect.c (buffer): Likewise.
2043
b9607587
AS
20442009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2045
2046 * process.c (send_process): Keep decoded string in a local
2047 variable and protect it from GC. (Bug#3521)
2048
89ba96f4
EZ
20492009-06-28 Eli Zaretskii <eliz@gnu.org>
2050
2051 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2052 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2053
098a1589
CY
20542009-06-28 Chong Yidong <cyd@stupidchicken.com>
2055
485422be
CY
2056 * xdisp.c (start_display, handle_face_prop)
2057 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2058 (redisplay_window, try_window_id, produce_image_glyph):
2059 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2060
098a1589
CY
2061 * xterm.c (x_update_window_begin, x_new_focus_frame)
2062 (x_scroll_bar_handle_click, handle_one_xevent)
2063 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2064 (x_make_frame_visible, x_make_frame_invisible)
2065 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2066 code chunks that are now obsolete.
2067
78c38319
MA
20682009-06-28 Michael Albinus <michael.albinus@gmx.de>
2069
2070 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2071 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2072 for hours, when optimzation is enabled.
2073 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2074 (xd_read_message): Make them static.
2075
4189ed40
CY
20762009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2077
2078 * term.c (turn_on_face): Allow simultaneously bold and dim
2079 terminal faces (Bug#3530).
2080
cd9b5e16
CY
20812009-06-27 Chong Yidong <cyd@stupidchicken.com>
2082
4e23bedb
CY
2083 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2084
cd9b5e16
CY
2085 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2086 truncation glyphs (Bug#3686).
2087
07cc3c35
GM
20882009-06-27 Glenn Morris <rgm@gnu.org>
2089
2090 * m/pmax.h: Restore file, with only netbsd portions.
2091
31fd7c5c 20922009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2093
cd9b5e16 2094 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2095
42d4a64f
KH
20962009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2097
2098 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2099 the arg FORCE_SYMBOL.
2100
930fe55b 21012009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2102
2103 * fontset.c (fontset_find_font): When a usable rfont_def is found
2104 in a fallback font-group, make it the first element of the group.
2105
57ebc3fd
CY
21062009-06-24 Chong Yidong <cyd@stupidchicken.com>
2107
2108 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2109
f084f942
KH
21102009-06-24 Kenichi Handa <handa@m17n.org>
2111
2112 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2113 set for C.
2114 (fontset_font): Record the availability of a font for C both in
2115 the realized fontsets of the current one and the default one.
2116
2f686c87
DN
21172009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2118
2119 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2120 conditional, it is always defined on AIX.
2121
666e158e
MB
21222009-06-23 Miles Bader <miles@gnu.org>
2123
2124 * window.c (Vrecenter_redisplay): New variable.
2125 (syms_of_window): Initialize it.
2126 (Qtty): New extern declaration.
2127 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2128
c6da7cd2
JM
21292009-06-23 Jim Meyering <meyering@redhat.com>
2130
1ac9108a
SM
2131 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2132 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2133 pointer dereferences are guaranteed to be valid.
c6da7cd2 2134
678dca3d
KH
21352009-06-23 Kenichi Handa <handa@m17n.org>
2136
74d75424
KH
2137 * emacs.c (main): Call init_font ().
2138
2139 * font.h (Vfont_log): Extern it.
2140 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2141
2142 * font.c (font_sort_entities, font_list_entities)
2143 (font_matching_entity, font_open_entity)
2144 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2145 (Vfont_log): Delete static.
2146 (font_log_env_checked): Delete this variable.
2147 (font_add_log): Don't check font_log_env_checked.
2148 (font_deferred_log): Check Vfont_log.
2149 (init_font): New function.
2150
678dca3d
KH
2151 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2152
2153 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2154
2155 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2156
2157 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2158
2159 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2160 (face_for_char): Don't call font_deferred_log here.
2161 (font_for_char): Likewise.
2162
8a668709
CY
21632009-06-22 Chong Yidong <cyd@stupidchicken.com>
2164
9a01ee33
CY
2165 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2166 rather than its background_width for drawing the overline and
2167 underline (Bug#489).
2168
2169 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2170 rather than its background_width for drawing the overline and
2171 underline (Bug#489).
ec7c9926
CY
2172 (xg_default_icon_file): New variable.
2173 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2174 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2175
8a668709
CY
2176 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2177 (load_overlay_strings): Remove externs.
2178 (fast_find_position): Function deleted.
2179 (mouse_face_from_buffer_pos): New function, based on
2180 fast_find_position. Correctly handle before-strings,
2181 display-strings, and after-strings (Bug#1220).
2182 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2183
4d4c02d8
CY
21842009-06-21 Chong Yidong <cyd@stupidchicken.com>
2185
1ac9108a 2186 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2187 (move_it_in_display_line_to, move_it_in_display_line_to)
2188 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2189
70243478
CY
21902009-06-21 Chong Yidong <cyd@stupidchicken.com>
2191
2192 * Branch for 23.1.
2193
13087e59
JR
21942009-06-21 Jason Rumney <jasonr@gnu.org>
2195
2196 * w32term.c (keyboard_codepage): New static variable.
2197 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2198 (w32_read_socket) [WM_CHAR]: Use it to decode character
2199 input (bug#3237).
2200 (w32_initialize): Initialize it.
2201 (codepage_for_locale): New function.
2202
4735b74e
KR
22032009-06-20 Ken Raeburn <raeburn@raeburn.org>
2204
2205 * process.c (status_message): Pass Faset index argument as a lisp
2206 object, so as to work with USE_LISP_UNION_TYPE.
2207
0e727afa
YM
22082009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2209
2210 * coding.c (Ffind_coding_systems_region_internal):
2211 Cache checked characters.
2212
cf299835
KH
22132009-06-18 Kenichi Handa <handa@m17n.org>
2214
1ac9108a 2215 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2216
90f20d94
AS
22172009-06-18 Andreas Schwab <aschwab@redhat.com>
2218
2219 * xdisp.c (redisplay_internal): Check that the frame is still
2220 live after redisplay of its windows.
2221 (redisplay_windows): Check that the window is still live.
2222
7f1faf1c
KH
22232009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2224
2225 * coding.c (detect_coding_utf_16): Fix previous change.
2226
cc13543e
KH
22272009-06-16 Kenichi Handa <handa@m17n.org>
2228
2229 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2230 UTF-16 by checking the dispersion of Eth and Oth bytes.
2231
977b85f4
AS
22322009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2233
2234 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2235
66bd43d1
KH
22362009-06-15 Kenichi Handa <handa@m17n.org>
2237
2238 * process.c (status_message): Fix previous change. Be sure to
2239 decode a localized string.
2240
cb5ca9c5
YM
22412009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2242
2243 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2244 add comment explaining why.
2245
ec7709ba 22462009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2247
ec7709ba 2248 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2249
4b7f335c
AR
22502009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2251
2252 * nsfont.m (ns_attribute_value): Remove.
2253 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2254 (ns_has_attribute): Shrink the normal range.
2255 (ns_findfonts): Don't worry about requested spec in determining
2256 need for synthItal.
e41820ee 2257 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2258
73b26103
SZ
22592009-06-14 Seiji Zenitani <zenitani@mac.com>
2260
2261 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2262
5753e4da
KH
22632009-06-11 Kenichi Handa <handa@m17n.org>
2264
2265 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2266 overhang for the static composition case.
2267
3561b671
KH
22682009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2269
5753e4da
KH
2270 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2271 overhang for the automatic composition case.
2272
3561b671
KH
2273 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2274 composition case.
2275
852bbd41
CY
22762009-06-10 Chong Yidong <cyd@stupidchicken.com>
2277
2278 * xdisp.c (get_next_display_element): When handling wrap-prefix
2279 and line-prefix, treat \n as a control character (bug#3502).
2280
9903d1e6
KH
22812009-06-10 Kenichi Handa <handa@m17n.org>
2282
2283 * font.c (font_parse_family_registry): Fix for one-char foundry.
2284 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2285
0bcbaaaa
CY
22862009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2287
2288 * process.c (status_message): Fix handling of multibyte signal
2289 string (Bug#3499).
2290
40aa3f13
JM
22912009-06-09 Jim Meyering <meyering@redhat.com>
2292
1f80c7e2
CY
2293 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2294 color name is missing.
40aa3f13 2295
72d51285
KH
22962009-06-09 Kenichi Handa <handa@m17n.org>
2297
2298 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2299 FROM-CODE and TO-CODE are codepoints of CHARSET.
2300
c1d04d84
AR
23012009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2302
2303 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2304
23052009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2306
2307 Changes to support :script/:lang/:otf in NS font driver.
2308 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2309 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2310 indicate not part of font driver interface, and change callers.
2311 (ns_get_family): Remove pointless null check.
2312 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2313 ns_spec_to_descriptor, ns_descriptor_to_entity.
2314 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2315 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2316 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2317 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2318 (ns_get_req_script, ns_accumulate_script_ranges)
2319 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2320 New functions.
2321 (nsfont_list, nsfont_match): Use ns_findfonts.
2322 (nsfont_open): Use font descriptor instead of traits.
2323 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2324 (dump_glyphstring): Rename to ns_dump_glyphstring.
2325
c7eb9816
AR
2326 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2327
c1d04d84
AR
2328 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2329
2330 * fontset.c (fontset_from_font): Remove NS-specific code.
2331
ec7709ba 23322009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2333
2334 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2335 nonactive windows.
2336
31fd7c5c 23372009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2338
1ac9108a 2339 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2340
68852c13 23412009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2342
2343 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2344
6756cd1d
CY
23452009-06-07 Chong Yidong <cyd@stupidchicken.com>
2346
2347 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2348 account for the overflowing of newlines into the last glyph on the
2349 display line (Bug#3482).
2350
28bf482a
DR
23512009-06-05 David Reitter <david.reitter@gmail.com>
2352
ec7709ba
JB
2353 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2354 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2355 Fns_selection_exists_p, Fns_selection_owner_p.
2356
fdb55376
JR
23572009-06-03 Jason Rumney <jasonr@gnu.org>
2358
2359 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2360 available. (Bug#3379)
2361
05129fbe
KH
23622009-05-29 Kenichi Handa <handa@m17n.org>
2363
1ac9108a
SM
2364 * coding.c (get_translation_table):
2365 Check Venable_character_translation.
05129fbe 2366
ec7709ba 23672009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2368
ec7709ba
JB
2369 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2370 (x_make_frame_visible): Move frame to front rather than calling
15891144 2371 ns_raise_frame().
ec7709ba 2372 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2373 isn't key window.
ec7709ba 2374 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2375 drawRect may be called by NSView even if the frame is hidden.
2376
ec7709ba
JB
2377 * nsfns.m (Fx_create_frame): Follow other ports in
2378 determining visibility; default to t. Ensure async_visible is set.
15891144 2379
21f73755
EZ
23802009-05-23 Eli Zaretskii <eliz@gnu.org>
2381
2382 * dired.c (Ffile_attributes): Doc fix.
2383
34001e41
CY
23842009-05-22 Chong Yidong <cyd@stupidchicken.com>
2385
2386 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2387
46306a17
SM
23882009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2389
2390 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2391 and xfont_scratch_props.
2392 (syms_of_xfont): Do it here instead.
2393 (xfont_find_ccl_program): Delete, unused.
2394 (xfont_open): Delete unused var `i'.
2395
ef6e0694
KH
23962009-05-21 Kenichi Handa <handa@m17n.org>
2397
2398 * fontset.c (Qlatin): Don't make it static.
2399
46306a17
SM
2400 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2401 New functions.
ef6e0694
KH
2402 (xfont_scripts_cache, xfont_scratch_props): New variables.
2403 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2404 (xfont_list_pattern): Argument changed. Callers changed.
2405 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2406 (xfont_list): Don't reject a font spec with :script property.
2407 (xfont_has_char): Fix setting of encoding.
2408 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2409 xfont_scratch_props.
2410
24112009-05-19 Kenichi Handa <handa@m17n.org>
2412
46306a17 2413 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2414 Callers changed.
2415
24162009-05-18 Kenichi Handa <handa@m17n.org>
2417
2418 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2419
ac71ced7
SM
24202009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2421
2422 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2423 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2424
1c6d1051
YM
24252009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2426
2427 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2428 (x_delete_terminal): Dissociate resource database from display and
2429 then call XrmDestroyDatabase before closing display.
2430
9b9b779c
AR
24312009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2432
2433 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2434 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2435 whether selected frame is viable before raising it (based on patch
2436 by David Reitter), and improve commentary.
2437 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2438
cccd42d5
KH
24392009-05-15 Kenichi Handa <handa@m17n.org>
2440
2441 * font.c (Ffont_spec): Check arguments.
2442
337fbd17
CY
24432009-05-14 Chong Yidong <cyd@stupidchicken.com>
2444
2445 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2446 weight when testing attributes (Bug#3282).
2447
47a6002f
JD
24482009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2449
2450 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2451 what we expect to get in the next ConfigureNotify event.
2452
9cb363db
YM
2453 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2454 before Xft one (Bug#1696).
2455
b9126609
CY
24562009-05-07 David Reitter <david.reitter@gmail.com>
2457
2458 * nsfns.m (Fx_display_planes): Compute bitplanes using
2459 NSBitsPerPixelFromDepth (Bug#3207).
2460
27a69fd9
CY
24612009-05-10 Chong Yidong <cyd@stupidchicken.com>
2462
2463 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2464
00f37552
TTN
24652009-05-10 Ulrich Mueller <ulm@gentoo.org>
2466
2467 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2468
2d82a920
DR
24692009-05-07 David Reitter <david.reitter@gmail.com>
2470
ec7709ba
JB
2471 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2472 Respect mouse face background.
2d82a920 2473
46b0d52d
DR
24742009-05-07 David Reitter <david.reitter@gmail.com>
2475
ec7709ba
JB
2476 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2477 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2478 in ns_update_begin and ns_update_end.
2479
ce1b23bb
SM
24802009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2481
5996e1b7
SM
2482 * nsfns.m (ns_get_screen): Rewrite.
2483 Don't presume selected-frame is of type `ns'.
2484
ba98e3a0
SM
2485 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2486 all drivers.
2487
ce1b23bb
SM
2488 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2489
bcda200f
YM
24902009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2491
2492 * keyboard.h (add_user_signal): Fix typo in extern.
2493
2494 * lisp.h (add_user_signal): Remove extern.
2495
2496 * unexelf.c (unexec): Consider a section to precede the .bss section
2497 if its addresses overlap that of .bss.
2498 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2499 instead of dumping process.
2500
864660a2
SM
25012009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2502
2503 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2504
50da4e56
SM
25052009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2506
2507 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2508
51520a1a
DN
25092009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2510
2511 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2512 any statements.
2513
409ea3a1
AS
25142009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2515
59c4c60f
AS
2516 * process.c (read_process_output): Make sure the current buffer is
2517 always restored.
2518
409ea3a1
AS
2519 * coding.c (record_conversion_result): Don't modify
2520 Vlast_code_conversion_error for successful result.
2521 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2522
56f00ed2
KH
25232009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2524
2525 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2526 (load_charset_map): Remove unnecessary code.
56f00ed2 2527
4491c9d2
DR
25282009-04-30 David Reitter <david.reitter@gmail.com>
2529
35f5b128 2530 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2531 through f24.
2532
6970f632
CY
25332009-04-30 Chong Yidong <cyd@stupidchicken.com>
2534
2535 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2536
2537 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2538 face_at_buffer_position.
2539 (face_before_or_after_it_pos, get_next_display_element)
2540 (note_mouse_highlight): Update face_at_buffer_position call.
2541
2542 * term.c (term_mouse_highlight):
2543 * msdos.c (IT_note_mouse_highlight):
2544 * fontset.c (Finternal_char_font):
35f5b128 2545 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2546
2547 * dispextern.h (face_at_buffer_position): Update prototype.
2548
0c616f63
KH
25492009-04-30 Kenichi Handa <handa@m17n.org>
2550
35f5b128 2551 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2552
ad3aaf33
AS
25532009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2554
2555 * callproc.c (Fcall_process): Fix GC protection. Make sure
2556 current buffer is always restored.
2557
c3c963a0
YM
25582009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2559
2560 * atimer.c (init_atimer): Also clear stopped_atimers.
2561
2562 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2563
7e3386cb
YM
2564 * process.c (create_process): Clean up merger residues of
2565 2008-07-17 change.
2566
91f68422
CY
25672009-04-29 Ulrich Mueller <ulm@gentoo.org>
2568
2569 * lread.c (Vread_circle): New variable.
2570 (read1): Disable recursive read if Vread_circle is nil.
2571
24b34550
KH
25722009-04-29 Kenichi Handa <handa@m17n.org>
2573
2574 * fontset.h (set_default_ascii_font): Delete extern.
2575
2576 * fontset.c (set_default_ascii_font): Delete this unused function.
2577
2578 * frame.c (x_set_font): When ARG is a font-object, check if the
2579 font-object matches with the ASCII font-spec of the frame's
9c358bda 2580 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2581
77bf07e1
AS
25822009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2583
2584 * fns.c (Flocale_info): Protect vector from GC during decoding.
2585
2586 * process.c (Fstart_process): Protect argv strings from GC during
2587 encoding.
2588
2c55aacf
AS
25892009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2590
2591 * sysdep.c: Include <ctype.h>.
2592
b892d3c9
DR
25932009-04-27 David Reitter <david.reitter@gmail.com>
2594
35f5b128 2595 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2596 Remove commented-out code.
2597
9d0644c4
JB
25982009-04-26 Johan Bockgård <bojohan@gnu.org>
2599
2600 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2601
b7053016
JR
26022009-04-25 Jason Rumney <jasonr@gnu.org>
2603
2604 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2605
4e8231f3
YM
26062009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2607
2608 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2609 Swap bytes in short integer if fringe bitmap width > 8.
2610
493dcf2c
KH
26112009-04-23 Kenichi Handa <handa@m17n.org>
2612
2613 * xfaces.c (Fx_list_fonts): If a font size is specified in
2614 PATTERN, set it in returned scalable fonts.
2615
401e9e57
CY
26162009-04-22 Chong Yidong <cyd@stupidchicken.com>
2617
708e05dc
CY
2618 * keyboard.c (Fset_input_meta_mode): Doc fix.
2619
2620 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2621
1ac9108a 2622 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2623
2624 * coding.c (Fterminal_coding_system): Doc fix.
2625
2626 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2627 (Fx_display_pixel_height, Fx_display_planes)
2628 (Fx_display_color_cells, Fx_server_max_request_size)
2629 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2630 (Fx_display_mm_height, Fx_display_mm_width)
2631 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2632 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2633 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2634 (check_x_display_info): Handle terminal objects instead of
2635 terminal ids.
2636
401e9e57
CY
2637 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2638 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2639 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2640 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2641
df80c7f0
KH
26422009-04-21 Kenichi Handa <handa@m17n.org>
2643
5a8f12af 2644 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2645 (font_score): Check AVGWIDTH too.
908567ef 2646
df80c7f0
KH
2647 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2648 worst case.
1ac9108a
SM
2649 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2650 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2651
705af33f
JR
26522009-04-19 Jason Rumney <jasonr@gnu.org>
2653
2654 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2655 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2656
2657 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2658 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2659 get_phys_cursor_geometry.
2660
b71ac3dd 2661 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2662 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2663 using get_phys_cursor_geometry.
2664
2665 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2666 correctly calculated.
2667
dc2933eb
JD
26682009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2669
1ac9108a
SM
2670 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2671 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2672 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2673 is deprecated.
2674
973e7849
AS
26752009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2676
2677 * font.c (font_put_frame_data): Use xfree instead of free.
2678
314d66f4
JB
26792009-04-17 Juanma Barranquero <lekktu@gmail.com>
2680
2681 * w32font.c (Qja, Qko): Remove declarations.
2682 (syms_of_w32font): Don't DEFSYM them.
2683
cf702558
CY
26842009-04-17 Chong Yidong <cyd@stupidchicken.com>
2685
2686 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2687
2688 * font.h (Qja, Qko): Extern them.
2689
2690 * ftfont.c (Qja, Qko): Remove declarations.
2691
2692 * xfont.c (Qja, Qko): Remove declarations.
2693
b50504f5
KH
26942009-04-17 Kenichi Handa <handa@m17n.org>
2695
bde25748
KH
2696 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2697 string from a vector to handle Latin-1 characters correctly.
2698
b50504f5
KH
2699 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2700 entity even if the cache hits.
2701
f4646fff
AS
27022009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2703
2704 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2705 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2706
e7deaab0
AS
2707 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2708 * lisp.h: Adjust prototypes.
2709
0a0e7d49
CY
27102009-04-16 Chong Yidong <cyd@stupidchicken.com>
2711
2712 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2713 change (Bug#3003).
2714
3c908a57
KH
27152009-04-16 Kenichi Handa <handa@m17n.org>
2716
1ac9108a 2717 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2718
2719 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2720 adstyle.
2721
2722 * ftfont.c (Qja, Qko): Don't make them static.
2723 (enum ftfont_cache_for): New enum.
2724 (fc_charset_table): Undo the previous change.
2725 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2726 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2727 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2728 non-scarable font, try to get AVERAGE_WIDTH.
2729 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2730 Change ft_face_cache from a list of a hash-table. Don't check
2731 `ja' and `ko' adstyle here.
2732 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2733 FTFONT_CACHE_FOR_CHARET.
2734 (ftfont_get_charset): Undo the previous change.
1ac9108a 2735 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2736 (ftfont_close): Likewise.
2737 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2738
2739 * font.c (font_sort_entites): Change the meaning of the arg
2740 BEST-ONLY. Don't optimize for VEC of lenght 1.
2741 (font_select_entity): Just return the value of font_sort_entites.
2742
2743 * xfaces.c (merge_face_vectors): Reflect font properties in
2744 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2745 font_clear_prop if a face attribute doesn't change.
2746
3c908a57
KH
2747 * charset.h (charset_ksc5601): Extern it.
2748
2749 * charset.c (charset_ksc5601): New variable.
2750 (Fdefine_charset_internal): Set charset_ksc5601.
2751 (init_charset_once): Initialize charset_ksc5601 to -1.
2752
d65859c3
DN
27532009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2754
2755 * fileio.c (history_delete_duplicates): Remove unused declaration.
2756
2757 * callint.c (history_delete_duplicates): New declaration.
2758 (Fcall_interactively): Remove command history duplicates when
2759 history_delete_duplicates is true.
2760
3ba010e5
EZ
27612009-04-14 Eli Zaretskii <eliz@gnu.org>
2762
2763 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2764
06f19b91
KH
27652009-04-14 Kenichi Handa <handa@m17n.org>
2766
2767 * font.c (Ffont_info): Fix docstring. Fix the second element of
2768 the returned value (bug#2949).
2769
2cce8bfc
CY
27702009-04-14 Chong Yidong <cyd@stupidchicken.com>
2771
2772 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2773
d156542d
KH
27742009-04-14 Kenichi Handa <handa@m17n.org>
2775
2776 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2777 encoding charset is ascii_compatible.
2778
2779 * charset.c (Fdefine_charset_internal): Make charset
2780 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2781 code_offset is 0, and covers all ASCII characters.
2782
86fa089e
SM
27832009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2784
2785 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2786 (ns_string_to_pasteboard_internal):
2787 * nsmenu.m (process_dialog):
2788 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2789 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2790 * lisp.h (Fx_load_color_file): Declare.
2791
a8a3728b
KH
27922009-04-13 Kenichi Handa <handa@m17n.org>
2793
1ac9108a 2794 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2795 (font_select_entity): Suppress the code to optimize for the same
2796 kind of fonts.
2797 (font_load_for_lface): Get a font that supports at least ASCII
2798 characters.
2799
2800 * ftfont.c (Qja, Qko): New variables.
2801 (fc_charset_table): Delete uniquifier data for iso8859-1.
2802 (ftfont_get_latin1_charset): New function.
2803 (get_adstyle_property): New function.
2804 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2805 bitmap fonts.
2806 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2807 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2808 `ko' or `ja'.
2809 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2810 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2811 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2812 property.
2813 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2814 (syms_of_ftfont): DEFSYM Qja and Qko.
2815
483670b5
KH
28162009-04-09 Kenichi Handa <handa@m17n.org>
2817
12b55765
KH
2818 * charset.c (map_charset_chars): For a charset of `superset'
2819 method, fix calculation of code range.
2820
483670b5
KH
2821 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2822 from the list of extra properties.
2823 (font_clear_prop): Be sure to delete `:name' font property.
2824
57d3b93b
KH
28252009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2826
b4b2c2ca
YM
2827 * dispnew.c (redraw_overlapping_rows): Fix detection of
2828 overlapping for topmost and bottommost rows.
2829
1ac9108a 2830 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2831
472c3609
JR
28322009-04-06 Jason Rumney <jasonr@gnu.org>
2833
2834 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2835
ab193662
KH
28362009-04-06 Kenichi Handa <handa@m17n.org>
2837
2838 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2839
2840 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2841
0c26f026
KH
28422009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2843
2844 * ftfont.c (ftfont_open): Fix checking of the return value of
2845 FT_Load_Char. Fix setting font->underline_thickness.
2846
e173bbce
CY
28472009-04-04 Chong Yidong <cyd@stupidchicken.com>
2848
2849 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2850 (Fterminal_parameters, Fterminal_parameter)
2851 (Fset_terminal_parameter): In doc string, refer to terminal
2852 objects rather than terminal ids.
2853
693a2698
EZ
28542009-04-04 Eli Zaretskii <eliz@gnu.org>
2855
2856 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2857 ret_lim_data. (Bug#2867)
2858
d5221487
CY
28592009-04-03 Chong Yidong <cyd@stupidchicken.com>
2860
2861 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2862 so they don't get wider than the window, matching 2006-01-23
2863 change to the partner function in xdisp.c (Bug#2800).
2864
223509a3
KH
28652009-04-03 Kenichi Handa <handa@m17n.org>
2866
2867 * print.c (print_object): Make each lowest sub_char_table start a
2868 new line (Bug#2866).
2869
74fcd0b1
KH
28702009-04-02 Kenichi Handa <handa@m17n.org>
2871
2872 * fontset.c (fontset_font): Record no-font when a fontset
2873 explicitly tells not to try another font-specs.
2874
c542407d
SM
28752009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2876
2877 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2878
e3869731
KH
28792009-03-30 Kenichi Handa <handa@m17n.org>
2880
d8d2f142
KH
2881 * fontset.c (fontset_from_font): Specify only registry in a
2882 font-spec for all characters supported by that registry.
2883
e3869731
KH
2884 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2885 even if HAVE_M17N_FLT is not defined.
2886
5da5f805
CY
28872009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2888
2889 * ftfont.c: Conditionalize prototyping and use of
2890 ftfont_variation_glyphs.
2891
ab226c50
SM
28922009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2893
9628fed7
SM
2894 * frame.c (delete_frame): Work around compiler bug.
2895
2896 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2897 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2898 Some more EMACS_INT.
2899 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2900
2901 * xdisp.c (dump_glyph): Fix typo.
2902
ae19ba7c
SM
2903 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2904 (adjust_markers_gap_motion, adjust_markers_for_delete)
2905 (adjust_markers_for_insert, adjust_point)
2906 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2907 (make_gap, copy_text, count_size_as_multibyte, insert)
2908 (insert_and_inherit, insert_before_markers)
2909 (insert_before_markers_and_inherit, insert_1)
2910 (count_combining_before, count_combining_after, insert_1_both)
2911 (insert_from_string, insert_from_string_before_markers)
2912 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2913 (insert_from_buffer_1, adjust_after_replace)
2914 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2915 (replace_range_2, del_range, del_range_1, del_range_byte)
2916 (del_range_both, del_range_2, modify_region)
2917 (prepare_to_modify_buffer, signal_before_change)
2918 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2919 for buffer positions and sizes.
2920 * lisp.h: Adjust prototypes accordingly.
2921
2922 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2923 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2924 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2925
ab226c50
SM
2926 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2927
46dfb8fb
JD
29282009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2929
2930 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2931 lines and columns so we keep the same pixel height and width.
2932
2933 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2934 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2935 (x_handle_net_wm_state): New function to update frame parameter
2936 fullscreen.
2937 (x_term_init): Initialize atoms for _NET_WM_STATE.
2938
2939 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2940
d347e494
SM
29412009-03-27 Kevin Ryde <user42@zip.com.au>
2942
2943 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2944 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2945 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2946 (Fgpm_mouse_stop): Pass that new parameter.
2947 * termhooks.h (close_gpm): Adjust prototype.
2948
84db11d6
SM
29492009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2950
c95a5008
SM
2951 * lisp.h (Fx_focus_frame): Declare.
2952
84db11d6
SM
2953 * callint.c (Fcall_interactively): For '^' just delegate the work to
2954 handle-shift-selection.
2955 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2956
0a1958d6
CY
29572009-03-24 Chong Yidong <cyd@stupidchicken.com>
2958
0bfdff23
CY
2959 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2960
0a1958d6
CY
2961 * data.c (Qinteractive_form): New variable.
2962 (Finteractive_form): Use it.
2963
2964 * eval.c (Fcommandp): Use Qinteractive_form.
2965
58aec0d6
JR
29662009-03-24 Jason Rumney <jasonr@gnu.org>
2967
2968 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2969 Calculate total size precisely. Decode environment variables
2970 before substituting. (Bug#38)
2971
553dd618
KH
29722009-03-24 Kenichi Handa <handa@m17n.org>
2973
2974 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2975 encoding (Bug#2722).
553dd618 2976
c39ea606
JD
29772009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2978
2979 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2980 that gdpy is set.
2981
bc9b2b5e
AM
29822009-03-22 Alan Mackenzie <acm@muc.de>
2983
2984 * callint.c (Finteractive): Clarify the doc string - even
2985 promptless elements need \n separators.
2986
9f995a76
JR
29872009-03-22 Jason Rumney <jasonr@gnu.org>
2988
2989 * w32term.c (syms_of_w32term): Doc fix for
2990 x-use-underline-position-properties.
2991
22749e9a
EZ
29922009-03-21 Eli Zaretskii <eliz@gnu.org>
2993
2994 * w32.c (getpwuid): Change argument type to unsigned.
2995 (struct w32_id): Change type of `rid' member to unsigned.
2996 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2997 argument ID to unsigned. All callers changed.
2998 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2999
e00553bf
EZ
30002009-03-20 Eli Zaretskii <eliz@gnu.org>
3001
3002 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3003 negative, produce a float value.
3004
3005 * dired.c (make_uid, make_gid): New functions.
3006 (Ffile_attributes): Use them to avoid negative UID and GID.
3007
f761d6b6
JB
30082009-03-20 Juanma Barranquero <lekktu@gmail.com>
3009
3010 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3011 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3012 Fix typos in docstrings.
3013
d507f8d7
KH
30142009-03-19 Kenichi Handa <handa@m17n.org>
3015
3016 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3017 changed, use font_load_for_lface to get a new font object.
3018 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3019
3020 * frame.c (x_set_font): Handle the case that ARG is a cons.
3021
c68845e0
GM
30222009-03-19 Glenn Morris <rgm@gnu.org>
3023
3024 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3025
bfa49dd1
CY
30262009-03-19 Chong Yidong <cyd@stupidchicken.com>
3027
3028 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3029
8458d4c1
KH
30302009-03-19 Kenichi Handa <handa@m17n.org>
3031
3032 * charset.c (load_charset_map_from_file): When a mapfile can't be
3033 loaded, signal an error.
3034
78e7d1fe
EZ
30352009-03-18 Eli Zaretskii <eliz@gnu.org>
3036
3037 * dired.c (Ffile_attributes): Make sure UID and GID are always
3038 positive, even if the value is too large for a positive EMACS_INT.
3039 Doc fix.
3040
3041 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3042
5da9fdfa
YM
30432009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3044
3045 * xmenu.c (xdialog_show): Move Fredisplay call ...
3046 (Fx_popup_dialog): ... here.
3047
7519c40d
SM
30482009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3049
3050 * dired.c (file_name_completion): Disable the first optimization just
3051 installed, since it is not implemented correctly.
3052
2cd298e2
SM
30532009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3054
3055 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3056 only if the entry can affect bestmatch.
2cd298e2
SM
3057 Stop the search early, as Ftry_completion already does.
3058
48d37adf
CY
30592009-03-17 Chong Yidong <cyd@stupidchicken.com>
3060
e10c9c93 3061 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3062
9286b16a
CY
30632009-03-15 Chong Yidong <cyd@stupidchicken.com>
3064
3065 * keyboard.c (parse_menu_item): Don't display remappings as menu
3066 equivalent bindings (Bug#788).
3067
f7b146dc
JR
30682009-03-15 Jason Rumney <jasonr@gnu.org>
3069
3070 * w32term.h (WM_EMACS_PAINT): New message.
3071 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3072 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3073 before passing to lisp thread. (Bug#950)
3074
f761d6b6 30752009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3076
d93f9575
CY
3077 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3078 variable as it was never reset.
3079 (ns_term_init): Remove initialization of Lisp-settable defaults
3080 and ns_expand_space.
3081 (-setPanelFromDefaultValues): Remove ns_expand_space.
3082 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3083 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3084 i.e. no additional spacing, similar to Carbon port.
3085
d93f9575
CY
3086 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3087 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3088
305018ec
JD
30892009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3090
3091 * sound.c (alsa_configure): Remove call to deprecated
3092 snd_pcm_sw_params_set_xfer_align.
3093
f761d6b6 30942009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3095
3096 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3097 after clicking in a detached tool bar.
3098 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3099
46e722a9
SM
31002009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3101
348db3dd
SM
3102 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3103 int/Lisp_Object mixup).
46e722a9 3104
a3d16f39
KH
31052009-03-13 Kenichi Handa <handa@m17n.org>
3106
3107 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3108 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3109 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3110 (set_fontset_font): Change ARG to a vector. Handle range_list in
3111 ARG correctly.
3112 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3113 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3114 the above change.
3115 (fontset_from_font): Fix previous change.
fe24f56a 3116 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3117 entry. If FONTSET is the default fontset, don't set the extra
3118 slot of the returning char-table.
3119
b066e6b6
JB
31202009-03-12 Juanma Barranquero <lekktu@gmail.com>
3121
3122 * nsfns.m (Fx_close_connection): Doc fix.
3123 (Fns_do_applescript): Reflow docstring.
3124 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3125 (Fx_display_pixel_width, Fx_display_pixel_height)
3126 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3127 Fix typos in docstrings.
3128 (Fns_set_alpha): Fix typos in error messages.
3129
d472514e 31302009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3131
d472514e 3132 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3133 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3134 were used for such events.
3135
d472514e
JB
3136 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3137 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3138
d472514e 3139 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3140 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3141
fb930676
KH
31422009-03-11 Kenichi Handa <handa@m17n.org>
3143
ff85581a
KH
3144 * font.h (font_open_by_spec): Extern it.
3145
c50b7e98
KH
3146 * font.c (font_open_by_spec): New function.
3147 (font_open_by_name): Use font_open_by_spec.
3148
fb930676
KH
3149 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3150 fontset of the frame.
3151
3152 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3153 modify the default font of frames that use this fontset.
3154 (num_auto_fontsets): New variable.
3155 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3156 name. Be sure to set FONTSET_ASCII to the correct font name.
3157 (update_auto_fontset_alist): New function.
3158
df4e8455
JB
31592009-03-11 Juanma Barranquero <lekktu@gmail.com>
3160
3161 * makefile.w32-in: Update dependencies.
3162
0a375797
AR
31632009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3164
3165 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3166
61313fa3
SM
31672009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3168
3169 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3170
b55103fb
CY
31712009-03-10 Chong Yidong <cyd@stupidchicken.com>
3172
3173 * lread.c (Feval_buffer): Doc fix.
3174
dde2559c
KH
31752009-03-09 Kenichi Handa <handa@m17n.org>
3176
3177 * charset.c (Qfile_name_handler_alist): Extern it.
3178 (load_charset_map_from_file): Temporarily bind
3179 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3180
df4e8455 31812009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3182
47f588bb
GM
3183 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3184 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3185
4ddf94bd
AR
31862009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3187
4c9bdfc2
AR
3188 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3189 (x_set_window_size): Change back to calculated method of setting
3190 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3191 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3192 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3193
fe41ae9e
AR
3194 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3195
4c9bdfc2
AR
3196 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3197 accelerator in parens under GNUstep.
3198
825d0875
KH
31992009-03-06 Kenichi Handa <handa@m17n.org>
3200
3201 These changes are to detect incorrect composition sequence without
f3b3be74 3202 looking ahead the source. (Bug#2370)
825d0875
KH
3203
3204 * coding.h: Include "composite.h".
3205 (enum compisition_state): New enum.
3206 (struct compisition_status): New struct.
3207 (struct iso_2022_spec): New member cmp_status.
3208 (struct emacs_mule_spec): New struct.
3209 (struct coding_system): New members ctext_extended_segment_len and
3210 embedded_utf_8. Change the union member
3211 spec.emacs_mule_full_support to spec.emacs_mule.
3212
3213 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3214 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3215 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3216 (ADD_COMPOSITION_DATA): New arg nbytes.
3217 (emacs_mule_char): New arg cmp_status.
3218 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3219 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3220 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3221 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3222 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3223 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3224 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3225 (EMACS_MULE_COMPOSITION_END): New macro.
3226 (emacs_mule_finish_composition): New function.
3227 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3228 (decode_coding_emacs_mule): Avoid long looking ahead while
3229 handling composition.
3230 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3231 (ENCODE_COMPOSITION_RULE): New macro.
3232 (finish_composition): New function.
3233 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3234 (DECODE_COMPOSITION_START): New implementation.
3235 (DECODE_COMPOSITION_END): Likewise.
3236 (STORE_COMPOSITION_RULE): New macro.
3237 (decode_coding_iso_2022): Avoid long looking ahead while handling
3238 composition, CTEXT extended segment, and embedded UTF-8.
3239 (setup_coding_system): For a coding of type iso-2022, reset
3240 CODING_ISO_EXTSEGMENT_LEN (coding) and
3241 CODING_ISO_EMBEDDED_UTF_8 (coding).
3242 (get_translation): Delete arguments last_block, from_nchars,
3243 to_nchars. Callers changed.
3244 (produce_chars): Don't modify charbuf. Adjusted for the change of
3245 get_translation.
98a326f7 3246 (produce_composition): Adjust for the new annotation sequence.
825d0875 3247 (handle_composition_annotation): Likewise.
98a326f7 3248 (consume_chars): Adjust for the change of get_translation.
825d0875 3249
ccbc4452
AR
32502009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3251
4ddf94bd 3252 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3253
988a7ddb
KH
32542009-03-05 Kenichi Handa <handa@m17n.org>
3255
3256 * font.c (font_select_entity): New function.
3257 (font_find_for_lface): Use font_select_entity to select a font.
3258
3259 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3260 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3261 font with C restriction.
3262
98a326f7 32632009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3264
be1bce46 3265 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3266
10ea2b82
JR
32672009-03-04 Jason Rumney <jasonr@gnu.org>
3268
2c93b248 3269 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3270 characters that have already been read. (Bug#2569)
2c93b248 3271
10ea2b82
JR
3272 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3273 Log an error message if check_image_size failed.
3274 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3275 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3276
71a0c011
EZ
32772009-03-02 Eli Zaretskii <eliz@gnu.org>
3278
3279 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3280 when decoding process output.
3281
2f63bba8
RS
32822009-03-01 Richard M Stallman <rms@gnu.org>
3283
3284 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3285
3286 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3287
0a9564cb
EZ
32882009-02-28 Eli Zaretskii <eliz@gnu.org>
3289
3290 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3291 (decode_coding_emacs_mule, decode_coding_iso_2022)
3292 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3293 (decode_coding_raw_text, decode_coding_charset)
3294 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3295 Honor inhibit-eol-conversion. (Bug #2186)
3296
449148b3
JR
32972009-02-28 Jason Rumney <jasonr@gnu.org>
3298
3299 * coding.c (detect_coding_charset): If not checking latin extra,
3300 fail on characters between 0x80 and 0xA0. (Bug#2354)
3301
a4aee864
EZ
33022009-02-28 Eli Zaretskii <eliz@gnu.org>
3303
3304 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3305 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3306
d88bee5a
GM
33072009-02-27 Glenn Morris <rgm@gnu.org>
3308
3309 * callint.c (Finteractive): Doc fix.
3310
a808f22d
KH
33112009-02-27 Kenichi Handa <handa@m17n.org>
3312
3313 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3314
caf8d60c
CY
33152009-02-27 Chong Yidong <cyd@stupidchicken.com>
3316
3317 * font.c (font_style_to_value): Set value for unknown symbols to
3318 100 instead of 255.
b61137ea
CY
3319 (weight_table, slant_table, width_table): Treat "unspecified" as
3320 the default value.
caf8d60c 3321
1a0de25c
JB
33222009-02-26 Juanma Barranquero <lekktu@gmail.com>
3323
3324 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3325
8fc45744
JB
33262009-02-25 Juanma Barranquero <lekktu@gmail.com>
3327
107bd7d1
JB
3328 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3329 error as soon as a recursive load is detected.
8fc45744 3330
f097e223
AR
33312009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3332
3333 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3334 before caching.
3335
8810a12f
KH
33362009-02-24 Kenichi Handa <handa@m17n.org>
3337
3338 * fontset.c (fontset_find_font): Fix the condition for checking
3339 unavailable font.
3340
2c7d1565
GM
33412009-02-24 Glenn Morris <rgm@gnu.org>
3342
3343 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3344 whitespace that confuses documentation.
3345
a20878b6
MB
33462009-02-23 Miles Bader <miles@gnu.org>
3347
3348 * process.c (Flist_system_processes, Fprocess_attributes)
3349 (syms_of_process): Rename `system-process-attributes' to
3350 `process-attributes'.
3351
b3b58c01
AS
33522009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3353
1b3b981b
AS
3354 * coding.h (struct coding_system): Make safe_charsets a pointer to
3355 unsigned char.
3356 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3357 being 255.
3358 (SAFE_CHARSET_P): Likewise.
3359 (setup_iso_safe_charsets): Properly setup safe_charsets.
3360 (Fdefine_coding_system_internal): Likewise.
3361 (setup_coding_system): Likewise. Remove unneeded casts.
3362 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3363 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3364 unneeded casts.
3365
b3b58c01
AS
3366 * insdel.c (del_range_2): Don't modify gap contents when called
3367 from decode_coding_object. (Bug#1809)
3368
0b6f228c
CY
33692009-02-21 Chong Yidong <cyd@stupidchicken.com>
3370
3371 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3372 Qfont_object.
3373 (Ftype_of): Recognize font objects.
3374
3375 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3376
3377 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3378 moved to data.c.
3379
52f8870b
AR
33802009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3381
3382 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3383 async_iconified. Based on a patch by Christian Lynbech
3384 <christian.lynbech@tieto.com>.
3385 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3386
7087d5e9
GM
33872009-02-20 Glenn Morris <rgm@gnu.org>
3388
3389 * syntax.c (Fskip_chars_forward): Fix doc typo.
3390
41d2ceef
CY
33912009-02-20 Chong Yidong <cyd@stupidchicken.com>
3392
3393 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3394
1a3b7ca6
CY
33952009-02-19 Chong Yidong <cyd@stupidchicken.com>
3396
3397 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3398
73cce38d
KH
33992009-02-19 Kenichi Handa <handa@m17n.org>
3400
3401 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3402 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3403
a51092ee
DN
34042009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3405
3406 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3407
c423ecca
KH
34082009-02-18 Kenichi Handa <handa@m17n.org>
3409
3410 * font.c (font_check_otf_features): Fix handling of `nil' element.
3411 (Ffont_spec): Describe :lang and :otf in the docstring.
3412
4c1958f4
AS
34132009-02-16 Andreas Schwab <schwab@suse.de>
3414
3415 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3416 string.
3417
5704f39a
KH
34182009-02-16 Kenichi Handa <handa@m17n.org>
3419
3420 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3421 (Bug#1723)
5704f39a 3422
8f0085aa
CY
34232009-02-14 Chong Yidong <cyd@stupidchicken.com>
3424
a057d86a 3425 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3426
3427 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3428 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3429
aff01dd9
EZ
34302009-02-14 Eli Zaretskii <eliz@gnu.org>
3431
3432 * msdos.c (MAX_SCREEN_BUF): New macro.
3433 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3434 Encode the entire run of glyphs sharing the same face, instead of
3435 doing that one glyph at a time (fixes a bug with displaying
3436 double-size characters).
3437
ba301db3
AR
34382009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3439
3440 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3441
3442 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3443 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3444 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3445
3446 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3447 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3448
51d861de
SM
34492009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3450
3451 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3452 invisible areas.
3453
7fed8996
JR
34542009-02-12 Jason Rumney <jasonr@gnu.org>
3455
631ea4fb
JR
3456 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3457 (add_font_entity_to_list): Call check_face_name even when family
3458 is unspecified.
3459
cb4a3e42
JR
3460 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3461 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3462 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3463
7fed8996 3464 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3465 raster fonts. (Bug#2219)
7fed8996 3466
895416e3
KH
34672009-02-12 Kenichi Handa <handa@m17n.org>
3468
3469 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3470 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3471 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3472 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3473 (find_automatic_composition): While looking forward and backward,
3474 check static composition. Fix where to stop looking forward.
3475 (composition_adjust_point): Fix checking of static composition.
3476 (Fcomposition_get_gstring): Pay attention to
1dacf998 3477 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3478
3479 * lisp.h (fast_looking_at): Extern it.
3480
3481 * search.c (fast_looking_at): New function.
3482
51d861de 3483 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3484 <struct glyph>.u.cmp.to.
3485 (append_composite_glyph): Likewise.
3486
51d861de 3487 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3488 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3489 composition.
51d861de 3490 (append_composite_glyph): Adjust for the change of
895416e3
KH
3491 <strcut glyph>.u.cmp.to.
3492
8510724d
JB
34932009-02-11 Juanma Barranquero <lekktu@gmail.com>
3494
3495 * casetab.c (init_casetab_once):
3496 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3497 * font.c (font_update_lface):
3498 * fontset.c (Fnew_fontset):
3499 * ftfont.c (ftfont_drive_otf):
3500 * xfont.c (xfont_open):
3501 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3502
294fa707
SM
35032009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3504
3505 * fileio.c (Fwrite_region): !NILP -> CONSP.
3506
b5bfebec
AS
35072009-02-10 Andreas Schwab <schwab@suse.de>
3508
3509 * process.c (send_process): Properly relocate pointer into data
adab88bd 3510 when using encoded data. (Bug#2272)
b5bfebec 3511
cb84a2be
KH
35122009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3513
3514 * coding.c (detect_coding_charset): Fix previous change.
3515
89e09428
JR
35162009-02-08 Jason Rumney <jasonr@gnu.org>
3517
3518 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3519 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3520
4470a277
AS
35212009-02-07 Andreas Schwab <schwab@suse.de>
3522
3523 * unexelf.c (unexec): Fix error message.
3524
3175b12a
AR
35252009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3526
3527 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3528 when modal window is active. (Bug #2152)
3175b12a
AR
3529 (applicationShouldTerminate:): Remove now-unneeded while loop
3530 around NSRunAlertPanel.
3531
3532 * nsmenu.m (popupSession): New file-global variable.
3533 (pop_down_menu): End the popupSession before closing dialog.
3534 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3535 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3536 don't query NSApp for events (just sleep instead).
3537
8434d0b8
EZ
35382009-02-07 Eli Zaretskii <eliz@gnu.org>
3539
51d861de
SM
3540 * coding.c (syms_of_coding) <translation-table-for-input>:
3541 Modify doc string to discourage use for character code unification.
8434d0b8 3542
aa82edfd
CY
35432009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3544
3545 * atimer.c (run_timers): Update pending_atimers.
3546
2d283c7c
CY
35472009-02-06 Chong Yidong <cyd@stupidchicken.com>
3548
eb306cab
CY
3549 * image.c (svg_load_image): Fix last change.
3550
2d283c7c
CY
3551 * xfns.c (Fx_create_frame): Signal an error if no font is
3552 found (Bug#2147).
3553
4d8e170e
JB
35542009-02-05 Juanma Barranquero <lekktu@gmail.com>
3555
3556 * character.c (syms_of_character) <script-representative-chars>:
3557 Fix typo in docstring.
3558
c96169a0
AR
35592009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3560
3561 * nsmenu.m (pop_down_menu): New function.
3562 (ns_popup_dialog): Call it on unwind.
3563 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3564 call timer_check() (Bug#2154).
3565 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3566 handling_signal is set.
3567 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3568
31fd7c5c 3569 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3570
3571 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3572
3573 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3574
51d861de
SM
3575 * keyboard.c (poll_for_input_1, handle_async_input):
3576 Set handling_signal under HAVE_NS.
c96169a0 3577
aacd8ba1
GM
35782009-02-04 Glenn Morris <rgm@gnu.org>
3579
3580 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3581
4cb75c4b
KH
35822009-02-04 Kenichi Handa <handa@m17n.org>
3583
3584 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3585
3586 * charset.c (Fchar_charset): New optional arg restriction.
3587
3588 * coding.h (coding_system_charset_list): Extern it.
3589
3590 * coding.c (coding_system_charset_list): New function.
3591
3592 * composite.c: Include coding.h and termhooks.h.
3593 (composition_gstring_p): Fix for the terminal case.
3594 (composition_gstring_width): Likewise.
3595 (fill_gstring_body): Likewise.
3596 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3597 the frame.
3598 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3599 is within a composition.
867d4bb3 3600 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3601
3602 * term.c (encode_terminal_code): Fix handling of composition.
3603 (produce_composite_glyph): For static composition, get pixel_width
3604 from struct composition.
3605
826ba17e
AS
36062009-02-02 Andreas Schwab <schwab@suse.de>
3607
3608 * unexelf.c (unexec): Handle unaligned bss offset.
3609
8ad093db
AR
36102009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3611
3612 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3613 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3614
8ad093db
AR
3615 * keyboard.c (handle_interrupt): Don't call
3616 quit_throw_to_read_char() under NS.
d0a76a6e 3617
8ad093db
AR
3618 * blockinput.h: Remove NS-specific code.
3619
4d18a7a2
DN
36202009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3621
db878925
DN
3622 * dispnew.c (window_change_signal): Don't try to get the size of a
3623 suspended tty frame.
3624 * term.c (Fresume_tty): Resize if the size has changed while the
3625 tty was suspended.
3626
4d18a7a2
DN
3627 * alloc.c (mark_stack): Properly conditionalize previous change.
3628
8984df7c
JB
36292009-01-30 Juanma Barranquero <lekktu@gmail.com>
3630
3631 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3632 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3633 Remove; this code is not used on Windows.
3634
75f4f1ac
EZ
36352009-01-30 Eli Zaretskii <eliz@gnu.org>
3636
3637 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3638 EOLs that also has stray ^M characters.
3639
07a1e794
JB
36402009-01-30 Juanma Barranquero <lekktu@gmail.com>
3641
3642 * atimer.c (run_timers, alarm_signal_handler):
3643 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3644 * w32inevt.c (w32_console_read_socket):
3645 * w32term.c (w32_read_socket):
3646 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3647
a8b11cc9
CY
36482009-01-30 Chong Yidong <cyd@stupidchicken.com>
3649
3650 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3651 Initialize it as a relative filename pattern.
3652 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3653 (Fcall_process_region): Simplify temp file creation using
3654 temporary-file-directory.
3655
c279587b
EZ
36562009-01-29 Eli Zaretskii <eliz@gnu.org>
3657
3658 * msdos.c: Rename pending_signals to msdos_pending_signals.
3659 (sig_suspender, sigprocmask): Adjust.
3660
a8fe3242
CY
36612009-01-29 Chong Yidong <cyd@stupidchicken.com>
3662
3663 * keyboard.c (pending_signals): New var.
3664 (poll_for_input, input_available_signal, init_keyboard): Set it.
3665 (process_pending_signals): New function.
3666
3667 * lisp.h (QUIT): Check pending_signals instead of
3668 interrupt_input_pending. Use process_pending_signals.
3669
51d861de 3670 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3671
51d861de 3672 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3673
3674 * sysdep.c (emacs_write): Use process_pending_signals.
3675
3676 * xterm.c (XTread_socket): Update pending_signals.
3677
3678 * w32term.c (w32_read_socket): Update pending_signals.
3679
3680 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3681
6570a1c4
KH
36822009-01-29 Kenichi Handa <handa@m17n.org>
3683
3684 * xftfont.c (xftfont_has_char): New function.
3685 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3686
d72a4afa
AR
36872009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3688
3689 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3690 under GNUstep.
3691 (ns_query_color): New declaration.
3692
3693 * nsterm.m (ns_confirm_quit): New variable.
3694 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3695 (EmacsApp-applicationShouldTerminate:): Use it.
3696 (EmacsPrefsController): Let user set it.
3697 (ns_query_color): New function.
3698 (ns_defined_color): Use it.
3699 (ns_initialize): Drop.
3700 (ns_term_init): Add two lines from ns_initialize(), and set
3701 input_interrupt_mode to nil.
3702
3703 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3704 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3705
9fe78804
KH
37062009-01-28 Kenichi Handa <handa@m17n.org>
3707
3708 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3709 (fontset_get_font_group): Remember that no font-group is specified
3710 for C.
9fe78804 3711
fa57de36
CY
37122009-01-27 Chong Yidong <cyd@stupidchicken.com>
3713
930600e9
CY
3714 * fns.c (concat): Check for string overflow (bug#1787).
3715
fa57de36
CY
3716 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3717 Quadruple undo limits (bug#1501).
3718
7179ce7b
KH
37192009-01-27 Kenichi Handa <handa@m17n.org>
3720
3721 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3722 directly use GT_Get_Char_index.
3723
3724 * xftfont.c (struct xftfont_info): New member `index'.
3725
3726 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3727 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3728
5be8fcc0
CY
37292009-01-26 Kenichi Handa <handa@m17n.org>
3730
3731 * fontset.c (fontset_find_font): Fix handling of non-cons return
3732 value of fontset_get_font_group.
3733 (fontset_font): Revert last change.
3734
19ae3e61
JR
37352009-01-26 Jason Rumney <jasonr@gnu.org>
3736
3737 * w32font.c (w32font_list_internal): Return quickly if registry is
3738 unknown. Simplify final return.
3739 (add_font_entity_to_list): Break complex logic down into more
3740 manageable chunks. Move unknown registry check to
3741 w32font_list_internal.
3742
8612b71a
AR
37432009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3744
3745 Changes to remove Feval calls from GUI under NS.
3746
d8038940
JB
3747 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3748 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3749 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3750
3751 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3752 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3753 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3754 instead of NON_ASCII_KEYSTROKE_EVENT.
3755 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3756 (EmacsApp-applicationShouldTerminate:): Query user.
3757 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3758 instead of Feval.
3759
3760 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3761
3762 * keyboard.c (kbd_buffer_get_event): Check for it.
3763 (keys_of_keyboard): Define lispy keys for
3764 ns-put/unput-working-text.
3765
3766 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3767 versions.
3768 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3769
6288ae55
CY
37702009-01-25 Chong Yidong <cyd@stupidchicken.com>
3771
3772 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3773 setting current_buffer directly. (Bug#2044)
6288ae55 3774
289e7f8f
CY
37752009-01-24 Chong Yidong <cyd@stupidchicken.com>
3776
5ce87308 3777 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3778 any work. (Bug#1952, bug#1990).
5ce87308 3779
64cc3cf6 3780 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3781
b3243e6f
AR
37822009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3783
3784 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3785 (ns_no_defaults): New declaration.
3786 (main): Use it.
e0d2e69a 3787
d900b2af 3788 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3789
d900b2af 3790 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3791
d900b2af
AR
3792 * nsterm.m (ns_no_defaults): New variable.
3793 (ns_initialize): Don't read defaults when ns_no_defaults.
3794 (EmacsView-readSelectionFromPasteboard:)
3795 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3796 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3797 (ns_dumpglyphs_stretch): New function.
3798 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3799 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3800
e0d2e69a
AR
3801 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3802
3ac71f5d
CY
38032009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3804
3805 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3806 call for Sparc64.
3807
3fe53a83
AR
38082009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3809
3810 * nsfns.m:
3811 * nsgui.h:
3812 * nsmenu.m:
3813 * nsselect.m:
3814 * nsterm.h:
3815 * nsterm.m: Remove '23' comments that indicated code added during
3816 update from emacs-20 -> emacs-23.
3817
10f87c6f 38182009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3819
3820 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3821 ns_alternate_modifier. (Bug#1217)
a3b53a85 3822
c7cef62d
AR
3823 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3824 Display all shortcuts, including those w/o super modifier.
3825
575fb8bd
AR
3826 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3827
918b848b
CY
38282009-01-22 Chong Yidong <cyd@stupidchicken.com>
3829
3830 * fileio.c (Vwrite_region_post_annotation_function)
3831 (Vwrite_region_annotation_buffers): New vars.
3832 (build_annotations_unwind): Just reset
3833 Vwrite_region_annotation_buffers.
3834 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3835 Call write-region-post-annotation-function.
3836 (build_annotations): Add to Vwrite_region_annotation_buffers if
3837 buffer changes.
3838
a39e2539
AR
38392009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3840
3841 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3842 Tiger.
51d861de
SM
3843 * nsfns.m (ns_do_applescript):
3844 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3845
35ed44db
AR
38462009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3847
3848 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3849
cbe0b5bf
AR
38502009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3851
3852 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3853
6049d3a0
AR
3854 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3855
3856 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3857 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3858 handle Ctrl-tab. (Bug#1841)
3859 (ns_get_color): Use unsigned long long for scanned hex string value.
3860 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3861 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3862 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3863 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3864 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3865 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3866 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3867
d3810c21 3868 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3869 DPI. (Bug#1316)
d3810c21
AR
3870 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3871 values in onTiger section.
4c7077c3 3872
e301e634
CY
38732009-01-19 Chong Yidong <cyd@stupidchicken.com>
3874
7f82490b
CY
3875 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3876 Check return value of font_spec_from_name.
64cc3cf6 3877 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3878
3879 * font.c (font_spec_from_name): Return Qnil if font name could not
3880 be parsed.
3881 (font_parse_name): Treat a `?' character as part of an XLFD.
3882
e301e634
CY
3883 * fns.c (Fsubstring): Doc fix.
3884
1c0db158
KH
38852009-01-19 Kenichi Handa <handa@m17n.org>
3886
51d861de 3887 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3888 (ftfont_list): Likewise.
3889
acf20901
JB
38902009-01-18 Juanma Barranquero <lekktu@gmail.com>
3891
fff4e459
JB
3892 * dbusbind.c (Fdbus_register_signal):
3893 * process.c (conv_sockaddr_to_lisp):
3894 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3895
acf20901
JB
3896 * callproc.c (Fgetenv_internal): Doc fix.
3897
e7abcdfb
CY
38982009-01-16 Chong Yidong <cyd@stupidchicken.com>
3899
3900 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3901 it is not even used.
3902
b60861e6
GM
39032009-01-16 Glenn Morris <rgm@gnu.org>
3904
3905 * font.c (Ffont_variation_glyphs): Silence compiler.
3906
8db52afe
JB
39072009-01-15 Juanma Barranquero <lekktu@gmail.com>
3908
3909 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3910 Reported by David Robinow <drobinow@gmail.com>.
3911
4cddb209
KH
39122009-01-15 Kenichi Handa <handa@m17n.org>
3913
51d861de 3914 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3915
f247f67b
JR
39162009-01-14 Jason Rumney <jasonr@gnu.org>
3917
3918 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3919 never a fontset. (Bug#1562)
f247f67b 3920
f56a4450
KH
39212009-01-14 Kenichi Handa <handa@m17n.org>
3922
3923 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3924 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3925
4e99855e
CY
39262009-01-13 Chong Yidong <cyd@stupidchicken.com>
3927
3928 * font.c (font_clear_prop): If clearing the family, clear the font
3929 width index too.
3930
fff4e459 3931 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3932
24f01470
JB
39332009-01-12 Juanma Barranquero <lekktu@gmail.com>
3934
3935 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3936 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3937 functions, use sizeof.
3938
a41240a3
MR
39392009-01-12 Martin Rudalics <rudalics@gmx.at>
3940
3941 * keyboard.c (read_char): Fix case where last_nonmenu_event
3942 returned a bad value with submenus. (Bug#447)
3943
944636b8
CY
39442009-01-12 Chong Yidong <cyd@stupidchicken.com>
3945
3946 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3947 family, clear the font width index too.
3948
0dad7c6f
JR
39492009-01-11 Jason Rumney <jasonr@gnu.org>
3950
3951 * keyboard.c (cmd_error_internal): Exit when errors occur before
3952 frame creation and not in daemon mode. (Bug#1836)
3953
7c2363af
CY
39542009-01-10 Chong Yidong <cyd@stupidchicken.com>
3955
3956 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3957 of a display vector, backtrack.
3958 (try_window_reusing_current_matrix): Check glyph type before
3959 referencing charpos member.
3960
97b1b294
EZ
39612009-01-10 Eli Zaretskii <eliz@gnu.org>
3962
3963 Fix Bug #876:
3964
3965 * coding.c (inhibit_null_byte_detection): New variable.
3966 (detect_coding, detect_coding_system): Don't pay attention to null
3967 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3968 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3969 <inhibit-iso-escape-detection>: Doc fix.
3970
4624b6e3
JR
39712009-01-09 Jason Rumney <jasonr@gnu.org>
3972
3973 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3974 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3975 Only report Unicode Plane 2 fonts as unicode-sip.
3976
323b840c
CY
39772009-01-09 Chong Yidong <cyd@stupidchicken.com>
3978
51d861de
SM
3979 * xfaces.c (Fx_font_family_list): Delete function.
3980 Move compatibility version to faces.el.
323b840c 3981
51d861de 3982 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3983
eba7400d
MR
39842009-01-09 Martin Rudalics <rudalics@gmx.at>
3985
3986 * frame.c (x_set_frame_parameters): Remember requested value for
3987 fullscreen before it's reset by the parameter handler.
3988
4b09796d
GM
39892009-01-09 Glenn Morris <rgm@gnu.org>
3990
3991 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3992 (last_command_event): ... and update all users.
4b09796d
GM
3993 (last_input_char): For clarity, rename to...
3994 (last_input_event): ... and update all users.
3995 (last-command-char, last-input-char): Move to subr.el as aliases.
3996 * cmds.c, commands.h: Update for last_command_char rename.
3997
14ccea62
CY
39982009-01-08 Chong Yidong <cyd@stupidchicken.com>
3999
51d861de 4000 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4001
5f004711
JR
40022009-01-08 Jason Rumney <jasonr@gnu.org>
4003
4004 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4005 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4006 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4007 Don't declare.
fff4e459 4008 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4009 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4010
b71f6f73
KH
40112009-01-07 Kenichi Handa <handa@m17n.org>
4012
50b06221 4013 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4014 remember the coding system used for decoding in
50b06221
KH
4015 coding_system (Bug#1039).
4016
b71f6f73 4017 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4018 breaking the loop. (Bug#870)
b71f6f73
KH
4019 (decode_coding_utf_16, decode_coding_emacs_mule)
4020 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4021 (decode_coding_charset): Likewise.
4022
56f668f7
MR
40232009-01-05 Martin Rudalics <rudalics@gmx.at>
4024
4025 * frame.c (x_set_frame_parameters): Make sure height (width) get
4026 applied when fullwidth (fullheight) is set. (Bug#1522)
4027
5da9424d
JB
40282009-01-04 Juanma Barranquero <lekktu@gmail.com>
4029
4030 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4031 (utc_base): Declare as ULONGLONG, not long double.
4032 (convert_time_raw): Delete.
4033 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4034 (initialize_utc_base): New function.
4035 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4036 (convert_from_time_t): Use initialize_utc_base; compute result with
4037 64-bit arithmetic.
4038 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4039
c4605e09
EZ
40402009-01-03 Eli Zaretskii <eliz@gnu.org>
4041
9acef61c 4042 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4043 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4044 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4045 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4046 [!subprocesses]: Define.
4047 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4048 (Flist_system_processes, Fsystem_process_attributes)
4049 [!subprocesses]: Call list_system_processes and
4050 system_process_attributes instead of returning Qnil.
4051
9acef61c
JB
4052 * dosfns.c (system_process_attributes, list_system_processes):
4053 New functions.
c4605e09
EZ
4054
4055 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4056
4057 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4058 Don't use the default (no-op) implementation.
4059
8b7d0a16
JR
40602009-01-03 Jason Rumney <jasonr@gnu.org>
4061
a6d46bc1
JR
4062 * keyboard.c (parse_modifiers_uncached): Wheel events are
4063 clicks (bug#687).
4064
8b7d0a16
JR
4065 * w32term.c (x_query_colors, x_query_color): New functions.
4066
4067 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4068 (svg_load_image): Cast returned pointers from dynamically loaded
4069 functions. Eliminate W32 specific code.
4070
bfe11752
DN
40712009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4072
89e2438a
DN
4073 * nsfns.m (x_set_foreground_color, x_set_background_color)
4074 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4075 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4076 x_ prefix instead of ns_. Update references.
4077 (syms_of_nsfns): Add a FIXME comment.
4078
4079 * nsterm.m (x_set_cursor_type): New prototype.
4080 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4081
bfe11752
DN
4082 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4083 for Solaris instead of incorrectly providing Qutime and Qcutime.
4084
031da700
EZ
40852009-01-02 Eli Zaretskii <eliz@gnu.org>
4086
4087 * w32.c (process_times): Compute sum of utime and stime.
4088 (system_process_attributes): Add Qtime to the alist.
4089
4090 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4091 and add them to the alist.
4092
4093 * process.c (top level) <Qtime, Qctime>: New variables.
4094 (syms_of_process): staticpro them.
4095 (Fsystem_process_attributes): Add their documentation to the doc
4096 string.
4097
4098 * process.h: Declare Qtime and Qctime.
4099
df23bf08
JR
41002009-01-02 Jason Rumney <jasonr@gnu.org>
4101
9acef61c 4102 * image.c (Qgobject): New symbol.
df23bf08
JR
4103 (syms_of_image): Initialize it.
4104 (init_svg_functions): Load some functions from gobject library.
4105
5bbdf7aa
DN
41062009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4107
4108 * frame.c (make_terminal_frame): Remove redundant code and useless
4109 block.
4110
63136da6
AS
41112009-01-01 Andreas Schwab <schwab@suse.de>
4112
4113 * process.c (conv_sockaddr_to_lisp): Add workaround for
4114 getsockname bug on BSD.
4115
9ef69046
CY
41162009-01-01 Chong Yidong <cyd@stupidchicken.com>
4117
d6fafbe0
CY
4118 * xfns.c (x_create_tip_frame): Set border width of the X window.
4119
51d861de 4120 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4121
f9c34147
JR
41222009-01-01 Jason Rumney <jasonr@gnu.org>
4123
9acef61c 4124 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4125 Don't block input, as per earlier xterm.c changes.
4126
f5497e45
AR
41272008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4128
4129 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4130 (ns_appkit_version_int): New function.
4131 (x-server-version): Use ns_appkit_version_int and follow 21+
4132 convention of returning 3 integers.
4133
c19cab20
KH
41342008-12-30 Kenichi Handa <handa@m17n.org>
4135
4136 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4137 (CHAR_SURROGATE_PAIR_P): New macro.
4138
4139 * font.h (struct font_driver): New member get_variation_glyphs.
4140
9acef61c 4141 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4142 (Ffont_variation_glyphs): New function.
4143 (syms_of_font): Defsubr it.
4144
4145 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4146 ftfont_variation_glyphs.
4147 (setup_otf_gstring): New function.
4148 (ftfont_drive_otf): Use it.
4149 (ftfont_shape_by_flt): Handle variation selector.
4150 (ftfont_variation_glyphs): New function.
4151
28cd591f
MR
41522008-12-30 Martin Rudalics <rudalics@gmx.at>
4153
4154 * frame.c (Vemacs_iconified): Remove.
4155
7f714baf
JR
41562008-12-30 Jason Rumney <jasonr@gnu.org>
4157
4158 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4159 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4160
9d2d22ab
CY
41612008-12-30 Chong Yidong <cyd@stupidchicken.com>
4162
4163 * indent.c (Fvertical_motion): Don't advance iterator if we have
4164 reseated to the desired position.
4165
4166 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4167 checking for pos match.
4168
545312c2
KH
41692008-12-30 Kenichi Handa <handa@m17n.org>
4170
1ede3eb6
KH
4171 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4172 just get the low 8-bit of the code.
4173
545312c2
KH
4174 * font.c (font_intern_prop): Validate str as multibyte.
4175
bd7bbf29
DN
41762008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4177
31e0750e
DN
4178 * dispextern.h (struct face): Move lface and hash from the middle
4179 of bitfields.
4180
bd7bbf29
DN
4181 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4182
b5672e7c
DN
41832008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4184
4185 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4186 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4187 instead of intervals.h.
4188
d704470f
AS
41892008-12-26 Andreas Schwab <schwab@suse.de>
4190
4191 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4192 cons.
4193
54b33868
MR
41942008-12-26 Martin Rudalics <rudalics@gmx.at>
4195
4196 * textprop.c (Qminibuffer_prompt): New variable.
4197 (syms_of_textprop): Initialize it.
4198 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4199 in minibuffer-prompt face. (Bug#1662)
4200
40b615d6
JR
42012008-12-25 Jason Rumney <jasonr@gnu.org>
4202
4203 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4204
baae5c2d
JR
42052008-12-24 Jason Rumney <jasonr@gnu.org>
4206
4207 * ralloc.c (r_alloc_reset_variable): New function.
4208
4209 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4210 record of what points where. (Bug#716)
baae5c2d 4211
a9051c88
DN
42122008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4213
4214 * minibuf.c (read_minibuf): Follow the non-interactive case when
4215 running as a daemon, before detaching.
4216
8b146312
AS
42172008-12-22 Andreas Schwab <schwab@suse.de>
4218
4219 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4220 * gtkutil.c (free_widget_value): Use xfree instead of free.
4221
56f2de10
MR
42222008-12-22 Martin Rudalics <rudalics@gmx.at>
4223
4224 * frame.c (delete_frame): New function derived from
4225 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4226 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4227 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4228 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4229 * frame.h: Extern delete_frame.
4230 * window.c (window_loop):
4231 * terminal.c (delete_terminal):
4232 * xterm.c (x_connection_closed):
4233 * xfns.c (Fx_hide_tip):
9acef61c 4234 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4235
1fc200d6
JR
42362008-12-21 Jason Rumney <jasonr@gnu.org>
4237
4238 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4239 when character maps to .notdef character.
4240
5e252df2
SM
42412008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4242
4243 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4244
99b72cc4
JR
42452008-12-20 Jason Rumney <jasonr@gnu.org>
4246
4247 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4248 a graphical frame on Windows. (Bug#1325)
99b72cc4 4249
acc49a52
JD
42502008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4251
4252 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4253
6ea15123
CY
42542008-12-20 Chong Yidong <cyd@stupidchicken.com>
4255
4256 * minibuf.c (Fread_buffer): Doc fix.
4257
b2dab6c8
JR
42582008-12-20 Jason Rumney <jasonr@gnu.org>
4259
54ea0c87 4260 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4261 server name in UNC paths. (Bug#719)
54ea0c87 4262
b2dab6c8 4263 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4264 charbuf. (Bug#1035)
b2dab6c8 4265
6d1921be
DN
42662008-12-19 Daniel Engeler <engeler@gmail.com>
4267
4268 * sysdep.c (serial_configure): Fix typo.
4269
53934c98
DN
42702008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4271
4272 * sysdep.c: Include alloca.h.
f4f634e8
DN
4273 (system_process_attributes): Add implementation for Solaris.
4274
4275 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4276
06e111a6
DN
42772008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4278
4279 Reorganize implementation of Flist_system_processes and
4280 Fsystem_process_attributes. No functional changes.
4281 * process.c: Don't #include pwd.h, grp.h and limits.h.
4282 (Flist_system_processes): Just call list_system_processes.
4283 (Fsystem_process_attributes): Just call system_process_attributes.
4284 (procfs_list_system_processes, time_from_jiffies)
4285 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4286 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4287
4288 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4289 (list_system_processes): Rename from
4290 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4291 Provide a do nothing implementation.
4292 (system_process_attributes): Rename from
4293 procfs_list_system_processes.
4294 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4295 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4296
4297 * w32.c (list_system_processes): Rename from
4298 w32_list_system_processes.
4299 (system_process_attributes): Rename from
4300 w32_system_process_attributes.
4301
4302 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4303
4304 * process.h (w32_list_system_processes)
4305 (w32_system_process_attributes): Remove.
362654a6
JB
4306 (list_system_processes, system_process_attributes):
4307 New prototypes.
06e111a6 4308
6a705b23
KH
43092008-12-19 Kenichi Handa <handa@m17n.org>
4310
4311 * xfont.c (xfont_decode_coding_xlfd): New function.
4312 (xfont_encode_coding_xlfd): New function.
4313 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4314 (xfont_list): Decode and encode XLFD by iso-8859-1.
4315 (xfont_match): Likewise.
4316 (xfont_list_family): Likewise.
4317 (xfont_open): Likewise.
4318
d66c0241 4319 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4320 names are utf-8.
4321
d66c0241 4322 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4323 names are utf-8.
4324
5a130941
JD
43252008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4326
4327 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4328 changed.
bfd20325
JD
4329 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4330 clicked on a detached tool bar button.
5a130941 4331
fd95644b
DN
43322008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4333
4334 * emacs.c (main): Print and error and exit when no data is read
4335 from the pipe.
4336
e6eee6ae
JR
43372008-12-17 Jason Rumney <jasonr@gnu.org>
4338
4339 * w32font.c (w32font_has_char): Always return -1.
4340
a35dd56b
KH
43412008-12-16 Kenichi Handa <handa@m17n.org>
4342
4343 * font.c (font_open_entity): Fix previous change.
4344
0e3635c2
DN
43452008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4346
4347 * process.c: Include <limits.h>.
4348
d4835507 43492008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4350
4351 * font.c (font_update_drivers): Fix mistake in reconstructing the
4352 driver list.
4353
43542008-12-16 Chong Yidong <cyd@stupidchicken.com>
4355
4356 * font.c (font_clear_cache): Fix format of font cache data.
4357
e2cbc401
CY
43582008-12-15 Chong Yidong <cyd@stupidchicken.com>
4359
4360 * xftfont.c (xftfont_open): Free Xft font pattern if
4361 XftFontOpenPattern fails.
4362
4363 * xterm.c (x_free_frame_resources): Remove extraneous call to
4364 free_frame_faces.
4365
b131d535
CY
43662008-12-13 Chong Yidong <cyd@stupidchicken.com>
4367
4368 * xterm.c (x_delete_display): Move xim_close_dpy call to
4369 x_delete_terminal.
4370 (x_delete_terminal): Call xim_close_dpy.
4371
e6df5336
JR
43722008-12-13 Jason Rumney <jasonr@gnu.org>
4373
4374 * w32font.c (intern_font_name): New function.
4375 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4376 (w32font_open_internal, Fx_select_font): Decode font name.
4377 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4378
4379 * w32font.h (intern_font_name): Declare new function.
4380
4381 * w32uniscribe.c (add_opentype_font_name_to_list):
4382 Use intern_font_name.
4383
20d68145
CY
43842008-12-13 Chong Yidong <cyd@stupidchicken.com>
4385
9f2554de
CY
4386 * frame.c (Fdelete_frame): Call free_font_driver_list.
4387
3d9bec9a
CY
4388 * font.c (free_font_driver_list): Implement missing function.
4389
20d68145
CY
4390 * w32term.c (w32_term_init): Don't initialize the image cache
4391 here; it will be done in init_frame_faces.
4392
4393 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4394 (struct x_display_info): Remove unused member null_pixel. New
4395 member xim_callback_data.
4396
4397 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4398 (xim_initialize): Save pointer to callback function data.
4399 (xim_close_dpy): Free callback function data. Call XCloseIM,
4400 reverting 2008-11-04 change by David Smith.
4401 (x_term_init): Don't initialize the image cache here; it will be
4402 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4403 (x_delete_display): Free x_dnd_atoms member.
4404
96f9306b
KH
44052008-12-13 Kenichi Handa <handa@m17n.org>
4406
6dec9044
JB
4407 * font.c (font_rescale_ratio): Moved from xfaces.c.
4408 Argument type changed. Handle a font-spec too.
96f9306b 4409 (font_score): Check Vface_font_rescale_alist.
6dec9044 4410 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4411
4412 * xfaces.c (font_rescale_ratio): Moved to font.c.
4413
8d5b4964
CY
44142008-12-13 Chong Yidong <cyd@stupidchicken.com>
4415
4416 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4417
e6df5336
JR
44182008-12-12 Jason Rumney <jasonr@gnu.org>
4419
4420 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4421 Vwindow_system_version to the real w32 major version.
4422
97c6058a
DN
44232008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4424
4425 * term.c (init_tty): Move setting the terminal name before the
4426 potential user: maybe_fatal.
4427
ec4e88d7
CY
44282008-12-11 Chong Yidong <cyd@stupidchicken.com>
4429
d4835507
JB
4430 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4431 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4432
b4233ec9
JR
44332008-12-11 Jason Rumney <jasonr@gnu.org>
4434
8ec71e23 4435 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4436 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4437
b4233ec9 4438 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4439 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4440
011a0143
JB
44412008-12-11 Juanma Barranquero <lekktu@gmail.com>
4442
4443 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4444
3c309f34
JB
44452008-12-11 Juanma Barranquero <lekktu@gmail.com>
4446
4447 * process.c (Fsystem_process_attributes, syms_of_process):
4448 Fix typo in name of Ssystem_process_attributes.
4449 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4450
fedc6ab5
JB
44512008-12-11 Juanma Barranquero <lekktu@gmail.com>
4452
4453 * syntax.c (Fmodify_syntax_entry): Doc fix.
4454
ba3de0e8
JB
44552008-12-10 Juanma Barranquero <lekktu@gmail.com>
4456
4457 * font.c (Ffont_spec): Move usage to end of docstring.
4458
174f1c74
JR
44592008-12-10 Jason Rumney <jasonr@gnu.org>
4460
4461 * w32font.c (Qcham): New symbol.
4462 (font_supported_scripts): Add cham, and comments for other new
4463 scripts in bitfield from OpenType spec.
9d32f818
JR
4464 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4465 contain characters beyond the bmp.
174f1c74 4466
7b649478
KH
44672008-12-10 Kenichi Handa <handa@m17n.org>
4468
4469 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4470 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4471 Qunicode_sip.
4472
2133e2d1
JB
44732008-12-10 Juanma Barranquero <lekktu@gmail.com>
4474
4475 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4476 (Fcoding_system_put): Use QCdefault_char.
4477 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4478
9af886ee
CY
44792008-12-09 Chong Yidong <cyd@stupidchicken.com>
4480
74d819eb
CY
4481 * xftfont.c (syms_of_xftfont): Fix typo.
4482
4ccfa1c0 4483 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4484
7c19d3ae
DN
44852008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4486
4487 * emacs.c (main): Close daemon_pipe on exec.
4488
567826bb
CY
44892008-12-08 Chong Yidong <cyd@stupidchicken.com>
4490
4491 * termchar.h (struct tty): New members termcap_term_buffer and
4492 termcap_strings_buffer.
4493
4494 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4495 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4496 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4497 All callers changed.
4498 (init_tty): Store termcap data and string buffers in new struct
4499 tty members termcap_term_buffer and termcap_strings_buffer.
4500 (delete_tty): Free them.
4ccfa1c0 4501 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4502
aa96c42b
SZ
45032008-12-07 Seiji Zenitani <zenitani@mac.com>
4504
4505 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4506 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4507
b7e1d896
CY
45082008-12-06 Chong Yidong <cyd@stupidchicken.com>
4509
4510 * coding.c (make_conversion_work_buffer): Disable buffer
4511 modification hooks in the work buffer.
4512
b5ec91a5
EZ
45132008-12-05 Eli Zaretskii <eliz@gnu.org>
4514
4515 * process.c (procfs_system_process_attributes): If `nread' has a
4516 negative value, assign zero to it.
4517
a5d2a52b
CY
45182008-12-05 Chong Yidong <cyd@stupidchicken.com>
4519
68c5540b 4520 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4521
7bf1bb21
KH
45222008-12-05 Kenichi Handa <handa@m17n.org>
4523
4524 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4525 second character is a combining character.
4526
2fdc7d00
EZ
45272008-12-05 Eli Zaretskii <eliz@gnu.org>
4528
4529 * process.c (procfs_system_process_attributes): Don't use cmd,
4530 cmdsize, and q without initializing them first.
4531
bf6bfba8
JR
45322008-12-04 Jason Rumney <jasonr@gnu.org>
4533
4534 * w32font.c (w32font_draw): Initialize orig_clip before getting
4535 it, and delete it when finished.
4536
a3b1a468
DN
45372008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4538
4539 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4540 case when running as a daemon before detaching.
4541
8b8be8eb
JB
45422008-12-03 Juanma Barranquero <lekktu@gmail.com>
4543
805f2638 4544 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4545
b1bde622
KH
45462008-12-03 Kenichi Handa <handa@m17n.org>
4547
e500c47d
KH
4548 * font.c (font_at): Set `multibyte' at first.
4549
ca516334
KH
4550 * coding.c (decode_coding_charset): Check type of an element of
4551 vector VALIDS.
7bf1bb21 4552 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4553
4ccfa1c0 4554 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4555 (font_for_char): Likewise.
4556
1e5ecd37
CY
45572008-12-03 Chong Yidong <cyd@stupidchicken.com>
4558
d5b01609 4559 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4560 (font_update_lface): Handle fonts with corrupted size specs,
4561 i.e. non-int and non-float.
d5b01609 4562
11e3a6e4 4563 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4564 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4565 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4566
ab06788b
CY
4567 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4568
1e5ecd37 4569 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4570 underline_minimum_offset for underline position.
1e5ecd37 4571
63c125ab
DN
45722008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4573
4574 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4575
4576 * character.c (c_string_width): Specify the type for LEN.
4577
3a8406e1
KH
45782008-12-03 Kenichi Handa <handa@m17n.org>
4579
4ccfa1c0 4580 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4581 (decode_coding_utf_8): Likewise.
4ccfa1c0 4582 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4583 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4584
651df7d9
CY
45852008-12-02 Chong Yidong <cyd@stupidchicken.com>
4586
4587 * keyboard.c (make_lispy_position): Only use PT if the selected
4588 window is current.
4589
1f625c6c
AS
45902008-12-02 Andreas Schwab <schwab@suse.de>
4591
f7741ce9
AS
4592 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4593
1f625c6c
AS
4594 * doprnt.c (doprnt1): Fix size of charbuf.
4595
92bc2678
CY
45962008-12-02 Chong Yidong <cyd@stupidchicken.com>
4597
4598 * keyboard.c (timer_check): Revert last change.
4599
93b9e8cc
JB
46002008-12-02 Juanma Barranquero <lekktu@gmail.com>
4601
4602 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4603
fd7a37d5
JB
46042008-12-01 Juanma Barranquero <lekktu@gmail.com>
4605
4606 * makefile.w32-in: Update dependencies.
4607 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4608
c115043b
AS
46092008-12-01 Andreas Schwab <schwab@suse.de>
4610
4611 * font.c (register_font_driver): Use xmalloc.
4612 (font_put_frame_data): Likewise.
4613
f5668d2a
CY
46142008-12-01 Chong Yidong <cyd@stupidchicken.com>
4615
860d96be
CY
4616 * xfaces.c (realize_x_face): Make abort condition clearer.
4617
f5668d2a
CY
4618 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4619
379c17e7
CY
46202008-11-30 Chong Yidong <cyd@stupidchicken.com>
4621
4622 * keyboard.c (timer_check): After a timer runs, ensure that the
4623 selected window's buffer is current.
4624
35f36d65
JB
46252008-11-30 Juanma Barranquero <lekktu@gmail.com>
4626
f952c61c
JB
4627 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4628 It was accidentally restored by the Unicode merge.
4629
35f36d65
JB
4630 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4631
b23077df
JB
46322008-11-29 Juanma Barranquero <lekktu@gmail.com>
4633
4634 * w32proc.c: Include "coding.h".
4635 (Fw32_short_file_name): Encode filename passed to Windows API.
4636 (Fw32_long_file_name): Encode filename passed to Windows API and
4637 decode back the result. (Bug#1433)
4638
b8ebe9dd
KH
46392008-11-29 Kenichi Handa <handa@m17n.org>
4640
8cc53f96
KH
4641 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4642 not before accessing it.
4643
b8ebe9dd
KH
4644 * charset.c (Fdefine_charset_internal): After calculating
4645 min_char, max_char, and fastmap, copy the charset structure again.
4646 (encode_char): Fix the previous change.
4647
59bc82c0
SZ
46482008-11-28 Seiji Zenitani <zenitani@mac.com>
4649
4650 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4651
4652 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4653
4654 * nsterm.m (x_set_frame_alpha): New function.
4655
32247e3d
EZ
46562008-11-27 Eli Zaretskii <eliz@gnu.org>
4657
4658 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4659
b003e5ff
JB
46602008-11-27 Juanma Barranquero <lekktu@gmail.com>
4661
4662 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4663 pointer to check_face_name.
4664
708550f5
KH
46652008-11-27 Kenichi Handa <handa@m17n.org>
4666
4667 * category.h (SET_CATEGORY_SET): Call set_category_set.
4668 (set_category_set): Extern it.
4669
4670 * category.c (hash_get_category_set): New function.
4671 (Fmodify_category_entry): Adjusted for the change of
4672 char_table_ref_and_range. Call hash_get_category_set to get a
4673 category set to store in the table.
4674
4675 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4676 Funify_charset.
4677
2ae37cf0 4678 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4679 (DECODE_CHAR): Check if the decoder vector is ready.
4680 (ENCODE_CHAR): Check if the encoder char-table is ready.
4681 (maybe_unify_char): Extern it.
4682
4683 * charset.c (Vchar_unified_charset_table): Delete it.
4684 (inhibit_load_charset_map): New variable.
4685 (temp_charset_work): New variable.
4686 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4687 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4688 New macros.
4689 (load_charset_map): Meaning of control_flag changed. If
4690 inhibit_load_charset_map is nonzero, setup a table in
4691 temp_charset_work.
4692 (load_charset): New argument control_flag.
4693 (map_charset_for_dump): New function.
4694 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4695 map_charset_for_dump.
4696 (Fdefine_charset_internal): If the charset method is MAP, load
4697 mapping tables by calling load_charset.
4698 (Funify_charset): Don't load a mapping table but directly set
4699 Vchar_unify_table.
4700 (maybe_unify_char): New function.
4701 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4702 Handle the case of inhibit_load_charset_map being nonzero.
4703 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4704 Handle the case of inhibit_load_charset_map being nonzero.
4705 (Fclear_charset_maps): Just free temp_charset_work.
4706 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4707 variable.
4708
4709 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4710 change of char_table_ref_and_range.
4711 (char_table_ref_and_range): Change the meaning of argument FROM
4712 and TO. Now the caller must provide initial values for *FROM
4713 and *TO.
4714
4715 * fontset.c (fontset_add): Adjusted for the change of
4716 char_table_ref_and_range.
4717 (fontset_get_font_group): Likewise.
4718 (Ffontset_info): Likewise.
4719
4720 * keymap.c (describe_vector): Adjusted for the change of
4721 char_table_ref_and_range. For char-table, put boundary between
4722 non-ASCII and 8-bit characters.
4723
4724 * print.c (print_object): For bool-vector, delete unnecessary
4725 check of ASCII_BYTE_P.
4726
9196133b
JR
47272008-11-26 Jason Rumney <jasonr@gnu.org>
4728
4729 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4730 leading in font height. (Bug#879)
9196133b 4731
9f688acf
GM
47322008-11-26 Glenn Morris <rgm@gnu.org>
4733
4734 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4735 redefinition with ifdef. (Bug#1383)
4736
90d19aff
AR
47372008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4738
4739 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4740
4ccfa1c0 47412008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4742
4743 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4744 New EmacsView methods.
4745 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4746 Fixes bug #1048,1357,1414.
4747
47482008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4749
4750 Fix bug #1362.
4751 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4752 is not an indexed color.
4753 * nsterm.m (free_indexed_color): Add argument checking.
4754 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4755
e7d5ecb3
CY
47562008-11-24 Chong Yidong <cyd@stupidchicken.com>
4757
4758 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4759 Document confirm-after-completion value for
4760 minibuffer-completion-confirm.
4761
c285743c
JR
47622008-11-24 Jason Rumney <jasonr@gnu.org>
4763
4764 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4765 warning.
4766
b0857706
JR
47672008-11-23 Jason Rumney <jasonr@gnu.org>
4768
4769 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4770 restored before returning.
4771
4772 * w32font.c (check_face_name): New function.
4773 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4774 fonts. (Bug#642)
b0857706 4775
ee50ff07
MR
47762008-11-22 Martin Rudalics <rudalics@gmx.at>
4777
4778 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4779 confirm-nonexistent-file-or-buffer in doc-string.
4780
b8ff72fa
SM
47812008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4782
4783 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4784 Fix copy/paste typo. Add checks.
4785
cee53ed4
KH
47862008-11-21 Kenichi Handa <handa@m17n.org>
4787
4788 * coding.c (detect_coding_iso_2022): Reject invalid composition
4789 sequence.
4790 (DECODE_COMPOSITION_START): If the current source is the last
4791 block, and the current composition doesn't end, regard this
4792 sequence as invalid.
4793 (decode_coding_iso_2022): Handle invalid composition sequence.
4794
f6ef1e65
MR
47952008-11-20 Martin Rudalics <rudalics@gmx.at>
4796
4797 * window.c (coordinates_in_window): Don't return
4798 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4799 line when the window is not the rightmost one. (Bug#1372)
4800
e08b1705
MR
48012008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4802
4803 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4804
ad98e89f
EZ
48052008-11-15 Eli Zaretskii <eliz@gnu.org>
4806
4807 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4808 and bright_bg if noninteractive is non-zero.
4809
fb098a4b
CY
48102008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4811
4812 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4813 x_draw_glyph_string_background.
4814
4815 * w32term.c (x_draw_glyph_string): Likewise.
4816
ce952b6e
CY
48172008-11-15 Chong Yidong <cyd@stupidchicken.com>
4818
4819 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4820 the next glyph string once past the overhang width.
4821
4822 * nsterm.m (ns_draw_glyph_string): Likewise.
4823
4824 * w32term.c (x_draw_glyph_string): Likewise.
4825
26ea7079
CY
48262008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4827
4828 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4829 double file close.
4830
1c33c906
MR
48312008-11-14 Martin Rudalics <rudalics@gmx.at>
4832
4833 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4834 dedicated status of window before attempting to display another
4835 buffer in it.
4836
8fc29035
JB
48372008-11-14 Juanma Barranquero <lekktu@gmail.com>
4838
4839 * msdos.c (Fmsdos_long_file_names):
4840 (syms_of_msdos) <dos-unsupported-char-glyph>:
4841 * dosfns.c (Fint86): Fix typos in docstrings.
4842
55fb4286
EZ
48432008-11-14 Eli Zaretskii <eliz@gnu.org>
4844
4845 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4846
3fda0315
KY
48472008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4848
4849 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4850
7e849c17
CY
48512008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4852
4853 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4854
4855 * frame.h: Negative alpha means "don't touch".
4856
4857 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4858
4859 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4860
b9fd67bd
DN
48612008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4862
4863 * hftctl.c:
4864 * chpdef.h:
4865 * acldef.h: Remove files used only for systems no longer supported.
4866
4867 * Makefile.in: Fix .o alphabetical ordering.
4868 (hftctl.o): Remove dependency, file removed.
4869 (keymap.o, print.o): Depend on charset.h.
4870
d5998e03
KH
48712008-11-10 Kenichi Handa <handa@m17n.org>
4872
2ae37cf0 4873 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4874
be70e183
CY
48752008-11-08 Chong Yidong <cyd@stupidchicken.com>
4876
4877 * dired.c (file_name_completion): If completion_ignore_case is
4878 enabled, ignore case when checking completion-regexp-list.
4879
7cf94eac
EZ
48802008-11-08 Eli Zaretskii <eliz@gnu.org>
4881
4882 * vm-limit.c (get_lim_data): Fix last change.
4883
ee107a89
KH
48842008-11-08 Kenichi Handa <handa@m17n.org>
4885
4886 * character.c (Fget_byte): New function.
4887 (syms_of_character): Defsubr Fget_byte.
4888
5fd15622
CY
48892008-11-07 Chong Yidong <cyd@stupidchicken.com>
4890
4891 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4892 cursor position is valid after scrolling.
4893
13d62fad
JB
48942008-11-06 Juanma Barranquero <lekktu@gmail.com>
4895
4896 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4897
a1dd2936
GM
48982008-11-06 Glenn Morris <rgm@gnu.org>
4899
4900 * xterm.c (handle_one_xevent): Don't let popup menus cause
4901 mouse-autoselect-window related window switching. (Bug#1261)
4902
860cd236
CY
49032008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4904
4905 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4906
653a3150
AS
49072008-11-04 Andreas Schwab <schwab@suse.de>
4908
4909 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4910
870f5cac
CY
49112008-11-03 Chong Yidong <cyd@stupidchicken.com>
4912
4913 * xfns.c (Fx_wm_set_size_hint): New function.
4914
1e02f3cb
MR
49152008-11-03 Martin Rudalics <rudalics@gmx.at>
4916
4917 * textprop.c (Fprevious_single_char_property_change): Return 0
4918 when there's no change in a string. (Bug#1301)
4919
e630dfc6
MR
49202008-11-02 Martin Rudalics <rudalics@gmx.at>
4921
4922 * frame.c (do_switch_frame): New argument NORECORD passed to
4923 Fselect_window.
4924 (Fselect_frame): New argument NORECORD passed to
4925 do_switch_frame.
4926 (Fset_frame_selected_window): New argument NORECORD passed to
4927 Fselect_frame.
4928 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4929 in call of do_switch_frame.
4930 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4931 Handle NORECORD argument in call of Fselect_frame.
4932 * lisp.h (do_switch_frame, Fselect_frame)
4933 (Fset_frame_selected_window): Adjust declarations.
4934 * window.c (select_frame_norecord): New function.
4935 (run_window_configuration_change_hook): Use it and call
4936 Fselect_frame with NORECORD set.
4937 (Fselect_window): Pass NORECORD to Fselect_frame.
4938 (Fset_window_configuration): Handle NORECORD argument in call of
4939 do_switch_frame.
4940 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4941 Fset_frame_selected_window.
4942 * keyboard.c (command_loop_1): Handle NORECORD in call of
4943 Fselect_frame (currently ifdefd).
4944
9020b223
GM
49452008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4946
4947 * emacs.c (USAGE2): Untabify.
4948
793ffee8
SM
49492008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4950
4951 * composite.c (fill_gstring_header): Fix copy/paste typo.
4952
ab6d1131
MR
49532008-10-31 Martin Rudalics <rudalics@gmx.at>
4954
4955 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4956 (Fother_window): Rename argument and rewrite doc-string.
4957 (select_window_norecord): Fix return value. (Bug#1276)
4958
601a9cf1
JB
49592008-10-30 Juanma Barranquero <lekktu@gmail.com>
4960
4961 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4962 new frames overriding foreground for tooltips. Based on similar patch
4963 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4964
813b0652
CY
49652008-10-29 Chong Yidong <cyd@stupidchicken.com>
4966
4967 * emacs.c (Fdaemon_initialized): Initialize nfd.
4968
4414f58f
MR
49692008-10-29 Martin Rudalics <rudalics@gmx.at>
4970
4971 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4972 (Fwindow_text_height): Clarify doc-strings.
4973 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4974 doc-string of window-scroll-functions.
4975
ecdcaa09
RS
49762008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4977
4978 * category.c (syms_of_category): Fix typo in docstring.
4979
23fe745a
JB
49802008-10-28 Juanma Barranquero <lekktu@gmail.com>
4981
4982 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4983 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4984 Fix typos in docstrings.
4985
ff808935
DN
49862008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4987
4988 * emacs.c (daemon_pipe): Make non-static.
4989 (IS_DAEMON): Move definition ...
4990 * lisp.h (IS_DAEMON): ... here.
4991 (daemon_pipe): Declare.
4992 (is_daemon): Remove.
4993 * dispnew.c (init_display): Use IS_DAEMON.
4994
fc012771
SM
49952008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4996
4997 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4998 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4999
5000 * emacs.c (is_daemon): Remove.
5001 (main): Don't set is_daemon.
5002 (IS_DAEMON): New macro.
5003 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5004 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5005 parent exits.
5006 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5007
d8bdbe6f
CY
50082008-10-27 Chong Yidong <cyd@stupidchicken.com>
5009
d1a072bf
CY
5010 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5011 over-sized glyph, draw it with the default glyph width.
5012
e2e325aa
CY
5013 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5014 glyph, draw it with the default glyph width.
5015
5016 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5017 glyph, draw it with the default glyph width.
5018
d8bdbe6f
CY
5019 * xdisp.c (try_scrolling): When computing the distance from the
5020 scroll margin to PT, try moving some distance past the window
5021 bottom before giving up.
5022
7bfac547
MR
50232008-10-27 Martin Rudalics <rudalics@gmx.at>
5024
5025 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5026 (Fset_window_buffer): Explain in doc-string that a window can be
5027 "strongly" dedicated to its buffer.
5028
4ff029f6
DN
50292008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5030
5031 * emacs.c (daemon_name): New variable.
5032 (main): Deal with --daemon=SERVER_NAME.
5033 (Fdaemonp): Return a name if one was passed to --daemon.
5034
5790ef40
DN
50352008-10-26 Romain Francoise <romain@orebokech.com>
5036
f9bd0df9 5037 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5038 (main): Create a pipe before forking, make the parent exit only after
5039 the child has closed its end of the pipe. Move closing the
5040 descriptors ...
5041 (Fdaemon_initialized): ... here. New function.
5042
f5385255
SM
50432008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5044
4d632321
SM
5045 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5046 the previous unoptimized table.
5047
f5385255
SM
5048 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5049 the distinction between non-nil and non-t value of `dedicated'.
5050
6c56a0f3
CY
50512008-10-25 Chong Yidong <cyd@stupidchicken.com>
5052
5053 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5054 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5055
fec89261
MR
50562008-10-25 Martin Rudalics <rudalics@gmx.at>
5057
5058 * window.c (Fget_buffer_window, Fdelete_windows_on)
5059 (Freplace_buffer_in_windows): Make buffer argument optional and
5060 rename to buffer_or_name.
5061
34fcddd0
CY
50622008-10-24 Chong Yidong <cyd@stupidchicken.com>
5063
f5385255
SM
5064 * xdisp.c (handle_single_display_spec, handle_display_prop):
5065 Undo 2005-05-16 change.
34fcddd0
CY
5066 (handle_stop): Pop iterator if it's loaded with an empty string.
5067 (get_overlay_strings_1): Don't save iterator if it's loaded with
5068 an empty string (bug#1201).
5069
064766f2
KH
50702008-10-24 Kenichi Handa <handa@m17n.org>
5071
5072 * ftfont.c (ftfont_otf_features): Fix previous change.
5073 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5074 calling ftfont_otf_features.
5075
f9bd0df9 50762008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5077
5078 * font.c (font_match_p): Fix for the case that a vector of
5079 characters is in script-representative-chars.
5080
1dae9197
MA
50812008-10-24 Michael Albinus <michael.albinus@gmx.de>
5082
5083 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5084 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5085 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5086 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
5087 macro. (Bug#1186).
5088
f9bd0df9 50892008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5090
5091 * s/sol2-10.h: New file.
5092
878a4584
JB
50932008-10-23 Juanma Barranquero <lekktu@gmail.com>
5094
5095 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5096 poor beast has survived 9+ years and the jump from xterm.c!).
5097
cd265ca6
MR
50982008-10-23 Martin Rudalics <rudalics@gmx.at>
5099
5100 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5101 Reword doc-string.
f5385255 5102 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5103
472a4dc9
JB
51042008-10-23 Juanma Barranquero <lekktu@gmail.com>
5105
5106 * character.c (syms_of_character) <script-representative-chars>:
5107 <unicode-category-table>: Doc fixes.
5108
159bd5a2
NF
51092008-10-23 Noah Friedman <friedman@splode.com>
5110
5111 * coding.c (make_conversion_work_buffer): Check that
5112 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5113 Fget_buffer_create.
5114
49f9c344
KH
51152008-10-23 Kenichi Handa <handa@m17n.org>
5116
5117 * font.c (font_add_log): Check the values of extra properties.
5118
12bb3111
MR
51192008-10-22 Martin Rudalics <rudalics@gmx.at>
5120
5121 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5122 Reword doc-string.
5123 (Fset_window_parameter): Use NILP.
5124 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5125 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5126
bbeb4e99
JB
51272008-10-22 Juanma Barranquero <lekktu@gmail.com>
5128
5129 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5130
51312008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5132
5133 * nsfns.m (ns_appkit_version): New function.
5134 (x-server-version): Use it.
5135 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5136 (x-server-vendor): Don't check_ns().
5137
5138 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5139
a9b555d3
JB
51402008-10-22 Juanma Barranquero <lekktu@gmail.com>
5141
5142 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5143 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5144
4626499f
KH
51452008-10-22 Kenichi Handa <handa@m17n.org>
5146
e3681952
KH
5147 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5148 scripts.
5149
4626499f
KH
5150 * category.c (word_boundary_p): Check scripts instead of charset.
5151 Handle nil value in word-separating-categories and
5152 word-combining-categories.
5153 (syms_of_category): Fix docstrings of word-separating-categories
5154 and word-combining-categories.
5155
1560f91a
EZ
51562008-10-21 Eli Zaretskii <eliz@gnu.org>
5157
5158 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5159 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5160
f4668441
MR
51612008-10-21 Martin Rudalics <rudalics@gmx.at>
5162
5163 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5164 Rename arg "buffer" to "buffer_or_name".
5165 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5166 it optional.
5167 (no_switch_window): Remove since the return value is not used.
a9b555d3 5168 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5169 Consider window as dedicated when Fwindow_dedicated_p returns a
5170 non-nil value.
5171 * lisp.h: Remove prototype for no_switch_window.
5172
fd75ddb2
JD
51732008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5174
5175 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5176 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5177
07295713
KH
51782008-10-21 Kenichi Handa <handa@m17n.org>
5179
5180 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5181 check Vlatin_extra_code_table.
5182
712adc82
EZ
51832008-10-20 Eli Zaretskii <eliz@gnu.org>
5184
5185 * fileio.c (Fset_file_modes): Doc fix.
5186
f549eb0b
MA
51872008-10-19 Michael Albinus <michael.albinus@gmx.de>
5188
5189 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5190 in arrays.
5191
aac0c6e3
MR
51922008-10-19 Martin Rudalics <rudalics@gmx.at>
5193
5194 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5195 Mention kill-buffer in doc-string.
5196 (Fset_window_buffer): Reinsert tem check removed in last commit.
5197 (Fenlarge_window, Fshrink_window): Have argument names and
5198 doc-string follow Elisp manual more closely.
5199
52002008-10-18 Eli Zaretskii <eliz@gnu.org>
5201
5202 * fileio.c (Fset_file_modes): Doc fix.
5203
52042008-10-18 Martin Rudalics <rudalics@gmx.at>
5205
5206 * window.c (Fwindow_width, Fset_window_start)
5207 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5208 (Fdelete_windows_on, Freplace_buffer_in_windows):
5209 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5210 (Fwindow_dedicated_p): Make window argument optional.
5211 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5212 (Fset_window_buffer): Respect any non-nil dedicated value for
5213 window. Rename "buffer" argument to "buffer_or_name".
5214
52152008-10-18 Ulrich Mueller <ulm@gentoo.org>
5216
5217 * m/sh3.h: New file, machine description for SuperH.
5218
52192008-10-17 Martin Rudalics <rudalics@gmx.at>
5220
5221 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5222
52232008-10-17 Kenichi Handa <handa@m17n.org>
5224
5225 * ftfont.c (ftfont_otf_features): Fix indexing
5226 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5227
52282008-10-16 Magnus Henoch <mange@freemail.hu>
5229
5230 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5231 (Fdbus_call_method_asynchronously): Ditto.
5232 This change makes C-h f display the argument list.
5233
52342008-10-16 Chong Yidong <cyd@stupidchicken.com>
5235
5236 * fileio.c (Fexpand_file_name): Doc fix.
5237
5238 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5239 of :foreground and :background equivalent to unspecified (20.x
5240 compatibility).
5241
52422008-10-15 Eli Zaretskii <eliz@gnu.org>
5243
5244 * buffer.c (syms_of_buffer): Doc fix.
5245
52462008-10-14 Kenichi Handa <handa@m17n.org>
5247
5248 * font.c (font_clear_prop): When clearing font width, clear the
5249 average width field too.
5250
52512008-10-12 Andreas Schwab <schwab@suse.de>
5252
5253 * ftfont.c (ftfont_shape_by_flt): Make static.
5254 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5255
5256 * font.c: Don't include <m17n-flt.h>.
5257
52582008-10-10 Eli Zaretskii <eliz@gnu.org>
5259
5260 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5261
52622008-10-09 Eli Zaretskii <eliz@gnu.org>
5263
5264 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5265 away code.
5266
52672008-10-09 Chong Yidong <cyd@stupidchicken.com>
5268
5269 * dispnew.c (update_text_area): Avoid looping due to large glyph
5270 overhangs (bug#1070).
5271
52722008-10-09 Kenichi Handa <handa@m17n.org>
5273
5274 * fontset.c (face_for_char): If face->fontset is negative, just
5275 return ascii_face.
5276
f5385255
SM
5277 * font.c (font_delete_unmatched): Fix previous change.
5278 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5279
52802008-10-09 Martin Rudalics <rudalics@gmx.at>
5281
5282 * frame.c (Fraise_frame): On text-only terminals select frame in
5283 order to make it visible. (Bug#1061)
5284
52852008-10-08 Chong Yidong <cyd@stupidchicken.com>
5286
5287 * fontset.c (fontset_find_font): Check frame validity.
5288
52892008-10-07 Chong Yidong <cyd@stupidchicken.com>
5290
a9b555d3 5291 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5292 (xg_display_close): Allow Emacs to close all displays (bug#985).
5293
52942008-10-06 Andreas Schwab <schwab@suse.de>
5295
f5385255 5296 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5297
52982008-10-06 Chong Yidong <cyd@stupidchicken.com>
5299
f5385255 5300 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5301
a9b555d3 5302 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5303
5304 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5305 during initialization.
5306
53072008-10-04 Eli Zaretskii <eliz@gnu.org>
5308
5309 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5310 whole thing on MSDOS frames as well as on a TTY.
5311
5312 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5313 well as for TTY.
5314 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5315 well as on a TTY.
5316
5317 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5318 as well as for TTY.
5319
5320 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5321
5322 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5323 MSDOS frames as well.
5324
53252008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5326
5327 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5328 correct arguments.
b71ac3dd 5329 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5330
53312008-10-03 Glenn Morris <rgm@gnu.org>
5332
5333 * emacs.c (USAGE1): Add --daemon.
5334
53352008-10-02 Eli Zaretskii <eliz@gnu.org>
5336
5337 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5338 100, so it's in percents as advertised.
5339
53402008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5341
5342 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5343 (ns_output.current_cursor, ns_output.desired_cursor)
5344 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5345 (FRAME_NEW_CURSOR_COLOR): Remove.
5346
5347 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5348 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5349 enumeration (HOLLOW_BOX_CURSOR, etc.).
5350
5351 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5352 (draw_window_cursor): Simplify code.
f5385255
SM
5353 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5354 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5355 updates manually.
a9b555d3
JB
5356 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5357 Use core Emacs cursor types.
aac0c6e3 5358
b8ff72fa 5359 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5360
53612008-10-02 Martin Rudalics <rudalics@gmx.at>
5362
5363 * process.c (Faccept_process_output): Fix doc-string.
5364
53652008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5366
5367 * gmalloc.c (__sbrk): Also define for uClibc.
5368
5369 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5370 for uClibc.
5371
53722008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5373
5374 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5375 styles.
5376 (nsfont_open): Reenable the cache.
5377
53782008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5379
5380 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5381 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5382
53832008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5384
5385 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5386 a suspended terminal.
5387
53882008-09-30 Michael Albinus <michael.albinus@gmx.de>
5389
5390 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5391
53922008-09-30 Eli Zaretskii <eliz@gnu.org>
5393
5394 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5395
53962008-09-30 Chong Yidong <cyd@stupidchicken.com>
5397
5398 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5399 in a continued line coincides with a line beginning.
5400
54012008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5402
5403 * nsfont.m (nsfont_trait_distance): Fix bug.
5404 (nsfont_list): Return a list rather than a vector (syncs with Handa
5405 changes of 2008-05-14).
5406 (nsfont_open): Improve logging.
5407
54082008-09-29 Andreas Schwab <schwab@suse.de>
5409
5410 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5411
54122008-09-28 Martin Rudalics <rudalics@gmx.at>
5413
5414 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5415 name as char-resolve-modifiers.
5416 Reported by: Markus Triska <markus.triska@gmx.at>
5417
54182008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5419
5420 * dispnew.c (init_display): Return earlier when running as a daemon.
5421
54222008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5423
5424 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5425
54262008-09-27 Eli Zaretskii <eliz@gnu.org>
5427
5428 * composite.c (Fcomposition_get_gstring)
5429 (Fcompose_region_internal, Fcompose_string_internal)
5430 (Ffind_composition_internal): Doc fix.
5431 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5432 (syms_of_composite) <auto-composition-function>: Doc fix.
5433 (syms_of_composite) <composition-function-table>: Doc fix.
5434
54352008-09-25 Chong Yidong <cyd@stupidchicken.com>
5436
5437 * search.c (wordify): New argument for lax word-ends.
5438 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5439
54402008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5441
5442 * lisp.h (is_daemon): Declare.
5443 * dispnew.c (init_display): Do not try to initialize the terminal
5444 when running as a daemon.
5445
54462008-09-22 Chong Yidong <cyd@stupidchicken.com>
5447
5448 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5449 x_display_pixel_height.
5450
54512008-09-22 Martin Rudalics <rudalics@gmx.at>
5452
5453 * undo.c (record_point): Don't call Fundo_boundary for first
5454 change. (Bug#731)
5455
54562008-09-22 Juanma Barranquero <lekktu@gmail.com>
5457
5458 * emacs.c (Fdaemonp): Doc fix.
5459
54602008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5461
5462 * emacs.c (main): Place #ifdef in the proper place.
5463
54642008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5465
5466 * emacs.c (standard_args): Add --daemon.
5467 (main): Disconnect from the terminal when --daemon is passed.
5468 (is_daemon): New variable.
5469 (Fdaemonp): New function.
5470 (syms_of_emacs): Defsubr it.
5471
54722008-09-20 Chong Yidong <cyd@stupidchicken.com>
5473
5474 * xdisp.c (get_next_display_element): Handle string display
5475 correctly when checking for the end of a box run.
5476
54772008-09-20 Glenn Morris <rgm@gnu.org>
5478
5479 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5480 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5481 (Frename_file): Avoid copying to trash if a rename involves
5482 a delete. (Bug#964).
5483
54842008-09-20 Eli Zaretskii <eliz@gnu.org>
5485
5486 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5487 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5488 frames as well as termcap frames.
5489 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5490 get_named_tty.
5491
54922008-09-19 Eli Zaretskii <eliz@gnu.org>
5493
5494 * process.c (procfs_system_process_attributes): Fix cmdline in
5495 case /proc/PID/cmdline is empty.
5496
5497 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5498 x_display_pixel_height.
5499
55002008-09-19 Juanma Barranquero <lekktu@gmail.com>
5501
5502 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5503
5504 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5505 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5506
55072008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5508
5509 * dispextern.h (struct it): Move line_wrap away from the middle of
5510 bitfields. Move voffset in struct iterator_stack_entry after the
5511 bitfields. Move tab_width near after another short.
5512
55132008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5514
5515 * frame.h (struct frame): Move alpha from the middle of bitfields.
5516
5517 * window.h (struct window): Move frozen_window_start_p after the
5518 rest of the bitfields to reduce padding.
5519
55202008-09-18 Chong Yidong <cyd@stupidchicken.com>
5521
5522 * xterm.h (x_display_info): Remove `height' and `width' members.
5523
5524 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5525
5526 * w32term.h (w32_display_info): Remove `height', `width',
5527 `height_in', and `width_in' members.
5528
b8ff72fa
SM
5529 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5530 New functions.
aac0c6e3
MR
5531 (x_calc_absolute_position): Use them.
5532 (x_term_init): Omit removed `height' and `width' members.
5533
b8ff72fa
SM
5534 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5535 New functions.
aac0c6e3
MR
5536 (w32_read_socket, x_calc_absolute_position): Use them.
5537 (w32_initialize_display_info, w32_term_init): Omit removed members
5538 of w32_display_info.
5539
b8ff72fa
SM
5540 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5541 New functions.
5542 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5543
b8ff72fa
SM
5544 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5545 New functions.
aac0c6e3
MR
5546 (x_calc_absolute_position): Use them.
5547 (x_term_init): Omit removed `height' and `width' members.
5548
5549 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5550 (compute_tip_xy):
5551 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5552 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5553 x_display_pixel_width.
5554
55552008-09-18 Kenichi Handa <handa@m17n.org>
5556
5557 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5558 (composition_compute_stop_pos): Fix handling of static composition.
5559 (Fcomposition_get_gstring): Check FROM and TO at first.
5560
55612008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5562
46e722a9 5563 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5564 mixup (YAILOM).
5565
55662008-09-17 Chong Yidong <cyd@stupidchicken.com>
5567
5568 * indent.c (Fvertical_motion): Use position reported by iterator
5569 instead of PT for determining screen motion (bug#943).
5570
55712008-09-17 Romain Francoise <romain@orebokech.com>
5572
5573 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5574
55752008-09-17 Kenichi Handa <handa@m17n.org>
5576
5577 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5578
5579 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5580 if necessary.
5581
55822008-09-16 Kenichi Handa <handa@m17n.org>
5583
5584 * coding.c (make_conversion_work_buffer): Avoid calling
5585 Fget_buffer_create if it is not necessary.
5586
55872008-09-15 Martin Rudalics <rudalics@gmx.at>
5588
5589 * window.c (Fselect_window): Don't update window_select_count and
5590 use_time when norecord is not nil.
5591
55922008-09-14 Kenichi Handa <handa@m17n.org>
5593
5594 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5595 specpdl_ptr.
5596
55972008-09-12 Kenichi Handa <handa@m17n.org>
5598
5599 * indent.c (scan_for_column): Don't handle automatic composition
5600 if the current buffer is not associated with a window.
5601
5602 * composite.c (composition_reseat_it): If the current buffer is
5603 not associated with a window, ignore the automatic composition.
5604 (find_automatic_composition): Likewise.
5605
56062008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5607
5608 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5609 (Fgpm_mouse_stop): Use it.
5610 * termhooks.h (close_gpm): Declare.
5611 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5612 connection if Gpm_GetEvent fails.
5613
5614 * window.c (set_window_buffer): Always preserve current-buffer.
5615
56162008-09-12 Glenn Morris <rgm@gnu.org>
5617
5618 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5619
56202008-09-11 Glenn Morris <rgm@gnu.org>
5621
5622 * charset.c (charset-map-path): Doc fix.
5623
56242008-09-10 Kenichi Handa <handa@m17n.org>
5625
5626 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5627
5628 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5629 compose a grapheme cluster with the preceding base glyph.
5630
5631 * composite.c (composition_compute_stop_pos): Fix previous change.
5632 Reset cmp_it->id to -1 at first.
5633
56342008-09-10 Glenn Morris <rgm@gnu.org>
5635
5636 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5637
56382008-09-09 Chong Yidong <cyd@stupidchicken.com>
5639
5640 * keyboard.c (read_key_sequence): Reapply translation maps when
5641 switching keyboards.
5642
56432008-09-09 Kenichi Handa <handa@m17n.org>
5644
5645 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5646 characters.
5647
5648 * composite.c (FORWARD_CHAR): Fix calculation
5649 of (POSITION).pos_byte.
5650 (composition_compute_stop_pos): Limit the search of composition to
5651 at most 500 characters ahead. If we reach the limit or find a
5652 newline, set cmp_it->ch to -2 and return 0.
5653 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5654
56552008-09-08 Kenichi Handa <handa@m17n.org>
5656
5657 * indent.c (Fvertical_motion): Be sure to set
5658 it_overshoot_expected if it.cmp_it.id is non-negative.
5659
56602008-09-07 Andreas Schwab <schwab@suse.de>
5661
5662 * callproc.c (Fcall_process): Don't hold references to string data
5663 across garbage collection. Move initialisation of new_argv down
5664 to avoid compiler bug.
5665
56662008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5667
5668 * process.c (Fsystem_process_attributes): Doc fix.
5669
56702008-09-07 Chong Yidong <cyd@stupidchicken.com>
5671
5672 * callproc.c (Fcall_process): Canonicalize current directory name.
5673
5674 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5675 iterator advances to the next line if the current line ends in a
5676 continued tab.
5677
56782008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5679
5680 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5681 member to point to cmp_from.
5682
5683 * xdisp.c: Doc fix for references to gidx data member.
5684
56852008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5686
5687 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5688
56892008-09-07 Kenichi Handa <handa@m17n.org>
5690
5691 * composite.c (FORWARD_CHAR): Check STOP after
5692 incrementing (POSITION).pos.
5693
56942008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5695
5696 * process.c (Fsystem_process_attributes): Doc fix.
5697
56982008-09-06 Chong Yidong <cyd@stupidchicken.com>
5699
5700 * keyboard.c (Ftop_level): Doc fix.
5701
57022008-09-06 Eli Zaretskii <eliz@gnu.org>
5703
5704 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5705 minibuffer, don't let lower part of menu invade the echo area.
5706
5707 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5708 "char *q" to access menu text and advance through it. Revert the
5709 change that displayed ">" instead of ASCII character 0x10.
5710
57112008-09-05 Eli Zaretskii <eliz@gnu.org>
5712
5713 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5714 toggle boxes and radio buttons on MS-DOS as well.
5715
57162008-09-05 Kenichi Handa <handa@m17n.org>
5717
5718 * composite.c (autocmp_chars): Check lookback count.
5719 (composition_compute_stop_pos): Set cmp_it->lookback.
5720 (composition_reseat_it): Check lookback count.
5721 (struct position_record): New struct.
5722 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5723 (find_automatic_composition): New function.
5724 (composition_adjust_point): Use find_automatic_composition.
5725
5726 * dispextern.h (struct composition_it): New member lookback.
5727
57282008-09-02 Chong Yidong <cyd@stupidchicken.com>
5729
5730 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5731 if moving by a single line.
5732
57332008-09-02 Andreas Schwab <schwab@suse.de>
5734
5735 * xterm.c (x_delete_display): Fix merge error.
5736
5737 * fileio.c (Fexpand_file_name): Remove unused variables.
5738
57392008-09-02 Eli Zaretskii <eliz@gnu.org>
5740
5741 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5742 storage on all platforms, not just on DOS_NT.
5743
57442008-09-02 Jason Rumney <jasonr@gnu.org>
5745
b8ff72fa
SM
5746 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5747 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5748
57492008-09-01 Chong Yidong <cyd@stupidchicken.com>
5750
5751 * xfaces.c (Finternal_set_alternative_font_family_alist)
5752 (Finternal_set_alternative_font_registry_alist): Properly copy
5753 entire alist structure.
5754
57552008-09-01 Kenichi Handa <handa@m17n.org>
5756
d66c0241 5757 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5758 representative chars of the script is a vector.
d66c0241
JB
5759 (ftfont_list): Handle the case where the representative chars of
5760 the script is a vector.
aac0c6e3
MR
5761
5762 * character.c (syms_of_character): Docstring of
5763 script-representative-chars fixed.
5764
57652008-08-31 Eli Zaretskii <eliz@gnu.org>
5766
5767 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5768 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5769 the menu. Allocate larger buffer for `text', to account for
5770 possible ^C characters.
5771
57722008-08-31 Martin Rudalics <rudalics@gmx.at>
5773
5774 * xdisp.c (prepare_menu_bars): Don't call
5775 Vwindow_size_change_functions with arg Qt.
5776
57772008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5778
5779 * font.h (font_range):
5780 * fileio.c (report_file_error):
46e722a9
SM
5781 * composite.c (composition_update_it): Yet another int/Lisp_Object
5782 mixup (YAILOM).
aac0c6e3
MR
5783
57842008-08-30 Glenn Morris <rgm@gnu.org>
5785
5786 * data.c (Fmake_variable_frame_local): Doc fix.
5787
5788 * frame.c (Fmodify_frame_parameters): Doc fix.
5789
57902008-08-30 Eli Zaretskii <eliz@gnu.org>
5791
5792 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5793 needed by GetTokenInformation.
5794 (w32_system_process_attributes): Check return values of all system
5795 APIs.
5796
5797 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5798 only when the state changes.
5799 (IT_update_begin, IT_update_end): Add termscript trace.
5800
5801 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5802 clipboard is unavailable. Set dst to NULL if it doesn't point to
5803 malloc'ed data.
5804 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5805 passing random values to xfree.
5806
5807 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5808 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5809
58102008-08-29 Jason Rumney <jasonr@gnu.org>
5811
5812 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5813
58142008-08-29 Eli Zaretskii <eliz@gnu.org>
5815
5816 * composite.c (fill_gstring_body): Avoid compiler warnings.
5817
5818 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5819 LGLYPH_SET_CODE to avoid compiler warnings.
5820
2ae37cf0 5821 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5822
5823 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5824
5825 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5826 LGLYPH_SET_CODE.
5827
58282008-08-29 Kenichi Handa <handa@m17n.org>
5829
5830 * fileio.c (report_file_error): Don't downcase the first character
5831 of errstring if it is still unibyte.
5832
58332008-08-29 Kenichi Handa <handa@m17n.org>
5834
5835 These changes are to re-implement the automatic composition so
5836 that it doesn't use text properties.
5837
5838 * Makefile.in (ftfont.o): Depend on composite.h.
5839 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5840
5841 * character.h (Vunicode_category_table): Extern it.
5842
5843 * character.c (Vunicode_category_table): New variable.
5844 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5845
5846 * chartab.c (optimize_sub_char_table): Perform more greedy
5847 optimization.
5848
b8ff72fa
SM
5849 * composite.h (enum composition_method):
5850 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5851 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5852 (Vcomposition_function_table): Extern it.
5853 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5854 (composition_gstring_put_cache, composition_gstring_from_id)
5855 (composition_gstring_p, composition_gstring_width)
5856 (composition_compute_stop_pos, composition_reseat_it)
5857 (composition_update_it, composition_adjust_point): Extern them.
5858 (Fcomposition_get_gstring): EXFUN it.
5859
d66c0241 5860 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5861 (Vcomposition_function_table)
5862 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5863 (gstring_hash_table, gstring_work, gstring_work_headers):
5864 New variables.
aac0c6e3
MR
5865 (gstring_lookup_cache, composition_gstring_put_cache)
5866 (composition_gstring_from_id, composition_gstring_p)
5867 (composition_gstring_width, fill_gstring_header)
5868 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5869 (composition_reseat_it, composition_update_it)
b8ff72fa 5870 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5871 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5872 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5873 Defsubr compostion_get_gstring.
5874
5875 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5876 cmp_id.
5877 (struct glyph_string): Delete the member gidx. New members
5878 cmp_id, cmp_from, and cmp_to.
5879 (enum it_method): Delete GET_FROM_COMPOSITION.
5880 (struct composition_it): New struct.
5881 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5882 Delete c, len, cmp_id, cmp_len in u.comp.
5883
5884 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5885 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5886 (enum lglyph_indices): Likewise.
b8ff72fa 5887 (font_range): Adjust extern.
aac0c6e3
MR
5888 (font_fill_lglyph_metrics): Extern it.
5889
5890 * font.c (QCf): New variable.
5891 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5892 (font_prepare_composition): Delete this function.
5893 (font_range): Type and arguments changed.
5894 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5895 (font_fill_lglyph_metrics): New function.
b8ff72fa 5896 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5897 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5898 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5899 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5900
5901 * fontset.h (font_for_char): Extern it.
5902
5903 * fontset.c (font_for_char): New function.
5904
5905 * ftfont.c: Include composite.h.
5906 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5907 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5908
5909 * indent.c: Include composite.h and dispextern.h.
5910 (check_composition): Delete this function.
5911 (scan_for_column): Handle composition by
5912 composition_compute_stop_pos, composition_reseat_it, and
5913 composition_update_it.
5914 (compute_motion): Likewise.
5915 (Fvertical_motion): Fix checking of composition.
5916
5917 * keyboard.c (adjust_point_for_property): Check composition by
5918 composition_adjust_point.
5919
b8ff72fa 5920 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5921 struct glyph_string.
5922
b8ff72fa
SM
5923 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5924 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5925 struct glyph.
5926 (produce_composite_glyph): Likewise.
5927
b8ff72fa
SM
5928 * w32term.c (x_draw_composite_glyph_string_foreground):
5929 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5930 (x_draw_glyph_string): Likewise.
5931
5932 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5933 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5934
5935 * xdisp.c: Include font.h.
5936 (it_props): Delete the entry for Qauto_composed.
5937 (init_iterator): Initialize it->cmp_it.id to -1.
5938 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5939 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5940 (handle_auto_composed_prop): Delete it.
5941 (handle_composition_prop): Handle only static composition.
5942 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5943 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5944 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5945 (pop_it): Likewise.
5946 (get_next_element): Delete next_element_from_composition.
5947 (CHAR_COMPOSED_P): New macro.
5948 (get_next_display_element): For automatic composition, get a face
5949 from the font in the glyph-string.
5950 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5951 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5952 (next_element_from_string): Check if the character at the current
5953 position is composed by CHAR_COMPOSED_P.
5954 (next_element_from_buffer): Likewise.
d66c0241
JB
5955 (next_element_from_composition): Adjust for the change of struct it.
5956 Update it->cmp_it.
b8ff72fa
SM
5957 (dump_glyph): Adjust for the change of struct glyph.
5958 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5959 it and struct glyph. Don't handle automatic composition here.
5960 (fill_gstring_glyph_string): New function.
5961 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5962 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5963 (BUILD_GSTRING_GLYPH_STRING): New macro.
5964 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5965 automatic composition.
b8ff72fa 5966 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5967 struct glyph.
b8ff72fa 5968 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5969
b8ff72fa 5970 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5971 the change of struct glyph_string.
5972 (x_draw_glyph_string): Likewise.
5973
59742008-08-29 Glenn Morris <rgm@gnu.org>
5975
5976 * buffer.c (word-wrap): Doc fix.
5977 * xdisp.c (truncate-partial-width-windows): Doc fix.
5978 Increase default to 50.
5979
59802008-08-29 Chong Yidong <cyd@stupidchicken.com>
5981
5982 * xdisp.c (update_tool_bar_unwind): New function.
5983 (update_tool_bar): Temporarily set selected frame before building
5984 tool-bar items.
5985
59862008-08-28 Michael Albinus <michael.albinus@gmx.de>
5987
5988 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5989 snprintf, respectively.
5990 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5991
59922008-08-28 Chong Yidong <cyd@stupidchicken.com>
5993
5994 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5995 LDFLAGS to GNUstep CC invocation.
5996
59972008-08-27 Chong Yidong <cyd@stupidchicken.com>
5998
5999 * indent.c (Fvertical_motion): Revert last change. Handle the
6000 general case where we are moving forward, and PT spans multiple
6001 screen lines.
6002
6003 * eval.c (find_handler_clause): Temporarily increase
6004 max-lisp-eval-depth while printing the backtrace buffer, to
6005 guarantee that help-mode code can run.
6006
60072008-08-27 Eli Zaretskii <eliz@gnu.org>
6008
6009 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6010 colors under -rv.
6011 (IT_set_frame_parameters): Don't swap foreground and background
6012 colors if `(reverse . t)' is present in the frame properties.
6013 (internal_terminal_init): Call init_frame_faces only for the
6014 initial frame.
6015
60162008-08-27 Andreas Schwab <schwab@suse.de>
6017
6018 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6019
60202008-08-27 Andreas Schwab <schwab@suse.de>
6021
6022 * search.c (search_buffer): Set char_base to zero only at the end.
6023
60242008-08-27 Kenichi Handa <handa@m17n.org>
6025
b8ff72fa 6026 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6027
60282008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6029
6030 * xterm.c (x_term_init): Temporarily hide the partially
6031 initialized terminal while calling vendor-specific-keysyms.
6032
60332008-08-26 Eli Zaretskii <eliz@gnu.org>
6034
6035 * msdos.c (internal_terminal_init): Most initializations done only
6036 once, especially initial_screen_colors[] and termscript open.
6037
60382008-08-26 Chong Yidong <cyd@stupidchicken.com>
6039
6040 * eval.c (Fcondition_case): Doc fix.
6041
6042 * widgetprv.h (EmacsFramePart): Change font member to the new font
6043 struct.
6044
6045 * widget.c: Include character.h and font.h for XSETFONT.
6046 (setup_frame_gcs): Compute X font id from font struct, just once.
6047
60482008-08-26 Eli Zaretskii <eliz@gnu.org>
6049
6050 * term.c (get_named_tty): Fix last change.
6051
60522008-08-26 Chong Yidong <cyd@stupidchicken.com>
6053
6054 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6055 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6056
60572008-08-25 Eli Zaretskii <eliz@gnu.org>
6058
6059 * frame.c (do_switch_frame): Mark previously displayed frame as
6060 obscured for FRAME_MSDOS_P frames as well.
6061
60622008-08-24 Eli Zaretskii <eliz@gnu.org>
6063
6064 * frame.c (make_terminal_frame): Initialize f->terminal,
6065 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6066 Set the top frame to newly created frame.
6067 (Fmake_terminal_frame): Reuse the_only_display_info.
6068
6069 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6070 estimating available memory.
6071
b97439ce 60722008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6073
6074 * nsterm.m (ns_draw_window_cursor): Don't call
6075 NSDisableScreenUpdates and NSEnableScreenUpdates on
6076 non-NS_IMPL_COCOA systems.
6077
60782008-08-23 Andreas Schwab <schwab@suse.de>
6079
6080 * process.c (procfs_system_process_attributes): Fix use of
6081 uninitialized variables.
6082
60832008-08-23 Eli Zaretskii <eliz@gnu.org>
6084
6085 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6086
6087 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6088 calling tty-set-up-initial-frame-faces.
6089
b8ff72fa
SM
6090 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6091 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6092
6093 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6094 addition to output_termcap.
6095
6096 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6097
6098 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6099 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6100 highlight.
6101
6102 * process.c [!subprocesses]: Define QCname.
6103 (syms_of_process): Intern and staticpro it.
6104
6105 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6106 Adjust for changes in encoding/decoding routines.
6107 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6108 encode_coding and decode_coding.
6109
b8ff72fa 6110 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6111
6112 * dosfns.c: Include frame.h before termhooks.h.
6113 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6114 variable termscript.
6115
6116 * s/msdos.h (USER_FULL_NAME): Define.
6117 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6118
6119 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6120 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6121 pw->pw_gecos.
6122
6123 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6124 SELECTED_FRAME as additional (1st) argument.
6125 (tty_read_avail_input): Handle output_msdos_raw in
6126 addition to output_termcap.
6127
6128 * msdos.c: Include frame.h before termhooks.h.
6129 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6130 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6131 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6132 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6133 (IT_set_terminal_modes, IT_reset_terminal_modes)
6134 (IT_set_frame_parameters): Use tty->termscript instead of a global
6135 variable termscript.
6136 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6137 global variable terminal_coding. Don't refer to
6138 Vnonascii_translation_table.
6139 (internal_terminal_init): Set Vwindow_system in current_kboard.
6140 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6141 Announce date and time of session start, if termscript is open.
6142 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6143 term.c:init_tty). Open termscript only of not already open.
6144 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6145 here instead of dos_ttraw. Don't initialize display if this is an
6146 initial tty. Don't set FRAME_FONT.
6147 (Vwindow_system_version): Bump to 23.
6148 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6149 is available, set up mouse_position_hook.
6150 (dos_ttraw, IT_set_terminal_modes): If called with initial
6151 terminal, do nothing.
6152 (IT_set_frame_parameters): Handle the Qtty_type frame
6153 parameter by calling internal_terminal_init.
6154 (dos_set_window_size, show_mouse_face)
6155 (clear_mouse_face, IT_note_mode_line_highlight)
6156 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6157 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6158 (initialize_msdos_display): New function.
6159 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6160 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6161 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6162 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6163 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6164 (request_sigio, unrequest_sigio): Don't define, now defined on
6165 sysdep.c.
6166 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6167
6168 * term.c [MSDOS]: Include msdos.h.
6169 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6170 conditional to DOS_NT. Allow only one call to this function in a
6171 session. Don't allocate a new struct tty_display_info; instead,
6172 reuse the_only_display_info. Call get_tty_size to get screen
6173 dimensions. Call init_baud_rate to set bad_rate.
6174 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6175 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6176 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6177 (get_tty_terminal, get_named_tty, Ftty_type)
6178 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6179 output_termcap.
b8ff72fa
SM
6180 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6181 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6182 only when subprocesses are supported.
aac0c6e3
MR
6183
6184 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6185 f->output_data.x.
6186 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6187 terminal devices.
6188
5582fbc7 6189 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6190 x_output.
6191 (FRAME_FONT): Use output_data.tty.
6192 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6193 (struct x_display_info): Rename from display_info. Update all users in
6194 msdos.c.
aac0c6e3 6195 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6196 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6197 (dos_ttraw): Update prototype.
6198
6199 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6200 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6201
62022008-08-23 Jason Rumney <jasonr@gnu.org>
6203
6204 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6205 (fn_TIFFSetDirectory): New library function used.
6206 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6207 (tiff_load): Use :index to select among multiple images. Set count
6208 property when multiple images exist.
6209 (gif_format): Use :index, not :image.
6210
62112008-08-23 Chong Yidong <cyd@stupidchicken.com>
6212
6213 * xdisp.c (try_scrolling): Check INT_MAX instead of
6214 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6215 to obtain INT_MAX.
6216
62172008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6218
6219 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6220
62212008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6222
6223 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6224 GNUstep library location.
6225
62262008-08-21 Chong Yidong <cyd@stupidchicken.com>
6227
6228 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6229 before using it.
6230
6231 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6232
62332008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6234
6235 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6236 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6237 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6238 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6239 (EmacsApp-cursor_blink_handler): Remove declaration.
6240 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6241 match 01 Feb 2008 changes in xterm.c.
6242 (ns_read_socket): Add cast to avoid warning.
6243 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6244 GNUstep.
6245
62462008-08-20 Chong Yidong <cyd@stupidchicken.com>
6247
6248 * xselect.c (x_get_foreign_selection): Return nil if desired
6249 selection could not be obtained, instead of signalling an error.
6250
62512008-08-20 David Reitter <david.reitter@gmail.com>
6252
6253 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6254 * nsterm.m: Remove ns-specific code for cursor blinking.
6255 (ns_draw_window_cursor): Clear cursor properly rather than
6256 redrawing the area. Respect width of bar cursors.
6257 These changes enable the use of generic blink-cursor-mode and
6258 generic cursor types in NS and support smooth cursor movements (do
6259 not blink off after command).
6260 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6261 Nextstep, too.
6262
62632008-08-19 Kenichi Handa <handa@m17n.org>
6264
6265 * font.c (Vfont_log_deferred): New variable.
6266 (font_add_log): Check Vfont_log_deferred.
6267 (font_deferred_log): New function.
6268
6269 * font.h (font_deferred_log): Extern it.
6270
6271 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6272 for sorting.
6273 (face_for_char): Use deferred log.
6274
62752008-08-18 Kenichi Handa <handa@m17n.org>
6276
6277 * fontset.c (face_for_char): Add font log.
6278
6279 * font.c (font_add_log): Add the font properties :script, :lang,
6280 and :otf in the log.
6281
62822008-08-17 Chong Yidong <cyd@stupidchicken.com>
6283
6284 * xdisp.c: Remove dead code.
6285 (handle_invisible_prop, next_overlay_string): Defer call to
6286 setup_for_ellipsis.
6287 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6288
62892008-08-15 Chong Yidong <cyd@stupidchicken.com>
6290
6291 * xfaces.c (lookup_derived_face): Properly handle possible zero
6292 return value of get_lface_attributes.
6293 (merge_faces): Don't tell lookup_derived_face to signal an error
6294 if face is not found.
6295
6296 * dired.c (Fdirectory_files): Doc fix.
6297
6298 * process.c (make_process): Initialize kill_without_query struct
6299 member.
6300
63012008-08-15 Eli Zaretskii <eliz@gnu.org>
6302
6303 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6304 Alternative calculation of totphys for Visual Studio 6.
6305
6306 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6307
6308 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6309 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6310 All users changed.
6311 (stat): Only root directory passed to GetDriveType. Allow RAM
6312 disk as well as local fixed disk when w32-get-true-file-attributes
6313 is set to `local'.
6314 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6315 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6316 (w32_cached_id, w32_add_to_cache): New functions.
6317 (get_name_and_id): Look account names in the cache before calling
6318 lookup_account_sid.
6319 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6320 New initialization flags.
6321 (globals_of_w32): Initialize them to zero.
6322 (w32_system_process_attributes): Use w32_cached_id and
6323 w32_add_to_cache.
6324
63252008-08-14 Lawrence Mitchell <wence@gmx.li>
6326
6327 * lread.c (Fread_char, Fread_char_exclusive): If no character
6328 event is read before timeout is reached, return nil, rather than
6329 converting to a number.
6330
63312008-08-14 Chong Yidong <cyd@stupidchicken.com>
6332
6333 * fns.c (use_dialog_box): Doc fix.
6334
6335 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6336 on OS X.
6337
63382008-08-13 Chong Yidong <cyd@stupidchicken.com>
6339
6340 * frame.c (Qns_parse_geometry): New var.
6341 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6342
63432008-08-11 Chong Yidong <cyd@stupidchicken.com>
6344
6345 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6346 space character in calculating tabs.
6347
63482008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6349
6350 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6351
63522008-08-10 Glenn Morris <rgm@gnu.org>
6353
6354 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6355 silence gcc "limited range of data type" warnings in some
6356 make_fixnum_or_float calls.
6357
63582008-08-09 Eli Zaretskii <eliz@gnu.org>
6359
6360 * w32.c (w32_system_process_attributes): If the process does not
6361 exist, return nil.
6362
6363 * w32.c: Include thelp32.h, psapi.h and coding.h.
6364 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6365 declarations.
6366 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6367 (Process32Next_Proc): New typedefs.
6368 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6369 (g_b_init_process32_next, g_b_init_open_thread_token)
6370 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6371 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6372 (g_b_init_get_process_working_set_size)
6373 (g_b_init_global_memory_status_ex): New static variables.
6374 (globals_of_w32): Initialize them.
6375 (create_toolhelp32_snapshot, process32_first, process32_next)
6376 (open_thread_token, impersonate_self, revert_to_self)
6377 (get_process_memory_info, get_process_working_set_size)
6378 (global_memory_status, global_memory_status_ex): New wrapper
6379 functions.
6380 (w32_list_system_processes, w32_system_process_attributes)
6381 (enable_privilege, restore_privilege, ltime, process_times):
6382 New functions.
6383 (convert_time_raw): New function.
6384 (convert_time): Remove conversion of FILETIME into time in 100
6385 nsec units, call convert_time_raw instead.
6386
6387 * process.h (w32_list_system_processes, w32_system_process_attributes):
6388 Add prototypes.
6389 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6390 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6391 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6392 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6393
6394 * process.c (Fsystem_process_attributes): Doc fix.
6395
63962008-08-08 Chong Yidong <cyd@stupidchicken.com>
6397
6398 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6399 a continued multi-char glyph; if so, advance to the actual glyph.
6400
64012008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6402
6403 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6404
6405 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6406 (.m.o): Use it.
6407 * config.in: Regenerate.
6408
64092008-08-07 Chong Yidong <cyd@stupidchicken.com>
6410
6411 * xdisp.c (redisplay_window): Revert last change.
6412 (try_window): Check bottom scroll margin too.
6413
64142008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6415
6416 * config.in: Regenerate.
6417
6418 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6419 -list-load-path-shadows'.
6420 (nsgui.h): Reduce number of things depending on it.
6421
64222008-08-06 Chong Yidong <cyd@stupidchicken.com>
6423
6424 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6425 instead of window-end which does the wrong thing at eob.
6426 (try_cursor_movement): Minor optimization.
6427 (redisplay_window): If scroll margin is defined, don't assume
6428 window doesn't need scrolling.
6429
64302008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6431
6432 * config.in: Regenerate.
6433
6434 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6435 (mostlyclean): Don't delete *.d under NS.
6436
6437 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6438
64392008-08-06 Kenichi Handa <handa@m17n.org>
6440
6441 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6442
64432008-08-06 Andreas Schwab <schwab@suse.de>
6444
6445 * config.in: Regenerate.
6446
64472008-08-05 Chong Yidong <cyd@stupidchicken.com>
6448
6449 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6450 forcing a window start.
6451
6452 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6453 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6454
64552008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6456
6457 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6458 argument.
6459
64602008-08-05 Juanma Barranquero <lekktu@gmail.com>
6461
6462 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6463 <scroll-down-aggressively, before-change-functions>:
6464 <after-change-functions>: Reflow docstrings.
6465
64662008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6467 Ken Raeburn <raeburn@gnu.org>
6468
6469 Dock menu customization, based on a patch by Ken Raeburn, plus some
6470 other fixes.
6471 * nsmenu.m (dockMenu): New variable.
6472 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6473
6474 * nsterm.h (dockMenu): Declare.
6475
6476 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6477 (ns_term_init): Initialize dockMenu.
6478 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6479 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6480 left.
6481
6482 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6483
64842008-08-04 Chong Yidong <cyd@stupidchicken.com>
6485
6486 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6487
6488 * config.in: Regenerate.
6489
64902008-08-04 Seiji Zenitani <zenitani@mac.com>
6491
6492 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6493
64942008-08-04 Chong Yidong <cyd@stupidchicken.com>
6495
6496 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6497
64982008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6499
6500 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6501
6502 * keyboard.h: Comment an #endif.
6503
6504 * lisp.h (have_menus_p): Adjust comment.
6505
6506 * menu.c (find_and_return_menu_selection): Fix comparison with
6507 client_data.
6508
6509 * nsmenu.m (popup_activated_flag): New variable.
6510 (popup_activated): New function.
6511 (menu-or-popup-active-p): New exported lisp definition.
6512 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6513 when popup done.
6514 (ns_popup_dialog): Set popup_activated_flag.
6515
6516 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6517 version for GNUstep (handled by conditional typedef in nsterm.m).
6518 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6519 in rgb.txt).
6520
6521 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6522
6523 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6524
6525 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6526
6527 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6528 shortcircuit if popup_activated like GTK and X toolkit.
6529
6530 * m/inter386.h: Change DARWIN to DARWIN_OS.
6531
6532 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6533 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6534 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6535 comment on NO_SOCK_SIGIO.
6536
65372008-08-03 Chong Yidong <cyd@stupidchicken.com>
6538
6539 * nsterm.m (windowDidResize): Remove stopModal call.
6540
65412008-08-03 Andreas Schwab <schwab@suse.de>
6542
6543 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6544 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6545
65462008-08-02 Chong Yidong <cyd@stupidchicken.com>
6547
6548 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6549 Don't use uninitialized pointer variable when using getrlimit.
6550
65512008-08-02 Jason Rumney <jasonr@gnu.org>
6552
6553 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6554
65552008-08-02 Eli Zaretskii <eliz@gnu.org>
6556
6557 * alloc.c (NSTATICS): Bump to 0x640.
6558
6559 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6560
6561 * lisp.h: Add prototype for directory_files_internal.
6562
6563 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6564 New functions.
6565 (syms_of_process): Defsubr them. Add initializations for various
6566 Q* symbols used in procfs_system_process_attributes.
6567 (procfs_list_system_processes, procfs_system_process_attributes)
6568 [HAVE_PROCFS]: New functions.
6569 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6570 (procfs_get_total_memory): New functions.
6571
65722008-08-01 Juanma Barranquero <lekktu@gmail.com>
6573
6574 * xfaces.c (Fx_load_color_file): Fix previous change;
6575 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6576
65772008-08-01 Michael Albinus <michael.albinus@gmx.de>
6578
6579 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6580
65812008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6582
6583 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6584
65852008-08-01 Chong Yidong <cyd@stupidchicken.com>
6586
6587 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6588
6589 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6590 define NSApplicationDelegateReplySuccess.
6591 (EmacsView -converstationIdentifier): Use long instead of
6592 NSInteger for GNUstep, since it doesn't have NSInteger.
6593
6594 * xmenu.c: Revert last change.
6595
6596 * keyboard.h: Fix last change.
6597
65982008-08-01 Juanma Barranquero <lekktu@gmail.com>
6599
6600 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6601 on Windows.
6602
66032008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6604
6605 Warning clearing and clean-up in NS port.
6606 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6607 Add prototypes.
6608 * nsgui.h (FACE_DEFAULT): Remove, unused.
6609 (XGCValues): Change colors to unsigned long.
6610 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6611 nsterm.m.
6612 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6613 (ns_list_fonts): Remove, unused.
6614 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6615 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6616 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6617 (nsfont_draw): Compare face colors to 0, not nil.
6618 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6619 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6620 (-addSubmenuWithTitle:): Use NSMenuItem class.
6621 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6622 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6623 (ns_clip_to_row): Make gc arg a BOOL.
6624 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6625 ns_clip_to_row() call.
6626 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6627 used). Cast FRAME_FONT assignments.
6628 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6629 (ns_string_to_lispmod): Change arg to const char.
6630 (ns_term_init): Use NSMenuItem class.
6631 (EmacsApp -openFile:): Move to different section of file.
6632 (EmacsApp -application:openFiles:): Don't return a value, call
6633 -replyToOpenOrPrint:.
6634 (EmacsView -keyDown:): Fix up cast.
6635 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6636 (EmacsView -menuDown:): Cast tag in call to
6637 find_and_call_menu_selection().
6638 (ns_list_fonts): Remove, unused.
6639 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6640 (ns_fontname_to_xlfd): Make static.
6641 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6642 Remove prototypes (now in keyboard.h).
6643 (next_menubar_widget_id): Remove, unused.
6644 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6645 Remove prototypes (now in keyboard.h).
6646 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6647
66482008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6649
6650 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6651 (floatfns.o): Depend on syssignal.h.
6652 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6653
6654 * systty.h: Fix previous change that removed BSD_TERMIOS.
6655 Add comments to #ifdefs.
6656
66572008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6658
6659 * w32fns.c (w32-load-color-file): Remove.
6660 (x-open-connection): Use renamed Fx_load_color_file.
6661 * xfaces.c (x-load-color-file): Add.
6662 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6663 Emacs.clr.
6664 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6665
66662008-07-31 Michael Albinus <michael.albinus@gmx.de>
6667
6668 * dbusbind.c (Fdbus_call_method_asynchronously)
6669 (Fdbus_method_error_internal): New defuns.
6670 (xd_read_message): Handle also reply messages.
6671 (Vdbus_registered_functions_table): Extend docstring.
6672
66732008-07-31 Juanma Barranquero <lekktu@gmail.com>
6674
6675 * keyboard.c (gobble_input): Fix previous change.
6676
66772008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6678
6679 * bitmaps/README:
6680 * xfns.c:
6681 * termcap.c:
6682 * term.c:
6683 * syswait.h:
6684 * systty.h:
6685 * systime.h:
6686 * syssignal.h:
6687 * sysdep.c:
6688 * process.h:
6689 * process.c:
6690 * print.c:
6691 * ndir.h:
6692 * lread.c:
6693 * keyboard.c:
6694 * getpagesize.h:
6695 * floatfns.c:
6696 * fileio.c:
6697 * emacs.c:
6698 * doc.c:
6699 * dispnew.c:
6700 * dired.c:
6701 * data.c:
6702 * callproc.c:
6703 * buffer.c:
6704 * README:
6705 * Makefile.in:
6706 * s/template.h:
6707 * s/msdos.h:
6708 * m/vax.h: Remove VMS support.
6709 * s/vms.h:
6710 * vlimit.h:
6711 * uaf.h:
6712 * temacs.opt:
6713 * param.h:
6714 * ioctl.h: Remove file.
6715
67162008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6717
6718 * s/ms-w32.h (MULTI_KBOARD): Remove.
6719 * xterm.c:
6720 * xselect.c:
6721 * xfns.c:
6722 * window.c:
6723 * w32term.c:
6724 * w32fns.c:
6725 * terminal.c:
6726 * termhooks.h:
6727 * term.c:
6728 * sysdep.c:
6729 * keyboard.h:
6730 * keyboard.c:
6731 * frame.h:
6732 * frame.c:
6733 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6734 * config.in: Regenerate.
6735
67362008-07-30 Jason Rumney <jasonr@gnu.org>
6737
6738 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6739
6740 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6741 (w32font_open_internal): Get unicode version of textmetrics.
6742 Don't enable or disable glyph indices here.
6743 (w32font_open): Disable use of glyph indices.
6744
6745 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6746
67472008-07-30 Chong Yidong <cyd@stupidchicken.com>
6748
6749 * minibuf.c (Vread_buffer_function): Doc fix.
6750
67512008-07-30 John Paul Wallington <jpw@pobox.com>
6752
6753 * minibuf.c (read_buffer_completion_ignore_case): New var.
6754 (Fread_buffer): Use it.
6755
67562008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6757
6758 * systty.h (sensemode): Remove empty #if. Remove reference to
6759 BSD_TERMIOS, unused.
6760
6761 * sysdep.c: Remove reference to DGUX.
6762 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6763
6764 * config.in: Regenerate.
6765
67662008-07-30 Jason Rumney <jasonr@gnu.org>
6767
6768 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6769
67702008-07-29 Jason Rumney <jasonr@gnu.org>
6771
6772 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6773 is populated.
6774 (uniscribe_encode_char): Always use uniscribe.
6775 Avoid using context if cache is populated.
6776
67772008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6778
6779 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6780 open menu.
6781
6782 * gtkutil.c (menu_nav_ended): Remove.
6783 (create_menus): Remove signal connect for menu_nav_ended.
6784
67852008-07-28 Chong Yidong <cyd@stupidchicken.com>
6786
6787 * xdisp.c (redisplay_window): Check return value of
6788 compute_window_start_on_continuation_line before forcing a window
6789 start.
6790
67912008-07-28 Jason Rumney <jasonr@gnu.org>
6792
6793 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6794
6795 * w32term.c (w32_enable_unicode_output, cleartype_active):
6796 Remove obsolete display options.
6797 (x_draw_glyph_string_background): Don't use old cleartype_active
6798 workaround.
6799 (w32_initialize): Remove cleartype_active initialization.
6800 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6801
68022008-07-28 Andreas Schwab <schwab@suse.de>
6803
6804 * lisp.h (init_weak_hash_tables, syms_of_font)
6805 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6806 (remove_hash_entry): Don't declare.
6807 * eval.c (maybe_call_debugger): Make static and move before use.
6808 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6809 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6810 * xterm.h (x_set_frame_alpha): Declare.
6811
68122008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6813
6814 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6815 (create_menus): Connect selection-done to menu_nav_ended.
6816
68172008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6818
6819 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6820 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6821 parameter with read of 'alpha' one.
6822 (Qns_frame_parameter): Remove.
5582fbc7 6823 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6824 (next-selection-coding-system, Vselection_coding_system)
6825 (Vnext_selection_coding_system): Drop.
6826
68272008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6828
6829 * nsfns.m (do-applescript, do_applescript): Rename to
6830 ns-do-applescript, ns_do_applescript, and move within file.
6831
68322008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6833
6834 Remove support for Mac Carbon.
6835 * mactoolbox.c:
6836 * macterm.h:
6837 * macterm.c:
6838 * macselect.c:
6839 * macmenu.c:
6840 * macgui.h:
6841 * macfns.c:
6842 * mac.c: Remove file.
6843 * s/darwin.h:
6844 * m/intel386.h:
6845 * xfaces.c:
6846 * xdisp.c:
6847 * window.c:
6848 * tparam.c:
6849 * termhooks.h:
6850 * termcap.c:
6851 * term.c:
6852 * syssignal.h:
6853 * sysselect.h:
6854 * sysdep.c:
6855 * process.c:
6856 * lread.c:
6857 * lisp.h:
6858 * keyboard.c:
6859 * image.c:
6860 * fringe.c:
6861 * frame.h:
6862 * frame.c:
6863 * fontset.c:
6864 * font.h:
6865 * font.c:
6866 * fns.c:
6867 * fileio.c:
6868 * emacs.c:
6869 * dispnew.c:
6870 * dispextern.h:
6871 * config.in:
6872 * atimer.c:
2ae37cf0 6873 * Makefile.in: Remove code for Carbon.
aac0c6e3 6874
f0131492 68752008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6876
6877 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6878
68792008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6880
6881 * macterm.h (kCGBitmapByteOrder32Host): New define for
6882 non-universal SDKs.
6883
6884 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6885 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6886
6887 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6888 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6889
68902008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6891
6892 * w32inevt.c: Include dispextern.h.
6893
68942008-07-26 Andreas Schwab <schwab@suse.de>
6895
6896 * print.c (print_object): Fix off-by-one in last change.
6897
68982008-07-25 Juanma Barranquero <lekktu@gmail.com>
6899
6900 * term.c (syms_of_term): Don't initialize default_orig_pair,
6901 default_set_foreground and default_set_background on Windows.
6902
69032008-07-25 Jason Rumney <jasonr@gnu.org>
6904
6905 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6906 ScriptItemize. Clean up return value checking. Remove unused
6907 variables.
6908 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6909 shaping engine.
6910
6911 * w32font.c (w32font_has_char): Handle the case where we can't
6912 determine the script for a character.
6913
69142008-07-25 Chong Yidong <cyd@stupidchicken.com>
6915
6916 * term.c (syms_of_term): Initialize default_orig_pair,
6917 default_set_foreground, and default_set_background.
6918
6919 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6920 clash (bug#86).
6921 (getloadavg): Callers changed.
6922
6923 * image.c (svg_load_image): Fix last change.
6924 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6925 image size is valid. Use g_object_unref instead of deprecated
6926 rsvg_handle_free to free rsvg handle.
6927 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6928
69292008-07-25 Jason Rumney <jasonr@gnu.org>
6930
6931 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6932 surrogates before looking up glyph index.
6933 (w32font_text_extents): Encode as surrogates if falling back to
6934 functions that need UTF-16 wide chars.
6935
6936 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6937 BMP as surrogates before looking up glyph index.
6938
69392008-07-25 Chong Yidong <cyd@stupidchicken.com>
6940
6941 * image.c (svg_load_image): Check for failure in return value of
6942 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6943
69442008-07-25 Jason Rumney <jasonr@gnu.org>
6945
6946 * w32font.c (Fx_select_font): Reverse sense of second arg.
6947
69482008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6949
6950 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6951 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6952
6953 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6954 (PURESIZE): Use it.
6955
69562008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6957
6958 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6959 * m/alpha.h (TEXT_END):
6960 * m/ibmrs6000.h (TEXT_END):
6961 * m/macppc.h (TEXT_END):
6962 * s/darwin.h (TEXT_END):
6963 * s/msdos.h (TEXT_END): Remove, unused.
6964 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6965 * s/cygwin.h: Remove comment.
6966
6967 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6968 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6969 * m/intel386.h (DOT_GLOBAL_START):
6970 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6971 (USG): Remove, file not used on USG platforms.
6972
6973 * Makefile.in (HAVE_X11): Remove empty #else.
6974
69752008-07-24 Andreas Schwab <schwab@suse.de>
6976
6977 * fileio.c (Finsert_file_contents): Properly adjust undo list
6978 after format conversion.
6979
69802008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6981
6982 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6983 (menu_nav_ended): Remove.
6984 (create_menus): Remove signal connect for menu_nav_ended.
6985 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6986 create_menus.
6987 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6988
69892008-07-23 Jason Rumney <jasonr@gnu.org>
6990
6991 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6992 with opened font.
6993 (w32font_open): Set font type to gdi.
6994
6995 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6996
69972008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6998
6999 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7000 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7001 defines it.
7002 * unexec.c (ADDR_CORRECT): Define unconditionally.
7003
7004 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7005
7006 * unexec.c: Remove code depending on !COFF and USG, the file is
7007 not used for such systems.
7008
7009 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7010 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7011 (LD_SWITCH_SYSTEM_1): Remove, update users.
7012
7013 * s/darwin.h (DATA_END):
7014 * m/intel386.h (DATA_END):
7015 * m/ibmrs6000.h (DATA_END):
7016 * m/alpha.h (DATA_END): Remove, unused.
7017
7018 * config.in: Regenerate.
7019 * s/ms-w32.h (subprocesses): Define unconditionally.
7020 * s/template.h (subprocesses): Update comment.
7021 * s/vms.h (subprocesses):
7022 * s/usg5-4.h (subprocesses):
7023 * s/hpux10-20.h (subprocesses):
7024 * s/gnu-linux.h (subprocesses):
7025 * s/cygwin.h (subprocesses):
7026 * s/bsd-common.h (subprocesses):
7027 * s/aix4-2.h (subprocesses):
7028 * s/darwin.h (subprocesses): Do not define, defined by default now.
7029
7030 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7031 Remove all references.
7032 (temacs): Add GNUstep specific ld flags.
7033
7034 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7035 similarly to what X does.
7036
70372008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7038
7039 * nsfns.m (x-list-fonts): Remove.
7040 (syms_of_nsfns): Drop the x-list-fonts declaration.
7041 * nsterm.m: Get rid of remaining "//" comments.
7042
70432008-07-22 Chong Yidong <cyd@stupidchicken.com>
7044
7045 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7046
7047 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7048 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7049 (Fns_own_selection_internal, Fx_disown_selection_internal)
7050 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7051
7052 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7053 ... */' style of docstrings. Doc fixes.
7054
70552008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7056
7057 * terminfo.c (UP, BC, PC): Undo previous change.
7058
7059 * nsfns.m: Rename ns prefixed functions/variables to the
7060 corresponding x versions. Update references.
7061
70622008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7063
7064 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7065
70662008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7067
7068 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7069 Remove forwarding functions.
7070 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7071 non-static.
7072 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7073 non-static.
7074 (ns_frame_parm_handlers): Use the new names.
7075 (syms_of_nsfns): Move to the end of file.
7076
7077 * nsterm.m (syms_of_nsterm): Move to the end of file.
7078
7079 * dispnew.c (init_display): Remove code for X10.
7080
70812008-07-22 Jason Rumney <jasonr@gnu.org>
7082
7083 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7084 bare drive.
7085
70862008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7087
7088 * nsterm.m (syms_of_nsterm): Remove debugging println.
7089
70902008-07-22 David Reitter <david.reitter@gmail.com>
7091
7092 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7093 Carbon implementation of the same functionality: execute arbitrary
7094 AppleScript code.
7095
70962008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7097
7098 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7099 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7100 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7101 (Fx_display_mm_height, Fx_display_mm_width)
7102 (Fx_display_backing_store, Fx_display_visual_class)
7103 (Fx_display_save_under, Fx_open_connection)
7104 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7105 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7106 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7107 (Fx_display_pixel_width, Fx_display_pixel_height)
7108 (Fx_display_usable_bounds, Fx_display_planes)
7109 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7110 ... */' style of docstrings.
7111
71122008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7113
7114 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7115 on this platform.
7116 (mips):
7117 * m/iris4d.h (mips): Do not define.
7118 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7119
7120 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7121
7122 * image.c:
7123 * nsfns.m:
7124 * nsselect.m:
7125 * nsterm.h:
7126 * nsterm.m: Rename ns prefixed functions/variables to the
7127 corresponding x versions. Update references.
7128
7129 * m/ibms390x.h (NO_REMAP): Do not undefine.
7130
7131 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7132
71332008-07-21 Chong Yidong <cyd@stupidchicken.com>
7134
7135 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7136 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7137 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7138 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7139 (Fns_display_mm_height, Fns_display_mm_width)
7140 (Fns_display_backing_store, Fns_display_visual_class)
7141 (Fns_display_save_under, Fns_open_connection)
7142 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7143 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7144 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7145 (Fns_display_pixel_width, Fns_display_pixel_height)
7146 (Fns_display_usable_bounds, Fx_display_planes)
7147 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7148
71492008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7150
7151 * print.c (print_object): Check print_depth before searching for
7152 circularities.
7153
71542008-07-21 Michael Albinus <michael.albinus@gmx.de>
7155
7156 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7157 only sprintf.
7158
71592008-07-21 Kenichi Handa <handa@m17n.org>
7160
7161 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7162
71632008-07-20 Andreas Schwab <schwab@suse.de>
7164
7165 * syntax.c (find_start_pos, find_start_value)
7166 (find_start_value_byte, find_start_begv, find_defun_start)
7167 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7168
71692008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7170
7171 * s/sol2-3.h: Insert contents of s/sol2.h.
7172 (LD_SWITCH_SYSTEM): Remove redundant definition.
7173 * s/sol2.h: Remove, unused.
7174
71752008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7176
7177 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7178
71792008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7180
7181 * Makefile.in (ns_appdir): Fix typo in find command.
7182
71832008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7184
7185 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7186
7187 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7188 added not supported anymore.
7189
7190 * s/usg5-4-2.h (LIBS_SYSTEM):
7191 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7192
7193 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7194 * s/lynxos.h (GETPGRP_NO_ARG):
7195 * s/hpux10-20.h (NO_SIOCTL_H):
7196 * s/gnu.h (GETPGRP_NO_ARG):
7197 * s/gnu-linux.h (NO_SIOCTL_H):
7198 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7199 * s/cygwin.h (GETPGRP_NO_ARG):
7200 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7201 (C_DEBUG_SWITCH): Remove duplicate definition.
7202
7203 * m/ibms390.h: Remove boilerplate comments.
7204
7205 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7206
7207 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7208 (wait_reading_process_output): Remove code for SunOS, platform not
7209 supported anymore. Use SOLARIS2 instead of sun.
7210
72112008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7212
7213 * font.c (font_open_by_name): Under NS, default lface height to zero.
7214 (font_open_for_lface): Under NS, set size based on frame fontsize.
7215 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7216 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7217
72182008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7219
7220 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7221 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7222 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7223 YES/NO.
7224 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7225 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7226 * Makefile.in (clean): Clear out build destination dir.
7227
72282008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7229
7230 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7231 xterm, xselect.
7232 * lisp.h: Remove declaration of hash_remove.
7233 * nsgui.h: Remove redefinitions of hash_remove.
7234 * fns.c (hash_remove): Rename to hash_remove_from_table.
7235
72362008-07-19 Seiji Zenitani <zenitani@mac.com>
7237
7238 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7239 strdup() the family UTF8String before modifying it.
7240
72412008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7242
7243 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7244 NS_FACE_BACKGROUND with 0 instead of nil.
7245 * nsfont.m (nsfont_draw): Same.
7246
72472008-07-19 Chong Yidong <cyd@stupidchicken.com>
7248
7249 * nsfns.m (ns_set_background_color): Fix crash.
7250
72512008-07-18 Chong Yidong <cyd@stupidchicken.com>
7252
7253 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7254
72552008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7256
7257 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7258
72592008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7260
7261 * gtkutil.c: Include <config.h> instead of "config.h".
7262
7263 * lisp.h (Foverlay_buffer): Add EXFUN.
7264
7265 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7266 child process to complete child_setup. Undo 2005-09-21 change.
7267
7268 * s/darwin.h: Mention setsid after vfork.
7269
72702008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7271
7272 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7273 Depend on macgui.h.
7274
7275 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7276 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7277
7278 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7279 and f19.
7280 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7281
7282 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7283 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7284 Remove enumerators.
7285
7286 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7287 Check if FACE_FROM_ID returns NULL.
7288
72892008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7290
7291 * w32inevt.c (change_frame_size): Remove extern declaration.
7292 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7293 change_frame_size.
7294
72952008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7296
7297 * getloadavg.c: Revert last change (2008-07-15).
7298
72992008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7300
7301 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7302 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7303 from configure.
7304
73052008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7306
7307 * s/sol2.h:
7308 * s/sol2-4.h: Reorganize conditionals.
7309
7310 * ecrt0.c: Remove code depending on m68000, not used anymore.
7311
7312 * fns.c (hash_remove): Make static.
7313 * lisp.h (hash_remove): Don't prototype.
7314
7315 * m/ibmrs6000.h:
7316 * m/ibms390x.h:
7317 * m/macppc.h: Remove boilerplate comments.
7318
7319 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7320 Solaris, which does not need them.
7321
7322 * m/vax.h: Remove comments about unsupported systems.
7323
7324 * s/darwin.h: Reorganize ifdefs.
7325
73262008-07-17 Andreas Schwab <schwab@suse.de>
7327
7328 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7329
73302008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7331
7332 Use SDATA. Follow coding convention of placing operators at
7333 beginning of next line rather than end of previous line, and placing
7334 spaces around infix operators.
7335
7336 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7337 in case it was defined already.
7338 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7339 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7340 ns_default.
7341 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7342 Lisp_Objects.
7343 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7344 (ns_defined_color, ns_color_to_lisp): Declare.
7345 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7346 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7347 it's accepted even with USE_LISP_UNION_TYPE.
7348 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7349 (update_frame_tool_bar): Remove apparently obsolete tests for
7350 non-integerness of f->tool_bar_lines.
7351 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7352 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7353 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7354 (nsfont_open): Don't confuse NULL for Qnil.
7355 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7356 * menu.h (find_and_call_menu_selection):
7357 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7358 (find_and_return_menu_selection): Always return something.
7359 * frame.h: Include dispextern.h for Display_Info.
7360 (display_x_get_resource): Declare.
7361
73622008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7363
7364 * syntax.c: Remove stdio.h include accidentally introduced in
7365 Emacs.app commit.
7366 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7367 NS_IMPL_COCOA.
7368 * keyboard.c (handle_async_input, input_available_signal): Remove
7369 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7370
73712008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7372
7373 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7374 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7375 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7376 Use SDATA.
7377
7378 * keymap.c: Remove all NS-specific code.
7379 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7380 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7381 where_is_preferred_modifier, return a different value depending on how
7382 preferred is the binding.
7383 (where_is_internal): Adjust accordingly.
7384 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7385 Adjust to new preferred_sequence_p.
7386 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7387 * keyboard.c (parse_solitary_modifier): Not static any more.
7388 * keyboard.h (parse_solitary_modifier): Declare.
7389
73902008-07-16 Andreas Schwab <schwab@suse.de>
7391
7392 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7393 of easymenu.
7394
73952008-07-16 Chong Yidong <cyd@stupidchicken.com>
7396
7397 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7398 that we don't move off the line.
7399
74002008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7401
7402 * keyboard.c (Qsuper): Remove.
7403 (parse_menu_item): Don't call where_is_internal specially for NS.
7404
74052008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7406
7407 * s/gnu-linux.h: Remove boilerplate comments.
7408
7409 * m/alpha.h (__ELF__): Consolidate conditions.
7410
7411 * m/m68k.h (linux): Use GNU_LINUX instead.
7412 Remove boilerplate comments.
7413
7414 * m/intel386.h: Undo refactoring from previous change.
7415 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7416 too, remove dead code.
7417 (linux): Use GNU_LINUX instead.
7418
74192008-07-16 Jason Rumney <jasonr@gnu.org>
7420
7421 * w32gui.h: Repeat 26 June changes lost by last change.
7422
74232008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7424
7425 * systty.h: Remove code for Aix on 386, unsupported platform.
7426
7427 * s/ms-w32.h: Remove boilerplate comments.
7428 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7429
7430 * s/gnu-linux.h (TERM): Remove support.
7431 (HAVE_SYSVIPC): Remove, unused.
7432 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7433 for this system.
7434
7435 * process.c: Remove support for IRIS, unused.
7436 Remove support for TERM, not relevant anymore.
7437
7438 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7439 used with the definition.
7440
7441 * s/aix4-2.h (static): Do not undef.
7442
7443 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7444 only used on Aix.
7445 (HAVE_SYSVIPC): Remove, unused.
7446
7447 * m/hp800.h (CANNOT_DUMP): Do not undef.
7448
7449 * m/alpha.h: Fix comment.
7450
7451 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7452 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7453 used by this configuration.
7454 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7455 * unexec.c: Remove code depending on HPUX and
7456 USG_SHARED_LIBRARIES, not used with this file. Remove code
7457 depending on IRIS, unused. Remove if 0-ed code.
7458
7459 * s/template.h: Remove comments about static.
7460
7461 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7462 Remove if 0-ed code.
7463 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7464 were the same as the default.
7465 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7466 Remove boilerplate comments.
7467 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7468 (HAVE_SYSVIPC): Remove, unused.
7469 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7470
7471 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7472 Remove boilerplate comments.
7473 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7474 Remove boilerplate comments.
7475 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7476 Remove boilerplate comments.
7477 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7478
7479 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7480 USG systems which do not use DATA_SEG_BITS.
7481 Refactor code. Remove boilerplate comments.
7482
7483 * m/ibms390.h:
7484 * m/m68k.h:
7485 * s/bsd-common.h:
7486 * s/cygwin.h:
7487 * s/darwin.h:
7488 * s/freebsd.h:
7489 * s/gnu.h:
7490 * s/msdos.h: Remove boilerplate comments.
7491
7492 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7493 do not use this file.
aac0c6e3
MR
7494 (IRIS_4D): Remove, unused.
7495
7496 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7497 do not use this file.
aac0c6e3
MR
7498 (SIGN_EXTEND_CHAR):
7499 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7500 * unexmips.c: Remove file, unused.
7501
7502 * editfns.c (Fuser_full_name): Replace the only use of
7503 USER_FULL_NAME with its value.
7504 * config.in: Regenerate.
7505
75062008-07-16 David Reitter <david.reitter@gmail.com>
7507
7508 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7509 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7510
75112008-07-16 Glenn Morris <rgm@gnu.org>
7512
7513 * emacs.c (system-type): Doc fix.
7514
75152008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7516
7517 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7518 If the cache doesn't work, let's fix it, rather than work around it.
7519
75202008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7521
7522 * Makefile.in: Correct additions for nsfont.o in last commit.
7523 * nsfont.m: New file (forgot last commit).
7524
75252008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7526
7527 * callproc.c (set_initial_environment): Initialize
7528 Vprocess_environment under CANNOT_DUMP (fixes crash when
7529 batch-compiling for bootstrap).
7530
75312008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7532 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7533
7534 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7535 fix crash due to different init order.
7536
75372008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7538
7539 Changes and additions for NeXTstep windowing system (Cocoa and
7540 GNUstep) support.
7541
7542 * Makefile.in:
7543 * config.in: Support defines and build commands for NS port.
7544 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7545 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7546 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7547 windowing.
7548 (struct face): Add synth_ital field.
7549 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7550 (init_display): Initialize Vinitial_window_system to "ns" when so
7551 compiled.
7552 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7553 (display_arg): Use under NS.
7554 (main): Under NS, allocate autorelease pool and handle command line
7555 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7556 (standard_args): Add NS-specific args.
7557 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7558 * font.c (DEFAULT_ENCODING): New variable.
7559 (font_find_for_lface): Use it.
7560 (syms_of_font): Load syms_of_nsfont under NS.
7561 * font.h: Declare nsfont_driver when compiled under NS.
7562 * fontset.c: When compiling under NS, include nsterm.h.
7563 (fontset_from_font): Autoconstruct fontset under NS.
7564 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7565 symbol, document and use it.
7566 (do_switch_frame): When for_deletion under Cocoa, add
7567 Fraise_frame(Qnil).
7568 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7569 (x_get_arg): Allow "yes" and "no" as boolean values.
7570 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7571 Qright under Cocoa.
7572 (focus-follows-mouse): Default to 0 under NS.
7573 * frame.h (enum output_method): Add output_ns.
7574 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7575 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7576 (FRAME_WINDOW_P): NS-specific definition.
7577 * fringe.c (max_used_fringe_bitmap): Make public.
7578 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7579 (getloadavg): Use NeXT code under descendant OS's.
7580 * image.c (includes and header section, x_create_bitmap_from_data)
7581 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7582 (image_background_transparent, x_clear_image_1)
7583 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7584 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7585 (x_to_xcolors, x_from_xcolors, x_disable_image)
7586 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7587 other GUIs, including XPM support using code originally written for
7588 Carbon GUI.
7589 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7590 using NS API.
7591 (image_ascent): Use font metrics macros instead of direct struct field
7592 access.
7593 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7594 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7595 Also, handle NS as GTK for menu bar purposes.
7596 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7597 toolkit where they differ.
7598 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7599 use cachelist, still needed under NS.
7600 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7601 (struct widget_value): Define it here for menu.c.
7602 * keymap.c (includes): Include modifier internals.
7603 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7604 NS.
7605 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7606 support for preferring sequences using certain modifiers, specified by
7607 the FIRSTONLY argument.
7608 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7609 under NS GNUstep implementation.
7610 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7611 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7612 * menu.c: Include nsterm.h under NS.
7613 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7614 (free_menubar_widget_tree_value, update_submenu_strings)
7615 (find_and_call_menu_selection): Treat NS as X and NT.
7616 (find_and_return_menu_selection): New function, used for popup menus.
7617 * nsgui.h:
7618 * nsterm.h:
7619 * nsfns.m:
7620 * nsimage.m:
7621 * nsmenu.m:
7622 * nsselect.m:
7623 * nsterm.m: New files.
7624 * process.c (wait_reading_process_output): Under NS, call ns_select()
7625 instead of plain select().
7626 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7627 beginning of buffer.
7628 * sysselect.h (init_process): Rename when compiling under Cocoa to
7629 avoid name conflict.
7630 * termhooks.h (display_info): Add ns_display_info to union.
7631 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7632 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7633 COCOA environment.
7634 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7635 unexec() signature. (Note, this will dump, but the resulting file
7636 crashes; unexosx is used instead; keeping around for reference and
7637 possible aid in getting dump working under GNUstep.)
7638 * w32gui.h (button_type, widget_value): Remove definitions (now in
7639 keyboard.h).
7640 * window.c: Include nsterm.h when compiling under NS.
7641 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7642 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7643 other GUI windowing systems.
7644 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7645 GTK.
7646 (x_consider_frame_title): Under NS, set icon type and frame
7647 modified-state indicator; use ns_set_name_as_filename() when using
7648 formatted title.
7649 (update_window_cursor): Make public when compiling under NS.
7650 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7651 (hourglass_atimer, Vhourglass_delay
7652 * xfaces.c (header section, init_frame_faces, clear_font_table)
7653 (defined_color, unload_color, x_face_list_fonts)
7654 (prepare_face_for_display): Add NS support parallel to other GUIs.
7655 Emulate GCs like other non-X GUIs.
7656 (split_font_name): Don't lowercase font name under NS.
7657 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7658 under NS.
7659 * s/darwin.h: Add support for compilation under NS.
7660
76612008-07-15 Jason Rumney <jasonr@gnu.org>
7662
7663 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7664 (w32_show_hourglass): Rename from show_hourglass.
7665 (w32_hide_hourglass): Rename from hide_hourglass.
7666 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7667 (Vhourglass_delay): Declare extern.
7668 (hourglass_started): Remove.
7669
7670 * xdisp.c (Vhourglass_delay): Remove static.
7671 (hourglass_started, start_hourglass, cancel_hourglass):
7672 Don't include these versions on WINDOWSNT.
7673
76742008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7675
7676 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7677 variables (formerly in xfns.c).
7678 (show_hourglass, hide_hourglass): New prototypes (same).
7679 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7680 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7681 in xfns.c).
7682 (syms_of_xdisp): Declare/initialize display-hourglass,
7683 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7684 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7685 formerly in xfns.c.
7686 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7687 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7688 (start_hourglass, cancel_hourglass): Remove.
7689 (show_hourglass, hide_hourglass): Remove prototypes and static
7690 modifiers.
7691 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7692 hourglass_atimer, hourglass_shown_p declaration/initialization.
7693 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7694 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7695 (start_hourglass, cancel_hourglass): Remove.
7696 (show_hourglass, hide_hourglass): Remove prototypes and static
7697 modifiers.
7698 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7699 hourglass_atimer, hourglass_shown_p declaration/initialization.
7700 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7701 (DEFAULT_HOURGLASS_DELAY): Remove.
7702 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7703 hourglass_shown_p declaration/initialization.
7704
77052008-07-14 Jason Rumney <jasonr@gnu.org>
7706
7707 * w32fns.c (w32_get_arg): Remove wrapper function.
7708 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7709 directly.
7710 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7711
77122008-07-14 Kenichi Handa <handa@m17n.org>
7713
7714 * xfont.c (xfont_open): Add workaround for X's bug.
7715
77162008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7717
7718 * fontset.c: Include <stdio.h> unconditionally.
7719
77202008-07-13 Michael Albinus <michael.albinus@gmx.de>
7721
7722 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7723 for filtering.
7724
77252008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7726
7727 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7728
7729 * m/macppc.h:
7730 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7731
7732 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7733 (SPECIAL_EMACS_INT):
7734 * m/ia64.h (SPECIAL_EMACS_INT):
7735 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7736 * s/gnu.h (NLIST_STRUCT):
7737 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7738 * s/gnu-linux.h (LINUX):
7739 * s/msdos.h (HAVE_FACES):
7740 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7741
7742 * systty.h:
7743 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7744 anymore.
7745
77462008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7747
7748 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7749 always defined as int.
7750
7751 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7752 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7753 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7754 * s/freebsd.h (HAVE_WAIT_HEADER):
7755 * s/bsd-common.h (HAVE_UNION_WAIT):
7756 * s/aix4-2.h (HAVE_WAIT_HEADER):
7757 * m/mips.h (HAVE_UNION_WAIT):
7758 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7759 (COFF, static): Do not define, they are undefined later in the file.
7760
7761 * process.c (update_status): Don't use a union.
7762 (status_convert):
7763 (sigchld_handler): Use int instead of WAITTYPE.
7764
77652008-07-12 Chong Yidong <cyd@stupidchicken.com>
7766
7767 * indent.c (Fvertical_motion): Restore hscroll before moving to
7768 goal column.
7769
77702008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7771
7772 * lisp.h: Remove left over code.
7773
77742008-07-11 Andreas Schwab <schwab@suse.de>
7775
7776 * lisp.h: Fix logic in last change.
7777
7778 * menu.h: New file.
7779 * menu.c: Include it.
7780 * xmenu.c: Likewise.
7781 * Makefile.in: Update dependencies.
7782
77832008-07-11 Kenichi Handa <handa@m17n.org>
7784
7785 * fontset.c (fontset_from_font): Cancel the previous change.
7786
77872008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7788
7789 * lisp.h:
7790 * w32heap.c:
7791 * emacs.c:
7792 * alloc.c: Replace all references of NO_UNION_TYPE with
7793 USE_LISP_UNION_TYPE.
7794
7795 * m/xtensa.h (NO_UNION_TYPE):
7796 * m/vax.h (NO_UNION_TYPE):
7797 * m/template.h (NO_UNION_TYPE):
7798 * m/sparc.h (NO_UNION_TYPE):
7799 * m/mips.h (NO_UNION_TYPE):
7800 * m/macppc.h (NO_UNION_TYPE):
7801 * m/m68k.h (NO_UNION_TYPE):
7802 * m/iris4d.h (NO_UNION_TYPE):
7803 * m/intel386.h (NO_UNION_TYPE):
7804 * m/ibms390x.h (NO_UNION_TYPE):
7805 * m/ibms390.h (NO_UNION_TYPE):
7806 * m/ibmrs6000.h (NO_UNION_TYPE):
7807 * m/ia64.h (NO_UNION_TYPE):
7808 * m/hp800.h (NO_UNION_TYPE):
7809 * m/arm.h (NO_UNION_TYPE):
7810 * m/amdx86-64.h (NO_UNION_TYPE):
7811 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7812 defining it the same.
7813
78142008-07-10 Chong Yidong <cyd@stupidchicken.com>
7815
7816 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7817
78182008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7819
7820 * fileio.c:
7821 * sysdep.c
7822 * systty.h:
7823 * m/ibmrs6000.h:
7824 * m/iris4d.h:
7825 * s/aix4-2.h:
7826 * s/freebsd.h:
7827 * s/gnu-linux.h:
7828 * s/hpux10-20.h:
7829 * s/hpux11.h:
7830 * s/netbsd.h:
7831 * s/sol2-3.h:
7832 * s/sol2-4.h:
7833 * s/sol2.h:
7834 * s/usg5-4.h:
7835 * s/vms.h: Remove references to unused variables.
7836
78372008-07-10 Andreas Schwab <schwab@suse.de>
7838
7839 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7840 pattern before matching the generic family.
7841
78422008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7843
7844 * unexec.c:
7845 * s/vms.h:
7846 * s/usg5-4-2.h:
7847 * s/sol2-5.h:
7848 * s/freebsd.h:
7849 * s/darwin.h: Remove dead code.
7850
7851 * m/template.h:
7852 * m/sparc.h:
7853 * m/mips.h:
7854 * m/m68k.h:
7855 * m/iris4d.h:
7856 * m/intel386.h:
7857 * m/ibms390x.h:
7858 * m/ibms390.h:
7859 * m/ia64.h:
7860 * m/hp800.h:
7861 * m/arm.h:
7862 * m/amdx86-64.h: Remove dead code and references to unused
7863 and compiler defined symbols.
7864
7865 * unexmips.c:
7866 * unexelf.c: Remove references to desupported systems.
7867
7868 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7869
7870 * m/powermac.h: Remove boilerplate comments.
7871 (NO_REMAP): Remove unused definition.
7872
7873 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7874 define them.
7875
78762008-07-10 Kenichi Handa <handa@m17n.org>
7877
7878 * xfont.c (xfont_open): Log the reason of failure.
7879
78802008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7881
7882 * fontset.c (fontset_get_font_group):
7883 * font.c (font_check_otf): Specify argument types.
7884
78852008-07-09 Kenichi Handa <handa@m17n.org>
7886
7887 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7888 non-ASCII char is found.
7889
7890 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7891 (reorder_font_vector): Change the arg preferred_family to font.
7892 Prefer the spec matching with font.
7893 (fontset_get_font_group): New function.
7894 (fontset_find_font): Change the format of an element of a realized
7895 fontset. Use fontset_get_font_group.
7896 (fontset_font): Try the current fontset, the default fontset, the
7897 fallbacks of the current fontset, and the fallbacks of the default
7898 fontset in this order.
7899 (face_for_char): Delete the shortcut to use the current font.
7900 (fontset_from_font): Don't set fonts for Latin in the fontset.
7901
7902 * font.h (font_make_object, font_match_p): Adjust prototypes.
7903
7904 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7905
7906 * font.c (font_make_object): New arg entity and pixelsize.
7907 (font_check_otf_features, font_check_otf): New functions.
7908 (font_match_p): Check :lang, :script, and :otf properties.
7909
7910 * xfont.c (xfont_open): Adjust it for the change of
7911 font_make_object.
7912 (xfont_text_extents): Fix initial setting of metrics.
7913
7914 * ftfont.c (struct ftfont_info): New member index, delete member
7915 fc_charset_idx. Make the member order compatible with struct
7916 xftfont_info.
7917 (fc_charset_table): Change charset names to registry names.
7918 (ftfont_pattern_entity): Delete the args registry and
7919 fc_charset_idx. Change the value of :font-entity property
7920 to (FONTNAME . INDEX). Always set :registry property to
7921 `iso10646-1'.
7922 (struct ftfont_cache_data): New struct.
7923 (ftfont_lookup_cache): New arg for_face.
7924 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7925 (ftfont_driver): Set the member otf_capability.
7926 (ftfont_get_charset): Adjust it for the change of
7927 fc_charset_table.
7928 (OTF_TAG_SYM): New macro.
7929 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7930 for the change of fc_charset_table.
7931 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7932 ftfont_pattern_entity. Add FC_INDEX to objset.
7933 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7934 and ftfont_pattern_entity.
7935 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7936 font_make_object, struct ftfont_info.
7937 (ftfont_has_char): Use ftfont_get_fc_charset.
7938 (ftfont_otf_features, ftfont_otf_capability): New functions.
7939 (ftfont_shape): Use ftfont_get_otf.
7940 (ftfont_text_extents): Fix initial setting of metrics.
7941
7942 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7943 member order compatible with struct ftfont_info.
7944 (xftfont_open): Add FC_CHARSET to the pattern. Set
7945 xftfont_info->ft_size. Don't unlock the face. Check BDF
7946 properties if appropriate.
7947 (xftfont_close): Unlock the face.
7948 (xftfont_anchor_point, xftfont_shape): Deleted.
7949 (syms_of_xftfont): Don't set members anchor_point and shape of
7950 xftfont_driver.
7951
7952 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7953 font_make_object.
7954
7955 * w32font.c (w32font_open): Adjust it for the change of
7956 font_make_object.
7957 (w32font_open_internal): Don't set properties of font_object here.
7958
79592008-07-08 Chong Yidong <cyd@stupidchicken.com>
7960
7961 * macfns.c (x_create_tip_frame):
7962 * w32fns.c (x_create_tip_frame):
7963 * xfns.c (x_create_tip_frame): Pass parameter argument to
7964 face-set-after-frame-default.
7965
7966 * xfaces.c (Finternal_merge_in_global_face): Save merged
7967 attributes for the default face back into the face vector.
7968
79692008-07-08 Andreas Schwab <schwab@suse.de>
7970
7971 * fontset.h: Declare fontset_from_font. Don't declare
7972 new_fontset_from_font and fontset_from_font_name.
7973 * xterm.c: Include "fontset.h".
7974 * Makefile.in (xterm.o): Update dependencies.
7975
79762008-07-08 Glenn Morris <rgm@gnu.org>
7977
7978 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7979 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7980
79812008-07-07 Chong Yidong <cyd@stupidchicken.com>
7982
7983 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7984 (x_set_frame_parameters): Don't bind it.
7985
79862008-07-07 Juanma Barranquero <lekktu@gmail.com>
7987
7988 * w32fns.c (map_w32_filename): Declare extern.
7989
79902008-07-07 Jason Rumney <jasonr@gnu.org>
7991
7992 * w32term.c (WS_EX_LAYERED): Define if not already.
7993
79942008-07-06 Chong Yidong <cyd@stupidchicken.com>
7995
7996 * xfaces.c (set_font_frame_param): Don't try to set the font
7997 parameter if it is still unspecified in the lface.
7998
79992008-07-05 Chong Yidong <cyd@stupidchicken.com>
8000
8001 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8002 face if it didn't already exist.
8003
8004 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8005
80062008-07-05 Andreas Schwab <schwab@suse.de>
8007
8008 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8009
80102008-07-05 Chong Yidong <cyd@stupidchicken.com>
8011
8012 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8013 word-wrapping.
8014 (IT_DISPLAYING_WHITESPACE): New macro.
8015 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8016 when word-wrapping. Simplify word-wrapping logic. Use correct
8017 pixel positions when saving copies of the iterator.
8018 (display_line): Use proper wrap point if the last character on a
8019 line was preceded by whitespace.
8020
80212008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8022
8023 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8024
80252008-07-04 Kenichi Handa <handa@m17n.org>
8026
8027 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8028
8029 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8030
80312008-07-02 Jason Rumney <jasonr@gnu.org>
8032
8033 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8034 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8035
8036 * xdisp.c (next_element_from_display_vector): Move assignment out
8037 of if statement.
8038
80392008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8040
8041 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8042
8043 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8044 (syms_of_fileio): Initialize and export them.
8045 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8046
8047 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8048 (Fsystem_move_file_to_trash): New function.
8049 (syms_of_w32fns): Export it to lisp.
8050
80512008-07-01 Jason Rumney <jasonr@gnu.org>
8052
8053 * w32font.c (w32font_text_extents): Don't count overhang as part
8054 of width.
8055
80562008-06-30 Miles Bader <miles@gnu.org>
8057
8058 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8059 Add `avoid_cursor_p' field.
8060
8061 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8062 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8063 (append_glyph, append_composite_glyph, produce_image_glyph)
8064 (append_stretch_glyph): Initialize avoid_cursor_p.
8065 (get_it_property): Rename from `get_line_height_property'.
8066 (x_produce_glyphs): Use get_it_property.
8067 (handle_line_prefix, push_display_prop): New functions.
8068 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8069 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8070 New variables.
8071 (syms_of_xdisp): Initialize them.
8072
80732008-06-30 Kenichi Handa <handa@m17n.org>
8074
8075 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8076 XftDefaultSubstitute (they are called in XftFontMatch).
8077 (xftfont_open): Fix args to ftfont_font_format.
8078
8079 * ftfont.c (fc_charset_table): New member lang.
8080 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8081 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8082 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8083 (ftfont_open): Fix args to ftfont_font_format.
8084 (ftfont_font_format): New arg filename.
8085
80862008-06-30 Chong Yidong <cyd@stupidchicken.com>
8087
8088 * xfaces.c (Finternal_merge_in_global_face): If default face was
8089 modified, realize it again. Update the font face attribute.
8090
80912008-06-29 Jason Rumney <jasonr@gnu.org>
8092
8093 * w32term.c (x_set_frame_alpha): Fix logic.
8094
80952008-06-29 Kenichi Handa <handa@m17n.org>
8096
8097 * fontset.c (Finternal_char_font): Return font-object instead of
8098 font-name.
8099
8100 * composite.c (get_composition_id): Fix the width calculation for TAB.
8101
81022008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8103
8104 * indent.c (Fvertical_motion): Properly handle float column arg.
8105
81062008-06-28 Jason Rumney <jasonr@gnu.org>
8107
8108 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8109 (pfnSetLayeredWindowAttributes): New function pointer.
8110 (w32_initialize): Initialize it when supported.
8111 (x_set_frame_alpha): New function.
8112
8113 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8114 (w32_frame_parm_handlers): Set alpha handler.
8115
8116 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8117
81182008-06-27 Jason Rumney <jasonr@gnu.org>
8119
8120 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8121 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8122 (w32_to_x_charset, x_to_w32_charset)
8123 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8124 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8125 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8126 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8127 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8128 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8129 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8130 (Qw32_charset_unicode): Remove.
8131 (syms_of_w32fns): Update for above changes.
8132
8133 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8134 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8135 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8136 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8137 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8138 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8139 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8140 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8141 (syms_of_w32font): Update for above changes.
8142
81432008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8144
8145 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8146 removed #if.
8147 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8148
81492008-06-26 Juanma Barranquero <lekktu@gmail.com>
8150 Eli Zaretskii <eliz@gnu.org>
8151
8152 * makefile.w32-in (LOCAL_FLAGS):
8153 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8154
8155 * sysdep.c (_spawnlp, _getpid):
8156 Declare with explicit _cdecl instead of _CRTAPI1.
8157
8158 * editfns.c (Fget_internal_run_time):
8159 Check for WINDOWSNT with #ifdef, not #if.
8160
81612008-06-26 Jason Rumney <jasonr@gnu.org>
8162
8163 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8164
8165 * w32term.c (x_draw_glyph_string_foreground)
8166 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8167 Use FONT_HANDLE macro.
8168 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8169
8170 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8171 (uniscribe_encode_char): Use FONT_HANDLE macro.
8172
8173 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8174 (w32font_text_extents): Use precast w32_font.
8175 (w32font_close): Free cached metrics.
8176 (w32font_open_internal): Allocate space for name on stack.
8177
81782008-06-26 Chong Yidong <cyd@stupidchicken.com>
8179
8180 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8181
81822008-06-26 Jason Rumney <jasonr@gnu.org>
8183
8184 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8185 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8186
81872008-06-26 Juanma Barranquero <lekktu@gmail.com>
8188
8189 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8190
81912008-06-26 Jason Rumney <jasonr@gnu.org>
8192
8193 * w32bdf.c, w32bdf.h: Remove obsolete files.
8194
8195 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8196
8197 * w32gui.h: Don't include w32bdf.h.
8198 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8199 Remove obsolete font support.
8200
8201 * w32font.h (struct w32font_info): Remove compat_w32_font.
8202 Add hfont member.
8203 (FONT_COMPAT): Remove obsolete macro.
8204
8205 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8206 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8207 (w32font_open_internal): Remove compat code. Set new hfont member.
8208 (Fx_select_font): Use new hfont member.
8209
8210 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8211 (uniscribe_encode_char): Use new hfont member.
8212
8213 * w32term.c (x_draw_glyph_string_foreground)
8214 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8215 (x_draw_glyph_string): Use metrics in w32font_info.
8216
82172008-06-26 Kenichi Handa <handa@m17n.org>
8218
8219 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8220
82212008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8222
8223 * unexnext.c:
8224 * m/ews4800.h:
8225 * m/hp9000s300.h:
8226 * m/ibm370aix.h:
8227 * m/mips-siemens.h:
8228 * m/ncr386.h:
8229 * m/next.h:
8230 * m/pmax.h:
8231 * m/powerpcle.h:
8232 * m/tandem-s2.h:
8233 * s/386bsd.h:
8234 * s/bsd386.h:
8235 * s/bsd4-1.h:
8236 * s/bsd4-2.h:
8237 * s/bsdos2-1.h:
8238 * s/bsdos2.h:
8239 * s/bsdos3.h:
8240 * s/bsdos4.h:
8241 * s/nextstep.h:
8242 * s/ultrix4-3.h:
8243 * s/usg5-0.h:
8244 * s/usg5-2-2.h:
8245 * s/usg5-2.h:
8246 * s/usg5-4-3.h:
8247 * s/ux4800.h:
8248 * s/uxpds.h:
8249 * s/uxpv.h: Remove support for obsolete systems.
8250 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8251 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8252 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8253 Remove, insert contents in s/aix4-2.h.
8254 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8255 * s/bsd4-3.h: Rename to ...
8256 * s/bsd-common.h: ... this.
8257 * data.c:
8258 * doc.c:
8259 * ecrt0.c:
8260 * emacs.c:
8261 * fileio.c:
8262 * floatfns.c:
8263 * keyboard.c:
8264 * mem-limits.h:
8265 * print.c:
8266 * process.c:
8267 * sysdep.c:
8268 * syssignal.h:
8269 * systty.h:
8270 * syswait.h:
8271 * term.c:
8272 * unexec.c:
8273 * unexelf.c:
8274 * unexhp9k800.c:
8275 * m/hp800.h:
8276 * m/ibmrs6000.h:
8277 * m/mips.h:
8278 * m/vax.h:
8279 * s/darwin.h:
8280 * s/freebsd.h:
8281 * s/gnu.h:
8282 * s/ms-w32.h:
8283 * s/msdos.h:
8284 * s/netbsd.h:
8285 * s/template.h: Remove references to obsolete variables.
8286
8287 * Makefile.in: Add dependencies for all unexec files.
8288 (admindir): Remove unused variable.
8289 (UNEXEC_SRC): Remove references.
8290
82912008-06-25 Chong Yidong <cyd@stupidchicken.com>
8292
8293 * xfns.c (x_default_font_parameter): If Xft is available, first
8294 try Monospace-12 for the default font.
8295
82962008-06-25 Jason Rumney <jasonr@gnu.org>
8297
8298 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8299
83002008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8301
8302 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8303
8304 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8305
83062008-06-25 Juanma Barranquero <lekktu@gmail.com>
8307
8308 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8309 <scroll-conservatively>: Fix typo in docstring.
8310
8311 * xselect.c (Fx_send_client_event): Doc fix.
8312
83132008-06-25 Kenichi Handa <handa@m17n.org>
8314
8315 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8316
8317 * font.c (font_parse_fcname): Remove unused variables.
8318 (font_sort_entites): Delete the arg SPEC. Caller changed.
8319 Fix for the case of ! best_only.
8320 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8321
8322 * lisp.h (Fstring_to_unibyte): EXFUN it.
8323
8324 * character.h (str_to_unibyte): Extern it.
8325
8326 * character.c (str_to_unibyte): New function.
8327
8328 * fns.c (Fstring_to_unibyte): New function.
8329 (syms_of_fns): Defsubr it.
8330
83312008-06-24 Kenichi Handa <handa@m17n.org>
8332
8333 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8334 DPI too.
8335 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8336
83372008-06-24 Andreas Schwab <schwab@suse.de>
8338
8339 * Makefile.in (${lispsource}loaddefs.el): Rename from
8340 ../lisp/loaddefs.el.
8341 (bootstrap-clean): Do what distclean does but don't remove
8342 Makefile.
8343 (distclean): Depend on bootstrap-clean and remove Makefile.
8344
83452008-06-24 Chong Yidong <cyd@stupidchicken.com>
8346
8347 * buffer.h (struct buffer): New member word_wrap.
8348
8349 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8350 word-wrap.
8351 (init_buffer_once): Initialize them.
8352
8353 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8354 line_wrap enum possessing three possible values.
8355
8356 * termopts.h: Replace truncate_partial_width_windows with
8357 Vtruncate_partial_width_windows.
8358
8359 * dispnew.c (direct_output_for_insert): Avoid direct output when
8360 inserting a space with word wrap on.
8361
8362 * indent.c (compute_motion): Obey integer values of
8363 truncate-partial-width-windows.
8364
8365 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8366 replacing truncate_partial_width_windows.
8367 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8368 truncate only if the window width is below that integer.
8369 (start_display, resize_mini_window, produce_stretch_glyph)
8370 (display_string, move_it_in_display_line_to): Use line_wrap.
8371 (back_to_previous_visible_line_start, reseat_1): Reset
8372 string_from_display_prop_p.
8373 (display_line): Extend default face to end of line when wrapping.
8374
83752008-06-24 Kim F. Storm <storm@cua.dk>
8376
8377 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8378 to wrap continued lines at word boundaries.
8379
83802008-06-24 Jason Rumney <jasonr@gnu.org>
8381
8382 * font.c (Ffont_face_attributes): Multiply pixel size before point
8383 conversion to avoid multiplying rounding error.
8384
83852008-06-23 Jason Rumney <jasonr@gnu.org>
8386
8387 * w32term.c (x_draw_glyph_string_background)
8388 (x_draw_glyph_string): Remove old bdf font code.
8389
8390 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8391
83922008-06-22 Kenichi Handa <handa@m17n.org>
8393
8394 * font.c (font_find_for_lface): Try the adstyle specified in
8395 the property of LFACE_FONT of LFACE (if any).
8396
83972008-06-21 Seiji Zenitani <zenitani@mac.com>
8398 Ryo Yoshitake <ryo@shiftmode.net>
8399
8400 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8401
84022008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8403
8404 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8405 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8406 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8407 (witness-emacs): Remove.
8408 (lisp, shortlisp): Move loaddefs.el earlier.
8409 (mostlyclean): Forget about witness-emacs.
8410
84112008-06-22 Glenn Morris <rgm@gnu.org>
8412
8413 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8414 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8415
84162008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8417
8418 * Makefile.in (PRECOMP): Remove.
8419 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8420 (witness-emacs): Run `compile-first'.
8421 (.el.elc): Use the new compile-onefile target.
8422
84232008-06-21 Kenichi Handa <handa@m17n.org>
8424
8425 * xftfont.c (xftfont_open): Handle QCembolden only when
8426 FC_EMBOLDEN is defined.
8427
84282008-06-21 Andreas Schwab <schwab@suse.de>
8429
8430 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8431 (.el.elc): Likewise.
8432
84332008-06-21 Miles Bader <miles@gnu.org>
8434
8435 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8436 build dir, not the lisp source dir.
8437
84382008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8439
8440 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8441 (bootstrapclean): Remove.
8442 (.el.elc): New rule.
8443 (PRECOMP): New var.
8444 (../lisp/subdirs.el): Remove.
8445 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8446 (witness-emacs): New target.
8447 (mostlyclean): Remove witness-emacs as well.
8448 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8449 Add witness-emacs dependency.
8450
84512008-06-20 Chong Yidong <cyd@stupidchicken.com>
8452
8453 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8454 defined by the font.
8455
84562008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8457
8458 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8459 (bootstrap-clean): New target that keeps TAGS around.
8460 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8461 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8462
84632008-06-20 Jason Rumney <jasonr@gnu.org>
8464
8465 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8466 Remove obsolete font code.
8467
8468 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8469 to determine language support.
8470
84712008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8472
8473 * sysdep.c (cfsetspeed): New fun extracted from the code.
8474 (cfmakeraw): Move before first use.
8475
84762008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8477
8478 * sysdep.c (cfmakeraw): Provide fallback implementation.
8479 (serial_configure): Provide fallback implementation of cfsetspeed.
8480
84812008-06-20 Kenichi Handa <handa@m17n.org>
8482
8483 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8484 the pattern.
8485
8486 * fontset.c (fontset_from_font): Copy font_spec before changing
8487 the elements.
8488
8489 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8490
84912008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8492
8493 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8494 for explicit `font' parameters.
8495
8496 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8497
84982008-06-19 Kenichi Handa <handa@m17n.org>
8499
8500 * frame.c: Include <ctype.h>.
8501 (x_set_font_backend): Allow spacing characters in the X resource
8502 for FontBackend.
8503
85042008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8505
8506 * w32fns.c, xfns.c (Qfont_param): New var.
8507 (syms_of_w32fns): Initialize it.
8508 (x_default_font_parameter): Record explicit `font' into
8509 `font-parameter'.
8510
85112008-06-18 Kenichi Handa <handa@m17n.org>
8512
8513 * font.c (font_parse_xlfd): Fix previous change.
8514 (font_parse_fcname): Don't use :fc-unknown-spec.
8515 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8516 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8517 (font_add_log): Prepend the driver name to the resulting fonts.
8518
8519 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8520 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8521 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8522
8523 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8524 (QCembolden): New variables.
8525 (syms_of_xftfont): DEFSYM them.
8526 (xftfont_open): Call XftFontMatch. Don't trust the result of
8527 XftTextExtents8 if the pixel_size is less than 5.
8528
85292008-06-18 Andreas Schwab <schwab@suse.de>
8530
8531 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8532 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8533
85342008-06-18 Jason Rumney <jasonr@gnu.org>
8535
8536 * w32font.c (w32font_list, w32font_match): Add logging.
8537
8538 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8539
85402008-06-17 Chong Yidong <cyd@stupidchicken.com>
8541
8542 * font.c (font_parse_fcname): Store divider characters for
8543 unknown-spec list. For known key symbols, intern using correct
8544 symbol name.
8545
85462008-06-17 Kenichi Handa <handa@m17n.org>
8547
8548 * xfaces.c (realize_default_face): If the frame is not on window
8549 system, set the fontset of face to nil.
8550
85512008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8552
8553 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8554
85552008-06-16 Juanma Barranquero <lekktu@gmail.com>
8556
8557 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8558 (build_font_name_from_vector): Delete externs.
8559
8560 * xfaces.c (struct font_name): Don't declare.
8561
85622008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8563
8564 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8565
85662008-06-16 Chong Yidong <cyd@stupidchicken.com>
8567
8568 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8569
85702008-06-16 Juanma Barranquero <lekktu@gmail.com>
8571
8572 * font.c (Ffont_spec): Fix usage in docstring.
8573 (Ffont_face_attributes): Doc fix.
8574
85752008-06-16 Andreas Schwab <schwab@suse.de>
8576
8577 * font.c (Ffont_face_attributes): Fix definition.
8578
85792008-06-16 Jason Rumney <jasonr@gnu.org>
8580
8581 * font.h (font_style_symbolic_from_value): Remove.
8582
8583 * font.c (font_style_symbolic_from_value): Remove.
8584 (font_style_symbolic): Revert to pre 2008-06-13 version.
8585
8586 * w32font.c (w32_to_fc_weight): New function.
8587 (w32font_full_name, logfont_to_fcname): Use it.
8588
85892008-06-16 Kenichi Handa <handa@m17n.org>
8590
8591 * font.c (font_check_object): Delete it.
8592 (font_clear_cache): Check if a font-object is alive.
8593 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8594 font-object to nil.
8595 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8596 (font_at): Don't call font_check_object.
8597 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8598
85992008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8600
8601 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8602
86032008-06-16 Chong Yidong <cyd@stupidchicken.com>
8604
8605 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8606
86072008-06-15 Chong Yidong <cyd@stupidchicken.com>
8608
8609 * font.c (font_parse_fcname): Only one decimal point.
8610 (font_unparse_fcname): Handle data in family and foundry indices
8611 as symbols, not strings.
8612 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8613
8614 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8615
8616 * font.h (font_unparse_gtkname): Add prototype.
8617
86182008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8619
8620 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8621
86222008-06-15 Andreas Schwab <schwab@suse.de>
8623
8624 * font.c (font_update_drivers): Fix crash when no drivers match.
8625
86262008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8627
8628 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8629 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8630
86312008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8632
8633 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8634
86352008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8636
8637 * process.c (Fserial_process_configure, Fprocess_send_eof):
8638 Use EQ to compare Lisp_Objects.
8639
86402008-06-13 Jason Rumney <jasonr@gnu.org>
8641
8642 * w32fns.c (Fw32_select_font): Remove old font API function.
8643
8644 * w32font.c (logfont_to_fcname): New function.
8645 (Fx_select_font): New font dialog function compatible with
8646 GTK/fontconfig version.
8647
8648 * font.c (font_style_symbolic_from_value): New function.
8649 (font_style_symbolic): Use it.
8650
8651 * font.h (font_style_symbolic_from_value): Declare new function.
8652
86532008-06-13 Juanma Barranquero <lekktu@gmail.com>
8654
8655 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8656 <font-width-table>: Fix typos in docstrings.
8657
86582008-06-13 Daniel Engeler <engeler@gmail.com>
8659
8660 These changes add serial port access.
8661 * process.c: Add HAVE_SERIAL.
8662 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8663 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8664 (list_processes_1, select_wrapper, Fstop_process)
8665 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8666 (status_notify): Modify to handle serial processes.
8667 [HAVE_SERIAL] (Fserial_process_configure)
8668 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8669 New functions.
8670 * process.h (struct Lisp_Process): Add `type'.
8671 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8672 New functions.
8673 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8674 serial ports.
b71ac3dd 8675 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8676 * w32.h: Add FILE_SERIAL.
8677 (struct _child_process): Add ovl_read, ovl_write.
8678
86792008-06-13 Kenichi Handa <handa@m17n.org>
8680
8681 * dispextern.h (enum lface_attribute_index): New member
8682 LFACE_FOUNDRY_INDEX.
8683
8684 * font.c (font_score): Delete arg alternate_families. Check only
8685 weight, slant, width, and size. Ignore the difference of alias
8686 style symbols.
8687 (font_sort_entites): Adjust for the above change. Reflect the
8688 order of font-driver to scores.
8689 (font_list_entities): Don't check alternate_familes here.
8690 (font_clear_prop): Handle foundry.
8691 (font_update_lface): Don't parse "foundry-family" form here.
8692 Handle FONT_FOUNDRY_INDEX.
8693 (font_find_for_lface): Likewise. Handle alternate families here.
8694 If registry is nil, try iso8859-1 and ascii-0.
8695 (font_open_for_lface): Pay attention to size in ENTITY.
8696 (font_open_by_name): Simplify by calling font_load_for_lface.
8697 (free_font_driver_list): Delete it.
8698 (font_update_drivers): Preserve the order of backends.
8699 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8700 of font_score and font_sort_entites.
8701 (font_update_sort_order): Likewise.
8702
8703 * xfaces.c (LFACE_FOUNDRY): New macro.
8704 (check_lface_attrs): Check foundry.
8705 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8706 (merge_face_vectors): Check foundry.
8707 (merge_face_ref): Likewise.
8708 (Finternal_set_lisp_face_attribute): Likewise.
8709 (x_update_menu_appearance): Likewise.
8710 (Finternal_get_lisp_face_attribute): Likewise.
8711 (lface_hash): Likewise.
8712 (lface_same_font_attributes_p): Likewise.
8713 (x_supports_face_attributes_p): Likewise.
8714 (tty_supports_face_attributes_p): Likewise.
8715 (Finternal_set_alternative_font_family_alist): Intern strings.
8716 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8717 (realize_default_face): Set LFACE_FOUNDRY (lface).
8718
8719 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8720 font-driver at first.
8721
8722 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8723
87242008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8725
8726 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8727
87282008-06-12 Jim Meyering <meyering@redhat.com>
8729
8730 Make unexec_free handle NULL the same way free does.
8731 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8732
87332008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8734
8735 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8736 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8737 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8738 (WEAK_ALIAS): Simplify.
8739 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8740 when searching a unibyte buffer.
8741
87422008-06-12 Chong Yidong <cyd@stupidchicken.com>
8743
8744 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8745
87462008-06-12 Juanma Barranquero <lekktu@gmail.com>
8747
8748 * w32font.c: Include ctype.h.
8749
87502008-06-11 Jason Rumney <jasonr@gnu.org>
8751
8752 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8753 misreported as space.
8754 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8755 as aliases for registry iso10646-1.
8756
87572008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8758
8759 * buffer.c (clone_per_buffer_values): Skip `name'.
8760
87612008-06-11 Chong Yidong <cyd@stupidchicken.com>
8762
8763 * font.c (font_parse_fcname): Fix last change; accept decimal
8764 points in font size.
8765
87662008-06-10 Jason Rumney <jasonr@gnu.org>
8767
8768 * w32uniscribe.c (add_opentype_font_name_to_list):
8769 Skip non unicode fonts.
8770
87712008-06-10 Chong Yidong <cyd@stupidchicken.com>
8772
8773 * xfns.c (Fx_font_dialog): New function.
8774
8775 * gtkutil.c (xg_dialog_response_cb): Rename from
8776 xg_file_response_callback.
8777 (pop_down_dialog): Rename from pop_down_file_dialog.
8778 (xg_get_file_name): Callers changed.
8779 (xg_get_font_name): New function.
8780
8781 * gtkutil.h (xg_get_font_name): Insert prototype.
8782
87832008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8784
8785 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8786 x_underline_minimum_display_offset.
8787 (syms_of_xdisp): Declare it here rather than in xterm.c.
8788 * dispextern.h (underline_minimum_offset): Declare it.
8789 * w32term.c (x_draw_glyph_string): Use it.
8790 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8791 (syms_of_xterm): Don't declare it any more.
8792 (x_draw_glyph_string): Adjust to the new name.
8793
87942008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8795
8796 * xterm.c (x_underline_minimum_display_offset): New var.
8797 (x_draw_glyph_string): Use it.
8798 (syms_of_xterm): Declare it.
8799
88002008-06-10 Chong Yidong <cyd@stupidchicken.com>
8801
8802 * font.c (font_parse_fcname): Accept GTK-style font names too.
8803
88042008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8805
8806 * dired.c (file_name_completion): Don't return t if the match is exact
8807 but with different capitalization.
8808 * minibuf.c (Ftry_completion): Simplify.
8809
8810 * window.c (Vwindow_point_insertion_type): New var.
8811 (set_window_buffer): Use it.
8812 (syms_of_window): Init and export it to Lisp.
8813
88142008-06-10 Kenichi Handa <handa@m17n.org>
8815
8816 * font.h (font_intern_prop): Prototype adjusted.
8817
8818 * font.c (font_intern_prop): New arg force_symbol.
8819 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8820 Adjust for the change of font_intern_prop.
8821
8822 * ftfont.c (ftfont_pattern_entity):
8823 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8824 (w32_registry):
8825 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8826 the change of font_intern_prop.
8827
88282008-06-09 Juanma Barranquero <lekktu@gmail.com>
8829
8830 * w32menu.c (digest_single_submenu): Declare extern.
8831
88322008-06-09 Jason Rumney <jasonr@gnu.org>
8833
8834 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8835
8836 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8837 (parse_single_submenu): Remove.
8838 (digest_single_submenu): Remove.
8839 (syms_of_w32menu): Don't initialise variables that have moved
8840 to menu.c.
8841 (set_frame_menubar): Sync with version in xmenu.c.
8842 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8843
8844 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8845 Make static again.
8846
88472008-06-09 Jason Rumney <jasonr@gnu.org>
8848
8849 Changes to w32 files related to the move of common menu code
8850 to menu.c on 2008-06-08 by Chong Yidong.
8851
8852 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8853 defs to w32gui.h.
8854 (single_keymap_panes, push_menu_item, push_menu_pane):
8855 Make globally visible.
8856
8857 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8858 (local_free, malloc_widget_value, free_widget_value)
8859 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8860 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8861 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8862 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8863 (menu_items, menu_items_allocated, menu_items_used)
8864 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8865 (init_menu_items, finish_menu_items, discard_menu_items)
8866 (grow_menu_items, push_submenu_start, push_submenu_end)
8867 (push_left_right_boundary, push_menu_pane, push_menu_item)
8868 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8869 (free_menubar_widget_tree_value, parse_single_submenu)
8870 (update_submenu_strings): Remove functions.
8871 (xmalloc_widget_value): Remove and declare extern.
8872
8873 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8874 (OBJ1): Build it.
8875
8876 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8877 (local_heap, local_alloc, local_free, malloc_widget_value)
8878 (free_widget_value): Define here.
8879
88802008-06-09 Kenichi Handa <handa@m17n.org>
8881
8882 * font.h (Qascii_0): Extern it.
8883
8884 * font.c (Qascii_0): New variable.
8885 (syms_of_font): DEFSYM it.
8886 (font_open_by_name): If the registry "iso8859-1" fails, try also
8887 "ascii-0".
8888
8889 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8890
88912008-06-08 Kenichi Handa <handa@m17n.org>
8892
8893 * .gdbinit (xfont): New command.
8894
88952008-06-08 Andreas Schwab <schwab@suse.de>
8896
8897 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8898 * Makefile.in (menu.o): Update dependencies.
8899
8900 * Makefile.in (obj): Always add menu.o.
8901 * emacs.c (main): Always call syms_of_menu.
8902 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8903
89042008-06-08 Chong Yidong <cyd@stupidchicken.com>
8905
8906 * Makefile.in: Compile menu.c.
8907
8908 * lisp.h: Declare syms_of_menu.
8909
8910 * emacs.c (main): Call syms_of_menu.
8911
8912 * keyboard.h: Relocate platform-independent menu definitions from
8913 xmenu.c.
8914
8915 * menu.c: New file. Relocate platform-independent menu
8916 definitions from xmenu.c. Suggested by Adrian Robert.
8917
8918 * xmenu.c: Remove platform-independent menu definitions.
8919 (menu_items menu_items_inuse, menu_items_allocated)
8920 (menu_items_used, menu_items_n_panes)
8921 (menu_items_submenu_depth): Move to keyboard.h.
8922 (init_menu_items, finish_menu_items, unuse_menu_items)
8923 (discard_menu_items, restore_menu_items, save_menu_items)
8924 (grow_menu_items, push_submenu_start, push_submenu_end)
8925 (push_left_right_boundary, push_menu_pane, push_menu_item)
8926 (keymap_panes, single_keymap_panes, single_menu_item)
8927 (list_of_panes, list_of_items, find_and_call_menu_selection)
8928 (xmalloc_widget_value, free_menubar_widget_value_tree)
8929 (parse_single_submenu, digest_single_submenu)
8930 (update_submenu_strings): Move to menu.c.
8931
89322008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8933
8934 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8935
89362008-06-06 Miles Bader <miles@gnu.org>
8937
8938 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8939 face, not frame default.
8940
89412008-06-05 Martin Rudalics <rudalics@gmx.at>
8942
8943 * window.c (pop_up_windows, pop_up_frames)
8944 (display_buffer_reuse_frames, Vpop_up_frame_function)
8945 (Vdisplay_buffer_function, Veven_window_heights)
8946 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8947 (Vspecial_display_function, Vsame_window_buffer_names)
8948 (Vsame_window_regexps, split_height_threshold)
8949 (Vsplit_window_preferred_function): Move those vars to window.el.
8950 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8951 (Fdisplay_buffer): Move those functions to window.el.
8952 (syms_of_window): Remove corresponding declarations.
8953 (display_buffer): New function.
8954 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8955 * dispnew.c (Flast_nonminibuf_frame): New function.
8956 * buffer.c (Fpop_to_buffer): Move to window.el.
8957
89582008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8959
8960 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8961
89622008-06-05 Kenichi Handa <handa@m17n.org>
8963
8964 * coding.c (detect_coding): Fix previous change.
8965 (detect_coding_system): Likewise.
8966
89672008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8968
8969 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8970
8971 * keymap.c (Vminibuffer_local_filename_must_match_map):
8972 Rename from Vminibuffer_local_must_match_filename_map.
8973 (syms_of_keymap):
8974 * minibuf.c (Fcompleting_read): Adjust accordingly.
8975 * commands.h: Rename declaration as well.
8976
89772008-06-05 Kenichi Handa <handa@m17n.org>
8978
8979 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8980 family name.
8981 (Ffont_put): Likewise.
8982
8983 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8984 current font-spec.
8985
8986 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8987 is unspecified.
8988
8989 * xfaces.c (realize_x_face): If the font-related face attributes
8990 are the same as those of default face, realize a new fontset from
8991 default->fontset.
8992 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8993
89942008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8995
8996 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8997 (move_it_in_display_line): New wrapper.
8998
8999 * window.c (window_scroll_pixel_based_preserve_x)
9000 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9001 (window_scroll_pixel_based, window_scroll_line_based):
9002 Use them to preserve column positions.
9003 (syms_of_window): Initialize them.
9004
9005 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9006 (HPOS . VPOS) pair.
9007
9008 * dispextern.h (move_it_in_display_line): Declare.
9009
90102008-06-05 Juanma Barranquero <lekktu@gmail.com>
9011
9012 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9013 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9014 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9015
90162008-06-04 Juanma Barranquero <lekktu@gmail.com>
9017
9018 * window.c (Fset_window_parameter): Doc fix.
9019 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9020
90212008-06-04 Joakim Verona <joakim@verona.se>
9022
9023 * window.h (struct window): Add new member window_parameters.
9024
9025 * window.c (Fwindow_parameters, Fwindow_parameter)
9026 (Fset_window_parameter): New defuns.
9027 (syms_of_window): Defsubr the new defuns.
9028 (make_window): Initialize window_parameters to nil.
9029
90302008-06-04 John Paul Wallington <jpw@pobox.com>
9031
9032 * eval.c (Fdefmacro): Doc fix.
9033
90342008-06-04 Kenichi Handa <handa@m17n.org>
9035
9036 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9037 Be sure to call setup_coding_system when we find a proper coding system.
9038 (detect_coding_system): Fix handling of coding->head_ascii.
9039
90402008-06-03 Andreas Schwab <schwab@suse.de>
9041
9042 * font.c (font_prop_validate_spacing): Fix last change.
9043
90442008-06-03 Kenichi Handa <handa@m17n.org>
9045
9046 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9047 (font_parse_fcname): Fix handling of unknown key.
9048
9049 * xfont.c (xfont_list): Try an alias.
9050
9051 * charset.c (char_charset): Return NULL if the arg charset_list is
9052 specified and C doesn't belong to any of them.
9053
90542008-06-02 Chip Coldwell <coldwell@redhat.com>
9055
9056 * font.c (font_pixel_size): Don't take cdr of an integer.
9057
90582008-06-02 Jim Meyering <meyering@redhat.com>
9059
9060 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9061 * alloc.c (xfree): Return right away for a NULL arg.
9062 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9063 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9064 * mac.c (create_apple_event_from_event_ref): Likewise.
9065 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9066 Likewise.
9067 * doprnt.c (doprnt1): Likewise.
9068 * frame.c (frame): Likewise.
9069 * keyboard.c (wipe_kboard): Likewise.
9070 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9071 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9072 * term.c (tty_default_color_capabilities, maybe_fatal)
9073 (delete_tty): Likewise.
9074 * w16select.c (string): Likewise.
9075 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9076 * w32bdf.c (w32_free_bdf_font): Likewise.
9077 * w32fns.c (w32_unload_font): Likewise.
9078 * w32font.c (w32font_close): Likewise.
9079 * window.c (size_window): Likewise.
9080 * xselect.c (receive_incremental_selection): Likewise.
9081 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9082 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9083 * w32.c (stat): Likewise.
9084
9085 Remove useless if-before-free tests.
9086 * editfns.c (Fset_time_zone_rule): Likewise.
9087 * lread.c (nosuffix): Likewise.
9088 * ralloc.c (get_bloc): Likewise.
9089 * regex.c (reg_free): Likewise.
9090 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9091 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9092 * xsmfns.c (smc_save_yourself_CB): Likewise.
9093
90942008-06-02 Kenichi Handa <handa@m17n.org>
9095
9096 * font.c (font_find_for_lface): Handle float font size.
9097 (font_open_for_lface): Likewise.
9098
9099 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9100 comparing the properties.
9101
91022008-06-01 Jason Rumney <jasonr@gnu.org>
9103
9104 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9105 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9106 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9107 Don't add empty script list.
9108 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9109
91102008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9111
9112 * Makefile.in (dot, dotdot): Remove, update users.
9113 ".." has been used elsewhere in the file for a long time.
9114 (LIBXT_STATIC): Remove conditional based on unused variable.
9115
91162008-06-01 Miles Bader <miles@gnu.org>
9117
9118 * xfaces.c (Vface_remapping_alist): New variable.
9119 (syms_of_xfaces): Initialize it.
9120 (enum named_merge_point_kind): New type.
9121 (struct named_merge_point): Add `named_merge_point_kind' field.
9122 (push_named_merge_point): Make cycle detection respect different
9123 named-merge-point kinds.
9124 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9125 Remove face-name alias resolution.
9126 (lface_from_face_name): New definition using
9127 `lface_from_face_name_no_resolve'.
9128 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9129 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9130 (get_lface_attributes): New definition that layers face-remapping on
9131 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9132 (lookup_basic_face): New function.
9133 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9134 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9135 `get_lface_attributes'.
9136 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9137 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9138 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9139
9140 * xdisp.c (init_iterator): Pass base_face_id through
9141 `lookup_basic_face' when we actually use it as a face-id.
9142 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9143 DEFAULT_FACE_ID.
9144
9145 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9146 lookup the initial face-id.
9147
9148 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9149
91502008-06-01 Juanma Barranquero <lekktu@gmail.com>
9151
9152 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9153 (Fremove_text_properties): Fix typos in docstrings.
9154
91552008-05-31 Kenichi Handa <handa@m17n.org>
9156
9157 * font.c (font_list_entities): Fix the car part of data to be
9158 stored in the cache.
9159
9160 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9161
91622008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9163
9164 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9165 Add a `test' argument so another predicate than `equal' can be used.
9166 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9167 (map_char_table): Remove unused vars `c' and `i'.
9168 * lisp.h (Foptimize_char_table): Adjust declaration.
9169 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9170
91712008-05-30 Kenichi Handa <handa@m17n.org>
9172
9173 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9174 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9175 defined.
9176
91772008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9178
9179 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9180 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9181 frame-local settings for the same variable.
9182
91832008-05-30 Kenichi Handa <handa@m17n.org>
9184
9185 * fontset.c (Ffont_info): Move to font.c.
9186 (syms_of_fontset): Delete defsubr of Sfont_info.
9187
9188 * font.c (font_style_to_value, font_score): Delete casting of the
9189 args to xstcasecmp.
9190 (register_font_driver): Increment num_font_drivers only when
9191 registering the driver globally.
9192 (Ffont_info): Move from fontset.c. Handle a font object too.
9193 (syms_of_font): Defsubr Sfont_info.
9194
91952008-05-29 Kenichi Handa <handa@m17n.org>
9196
9197 * coding.h (enum define_coding_utf8_arg_index): New enum.
9198 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9199 coding_attr_utf_bom.
9200 (enum utf_bom_type): Rename from utf_16_bom_type.
9201 (struct utf_16_spec): Adjust for the above change.
9202 (struct coding_system): Add utf_8_bom in `spec' union.
9203
9204 * coding.c (CODING_UTF_8_BOM): New macro.
9205 (enum coding_category): Delete coding_category_utf_8, add
9206 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9207 coding_category_utf_8_sig.
9208 (CATEGORY_MASK_UTF_8): Delete it.
9209 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9210 (CATEGORY_MASK_UTF_8_SIG): New macros.
9211 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9212 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9213 CATEGORY_MASK_UTF_8_SIG.
9214 (CATEGORY_MASK_UTF_8): New macro.
9215 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9216 (detect_coding_utf_8): Check BOM.
9217 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9218 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9219 (encode_coding_utf_16): Likewise.
9220 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9221 (detect_coding, detect_coding_system): Handle utf-8-auto.
9222 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9223 (syms_of_coding): Fix setting up of Vcoding_category_table.
9224
92252008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9226
9227 * process.c (Faccept_process_output): If `millisec' is non-nil,
9228 `seconds' default to 0.
9229 (wait_reading_process_output): Also return non-nil if we read output
9230 from a non-running process.
9231
92322008-05-29 Jason Rumney <jasonr@gnu.org>
9233
9234 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9235 `raster' specified.
9236 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9237 in the uniscribe backend, but disallow any font that has no
9238 unicode subrange support.
9239
92402008-05-29 Juanma Barranquero <lekktu@gmail.com>
9241
9242 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9243 Fix typos in docstrings.
9244
92452008-05-29 Kenichi Handa <handa@m17n.org>
9246
9247 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9248 (Fx_family_fonts): Set frame correctly.
9249
92502008-05-28 Jason Rumney <jasonr@gnu.org>
9251
9252 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9253
92542008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9255
9256 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9257 calling build_annotations.
9258
92592008-05-28 Juanma Barranquero <lekktu@gmail.com>
9260
9261 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9262 (Fencode_coding_string):
9263 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9264 <latin-extra-code-table>: Fix typos in docstrings.
9265 (syms_of_coding) <coding-system-alist>: Doc fix.
9266 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9267
92682008-05-28 Kenichi Handa <handa@m17n.org>
9269
9270 * fontset.c (Ffont_info): Don't call font_close_object.
9271
9272 * font.c (font_parse_family_registry): Use Ffont_put to validate
9273 foundry and family.
9274 (font_delete_unmatched): Don't check spacing.
9275 (font_list_entities): Add spacing to the spec to list fonts.
9276
9277 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9278 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9279
9280 * coding.c (encode_coding_raw_text): Fix previous change.
9281 (encode_coding_object): When the dst_object is a buffer and is
9282 different from src_object, move gap to PT.
9283
92842008-05-27 Chong Yidong <cyd@stupidchicken.com>
9285
9286 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9287
92882008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9289
9290 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9291 all branches. Compute it differently.
9292
9293 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9294
92952008-05-27 Juanma Barranquero <lekktu@gmail.com>
9296
9297 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9298 into "else if () ... else ...".
9299
93002008-05-27 Jason Rumney <jasonr@gnu.org>
9301
9302 * w32font.c (w32font_open_internal): Determine if glyph indices
9303 are likely to work here.
9304
93052008-05-27 Chong Yidong <cyd@stupidchicken.com>
9306
9307 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9308 draw overlap glyphs with appropriate highlighting.
9309
93102008-05-27 Kenichi Handa <handa@m17n.org>
9311
9312 * xfont.c (xfont_open): Fix calculation of font->average_width.
9313
93142008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9315
9316 * casefiddle.c (casify_object): Try to guess better whether the
9317 argument is a byte or a char.
9318
93192008-05-26 Andreas Schwab <schwab@suse.de>
9320
9321 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9322 Always send multiples of format size.
9323
9324 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9325
93262008-05-26 Jason Rumney <jasonr@gnu.org>
9327
9328 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9329 (compute_metrics): Don't set failure if we just cleared the cache.
9330 (w32_weight_table): Remove unused variable.
9331 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9332 backwards compatibility.
9333
93342008-05-25 Kenichi Handa <handa@m17n.org>
9335
9336 * w32term.c (x_draw_glyph_string):
9337 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9338
9339 * xfaces.c: Delete unused function prototypes.
9340 (xstrlwr, font_frame): Delete them.
9341 (clear_face_cache): Delete unused variable.
9342
9343 * xftfont.c (xftfont_open): Delete unused variable.
9344 If underline_thickness is not 1, adjust underline_position.
9345
9346 * ftxfont.c (ftxfont_open): Delete unused variable.
9347
9348 * fontset.c (face_for_char): Optimize for the case of no charset
9349 property.
9350
9351 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9352 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9353 (otf_open, font_otf_capability, generate_otf_features)
9354 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9355 Comment out by surrounding "#if 0" and "#endif" for the moment.
9356 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9357 (syms_of_font): Codes for accessing above commented out.
9358
93592008-05-24 Eli Zaretskii <eliz@gnu.org>
9360
9361 * w32proc.c: Include dispextern.h.
9362
9363 * w32.c: Include dispextern.h.
9364
93652008-05-23 Juanma Barranquero <lekktu@gmail.com>
9366
9367 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9368 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9369 Fix typos in docstrings.
9370
93712008-05-23 Jason Rumney <jasonr@gnu.org>
9372
9373 * xsmfns.c: Remove includes that are already included by config.h.
9374
93752008-05-23 Kenichi Handa <handa@m17n.org>
9376
9377 * charset.c (Qemacs, charset_emacs): New variables.
9378 (char_charset): Fix for non-Unicode characters.
9379 (syms_of_charset): Define charset_emacs.
9380
9381 * w32term.c (x_draw_glyph_string): Be sure to update
9382 s->underline_thickness and s->underline_position. Be sure to draw
9383 underline within the current line area.
9384
9385 * xterm.c (x_draw_glyph_string): Be sure to update
9386 s->underline_thickness and s->underline_position. Be sure to draw
9387 underline within the current line area.
9388
9389 * fontset.c: Delete unused variables and add casting for char *
9390 throughout the file.
9391 (fontset_font): Try the fallback fonts of the current fontset
9392 before consulting the default fontset.
9393
9394 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9395
9396 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9397
93982008-05-22 Jason Rumney <jasonr@gnu.org>
9399
9400 * font.c: Don't include strings.h.
9401
9402 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9403
9404 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9405 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9406 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9407 to call xstrcasecmp.
9408
9409 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9410
9411 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9412
9413 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9414
9415 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9416
94172008-05-22 Kenichi Handa <handa@m17n.org>
9418
9419 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9420
9421 * font.c (font_prop_validate_style): Adjust for the format
9422 change of font_style_table.
9423
9424 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9425 two args.
9426
9427 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9428 two args.
9429
94302008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9431
9432 * minibuf.c (keys_of_minibuf): Delete.
9433 * lisp.h (keys_of_minibuf): Delete.
9434 * emacs.c (main): Don't call keys_of_minibuf.
9435
94362008-05-22 Kenichi Handa <handa@m17n.org>
9437
9438 * ftfont.c (ftfont_resolve_generic_family): Rename from
9439 ftfont_list_generic_family. Return a single family for each
9440 generic family.
9441 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9442 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9443 Call font_add_log.
9444 (ftfont_match): Call font_add_log.
9445
9446 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9447 (FONT_DEBUG): Define it.
9448 (font_add_log): Extern it.
9449 (font_assert): Rename from xassert.
9450
9451 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9452 (xfont_list_family): Call font_add_log.
9453 (xfont_match): Likewise.
9454 (memq_no_quit): Delete.
9455
9456 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9457 call of Ffont_xlfd_name.
9458
9459 * xfaces.c (struct table_entry, slant_table, weight_table)
9460 (swidth_table): Move to font.c.
9461
9462 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9463 xassert are changed to font_assert. Delete many unused variables.
9464 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9465 New variables.
9466 (struct table_entry): Move from xfaces.c and modified.
9467 (weight_table, slant_table, width_table): Move from xfaces.c and
9468 contents adjusted for the change of struct table_entry.
9469 (font_style_to_value, font_style_symbolic): Adjust for the
9470 format change of font_style_table.
9471 (font_parse_family_registry): Don't overwrite existing foundry and
9472 family of font_spec.
9473 (font_score): Fix calculation of diff for sizes.
9474 (font_sort_entites): Call font_add_log.
9475 (font_delete_unmatched): Return a newly created list.
9476 (font_list_entities): Fix previous change. Call font_add_log.
9477 (font_matching_entity, font_open_entity, font_close_entity):
9478 Call font_add_log.
9479 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9480 (Finternal_set_font_style_table): Delete.
9481 (BUILD_STYLE_TABLE): New macro.
9482 (build_style_table): New function.
9483 (Vfont_log, font_log_env_checked): New variables.
9484 (font_add_log): New function.
9485 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9486 Declare Lisp variables "font-weight-table", "font-slant-table",
9487 "font-width-table", and "font-log". Initialize font_style_table.
9488
94892008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9490
9491 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9492
94932008-05-21 Seiji Zenitani <zenitani@mac.com>
9494 Ryo Yoshitake <ryo@shiftmode.net>
9495
9496 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9497 (Vframe_alpha_lower_limit): New variable.
9498 (x_set_alpha): New function.
9499
9500 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9501
9502 * xfns.c (x-create-frame, Qalpha):
9503 Initialize the frame parameter `alpha'.
9504 * xterm.c (OPAQUE, OPACITY): New.
9505 (x_set_frame_alpha): New function.
9506 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9507
9508 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9509 * w32fns.c (w32_frame_parm_handlers): Likewise.
9510
95112008-05-20 Jason Rumney <jasonr@gnu.org>
9512
9513 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9514 truetype fonts to opentype list.
9515
95162008-05-20 Juanma Barranquero <lekktu@gmail.com>
9517
9518 * fontset.c (Ffontset_info): Doc fix.
9519 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9520 <ignore-relative-composition>: Fix typos in docstrings.
9521
9522 * font.c (syms-of-font) <font-encoding-alist>:
9523 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9524 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9525 (Ffont_otf_alternates): Doc fixes.
9526
95272008-05-20 Kenichi Handa <handa@m17n.org>
9528
9529 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9530 font.h through out the file.
9531 (FONT_DRIVERS): Rename from FONTOBJ.
9532 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9533 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9534
9535 * emacs.c (main): Call syms_of_font unconditionally.
9536
9537 * font.h (find_font_encoding): Extern it.
9538
9539 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9540 fontset.c.
9541 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9542 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9543 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9544 only when HAVE_WINDOW_SYSTEM is defined.
9545 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9546 when HAVE_WINDOW_SYSTEM is defined.
9547
9548 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9549 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9550
9551 * xfaces.c: Include font.h unconditionally.
9552 (merge_face_ref, merge_face_vectors)
9553 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9554
95552008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9556
9557 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9558 indirect_variable.
9559 * eval.c (lisp_indirect_variable): New fun.
9560 (Fuser_variable_p): Use it.
9561
95622008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9563
9564 * lisp.h (indirect_variable):
9565 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9566 Use Lisp_Symbol pointers rather than Lisp_Object.
9567 Adjust callers.
9568 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9569 To this end, change calling-convention.
9570
9571 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9572 if some non-hidden buffers are selected by string&pred.
9573
95742008-05-19 Chong Yidong <cyd@stupidchicken.com>
9575
9576 * process.c (wait_reading_process_output): Always check status
9577 when in batch mode.
9578
95792008-05-19 Kenichi Handa <handa@m17n.org>
9580
9581 * font.c (font_list_entities): Fix handling of cache.
9582 (font_matching_entity): Likewise.
9583
9584 * ftfont.c (cs_iso8859_1): Delete.
9585 (ft_face_cache): New variable.
9586 (struct ftfont_info): New member fc_charset_idx.
9587 (ftfont_build_basic_charsets): Delete.
9588 (fc_charset_table): New variable.
9589 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9590 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9591 Callers changed.
9592 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9593 (ftfont_spec_pattern): New argument fc_charset_idx.
9594 Check registry more rigidly. Change callers.
9595 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9596 change of :font-entity property of the font.
9597
9598 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9599 property of the font.
9600
96012008-05-18 Juanma Barranquero <lekktu@gmail.com>
9602
9603 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9604 (Funencodable_char_position, Fcheck_coding_systems_region)
9605 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9606 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9607 (Ffind_operation_coding_system, Fset_coding_system_priority)
9608 (Fcoding_system_eol_type): Doc fixes.
9609
96102008-05-17 Glenn Morris <rgm@gnu.org>
9611
9612 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9613
96142008-05-16 Eli Zaretskii <eliz@gnu.org>
9615
9616 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9617 and st_gid.
9618
9619 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9620 HAVE_WINDOW_SYSTEM is not defined.
9621
9622 * xfaces.c (merge_face_ref, merge_face_vectors)
9623 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9624 HAVE_WINDOW_SYSTEM is defined.
9625 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9626
96272008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9628
9629 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9630
96312008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9632
9633 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9634
96352008-05-15 Kenichi Handa <handa@m17n.org>
9636
9637 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9638 preference.
9639
96402008-05-15 Glenn Morris <rgm@gnu.org>
9641
9642 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9643
96442008-05-15 Chong Yidong <cyd@stupidchicken.com>
9645
9646 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9647 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9648
9649 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9650
96512008-05-15 Kenichi Handa <handa@m17n.org>
9652
9653 * ftfont.c (ftfont_list): Downcase family name to check generic
9654 families.
9655
9656 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9657 font-spec for QCfont value.
9658
9659 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9660 buffer. Check the return value of it.
9661
96622008-05-14 Jason Rumney <jasonr@gnu.org>
9663
9664 * w32term.c (w32_get_glyph_overhangs): Remove.
9665 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9666
96672008-05-14 Kenichi Handa <handa@m17n.org>
9668
9669 * font.c (font_prop_validate): Make nil a valid value.
9670 (font_clear_cache): Check if the cached vector of entities is nil
9671 or not.
9672
96732008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9674
9675 * emacs.c (main_thread): Conditionalize on
9676 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9677 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9678
9679 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9680 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9681 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9682
96832008-05-14 Kenichi Handa <handa@m17n.org>
9684
9685 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9686 has no corresponding coding system.
9687
96882008-05-14 Jason Rumney <jasonr@gnu.org>
9689
9690 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9691
9692 * w32font.h (w32font_open_internal): Update declaration.
9693
9694 * w32font.c (w32font_open_internal): Change last argument from
9695 w32font_info struct to font object. Fill in font object from
9696 font_entity. Get Outline metrics if possible. Use them to
9697 calculate underline position and thickness. Use xlfd name as name
9698 property. Don't set codepage.
9699 (w32font_open): Pass font_object to w32font_open_internal. Don't
9700 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9701 (w32font_draw): Use s->font.
9702 (clear_cached_metrics): Don't clear non-existent blocks.
9703
9704 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9705 font was not found.
9706 (x_draw_glyph_string): Use underline position and thickness from font.
9707
9708 * w32uniscribe.c (uniscribe_open): Pass font_object to
9709 w32font_open_internal.
9710
97112008-05-14 Kenichi Handa <handa@m17n.org>
9712
9713 These changes are to delete all legacy font-handling codes, and
9714 make Emacs use only font-backends.
9715
9716 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9717 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9718
9719 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9720
9721 * charset.h (Vcharset_non_preferred_head)
9722 (Vcurrent_iso639_language): Extern them.
9723
9724 * charset.c (Vcharset_non_preferred_head): New variable.
9725 (Vcurrent_iso639_language): New variable.
9726 (syms_of_charset): Declare it as a Lisp variable.
9727 (char_charset): Don't check non preferred charsets. As a last
9728 resort, return charset_unicode.
9729 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9730
9731 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9732 conditionals. Don't check enable_font_backend. Delete all codes
9733 used only when USE_FONT_BACKEND is not defined.
9734
9735 * dispextern.h (struct glyph_string): Change type of `font' to
9736 `struct font *'.
9737 (struct glyph_string): New member underline_position and
9738 underline_thickness.
9739 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9740 (struct face): Change type of `font' to `struct font *'. Remove
9741 members `font_name', `font_info_id'.
9742 (per_char_metric, encode_char): Delete externs.
9743 (calc_pixel_width_or_height): Adjust the prototype.
9744
9745 * emacs.c (enable_font_backend): Delete extern.
9746 (main): Don't set enable_font_backend. Don't check the command
9747 line argument "-disable-font-backend".
9748
9749 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9750 (enum font_property_index): New members FONT_DPI_INDEX,
9751 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9752 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9753 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9754 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9755 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9756 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9757 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9758 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9759 (struct font_spec, struct font_entity): New structs.
9760 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9761 (struct font): Many members from old "struct font_info" moved to
9762 here. Members font and entity deleted.
9763 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9764 the new font-related objects.
9765 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9766 (CHECK_FONT_GET_OBJECT): Likewise.
9767 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9768 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9769 (struct font_driver): New members case_sensitive anc check. Type
9770 of the member list and open changed.
9771 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9772 (font_symbolic_width, font_find_object, font_get_spec)
9773 (font_set_lface_from_name): Delete extern.
9774 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9775
9776 * font.c: Include <strings.h>.
9777 (enable_font_backend): Delete it.
9778 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9779 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9780 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9781 (null_string): Delete it.
9782 (null_vector): Make it static.
9783 (font_family_alist): Delete it.
9784 (Qnormal): Extern it.
9785 (QCextra, QClanguage): Delete it.
9786 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9787 (font_make_spec, font_make_entity, font_make_object)
9788 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9789 the string. Callers changed.
9790 (font_pixel_size): Adjusted for the format change of font-related
9791 objects.
9792 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9793 (font_style_to_value, font_style_symbolic): New function.
9794 (build_font_family_alist): Delete it.
9795 (font_registry_charsets): Use Fassoc_string instead of
9796 assq_no_quit.
9797 (font_prop_validate_symbol): Don't return null_string.
9798 (font_prop_validate_style): Adjusted for the change of
9799 style-related values in a font vector.
9800 (font_property_table): Delete entries for QClanguage and
9801 QCantialias, add entries for QCavgwidth.
9802 (get_font_prop_index): Delete the 2nd argument FROM.
9803 (font_prop_validate): Arguments changed.
9804 (font_put_extra): Adjusted for the change of font-related objects.
9805 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9806 (font_parse_fcname, font_unparse_fcname)
9807 (font_prepare_composition): Likewise.
9808 (font_parse_family_registry): Renamed from font_merge_old_spec.
9809 (otf_open): Delete the 1st arg entity.
9810 (font_otf_capability): Adjusted for the above change.
9811 (font_score): New arg alternate_families. Adjusted for the change
9812 of font-related objects.
9813 (font_sort_entites): New arg best_only.
9814 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9815 Delete them.
9816 (font_match_p): Check alternate families.
9817 (font_find_object): Delete it.
9818 (font_check_object): New function.
9819 (font_clear_cache): Adjusted for the change of font-related objects.
9820 (font_delete_unmatched): New arg.
9821 (font_list_entities): Call font_driver->list with a spec that
9822 doesn't specify style-related properties.
9823 (font_matching_entity): Arguments changed. Caller changed.
9824 (font_open_entity): Adjusted for the change of font-related objects.
9825 (font_close_object, font_has_char, font_encode_char)
9826 (font_get_name, font_get_spec): Likewise.
9827 (font_spec_from_name, font_clear_prop, font_update_lface):
9828 New functions.
9829 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9830 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9831 (font_at): Adjusted for the change of font-related objects.
9832 (font_range): New function.
9833 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9834 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9835 (Fcopy_font_spec, Fmerge_font_spec): New function.
9836 (Ffont_family_list): Renamed from list-families.
9837 (Finternal_set_font_style_table): Arguments changed.
9838 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9839 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9840 change of font-related objects.
9841 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9842
9843 * fontset.h (struct font_info): Delete it. Most members go to
9844 struct font.
9845 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9846 (enum FONT_SPEC_INDEX): Delete it.
9847 (font_info, list_fonts_func, load_font_func, query_font_func)
9848 (set_frame_fontset_func, find_ccl_program_func)
9849 (get_font_repertory_func, new_fontset_from_font_name): Delete
9850 externs.
9851 (fontset_from_font_name): Extern it.
9852 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9853 (FONT_INFO_FROM_FACE): Deleted.
9854 (face_for_font): Adjust prototype.
9855
9856 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9857 conditionals. Don't check enable_font_backend. Delete all codes
9858 used only when USE_FONT_BACKEND is not defined.
9859 (get_font_info_func, list_font_func, load_font_func)
9860 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9861 (get_font_repertory_func): Delete them.
9862 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9863 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9864 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9865 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9866 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9867 (fontset_compare_rfontdef): New function.
9868 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9869 rfont-defs by qsort. Adjusted for the change of font-group vector.
9870 (load_font_get_repertory): Deleted.
9871 (fontset_find_font): Use new macros to ref/set elements of
9872 font-def and rfont-def.
9873 (fontset_font): Fix the timing of remembering that no font for C.
9874 (free_face_fontset): Do nothing if the face has no fontset.
9875 (face_suitable_for_char_p): Use new macros to ref/set elements of
9876 rfont-def.
9877 (face_for_char): Likewise. Call face_for_char with font_object.
9878 (fs_load_font): Delete. Delete #pragma surrounding it.
9879 (fs_query_fontset): Use strcasecmp instead of strcmp.
9880 (generate_ascii_font_name): Adjusted for the format change of
9881 font-spec.
9882 (Fset_fontset_font): Likewise. Use new macros to set elements of
9883 font-def.
9884 (Fnew_fontset): Use font_unparse_xlfd to generate
9885 FONTSET_ASCII (fontset).
9886 (new_fontset_from_font_name): Deleted.
9887 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9888 a fontset is already created for the font. FIx updating of
9889 Vfontset_alias_alist.
9890 (fontset_ascii_font): Deleted.
9891 (Ffont_info): Adjusted for the format change of font-spec.
9892 (Finternal_char_font): Likewise.
9893 (Ffontset_info): Likewise.
9894 (syms_of_fontset): Don't check load_font_func.
9895
9896 * fns.c (internal_equal): Handle PREV_FONT.
9897
9898 * frame.h: Delete USE_FONT_BACKEND conditional.
9899
9900 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9901 conditionals. Don't check enable_font_backend. Delete all codes
9902 used only when USE_FONT_BACKEND is not defined.
9903 (x_set_font): Call x_new_font, not x_new_fontset2.
9904 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9905 already set for the frame.
9906
9907 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9908 a font-entity by font_make_entity. Use font_intern_prop instead
9909 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9910 font property. If a font is scalable, set avgwidth property to 0.
9911 Set font-entity property by font_put_extra.
9912 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9913 (ffont_driver): Adjusted for the change of struct font_driver.
9914 (ftfont_spec_pattern): New function.
9915 (ftfont_list): Return a list, not vector.
9916 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9917 (ftfont_list_family): Don't downcase names.
9918 (ftfont_free_entity): Deleted.
9919 (ftfont_open): Return a font-object. Adjusted for the change of
9920 struct font. Get underline_thickness and underline_position from
9921 font property. Don't update dpyinfo->smallest_font_height and
9922 dpyinfo->smallest_char_width.
9923 (ftfont_close): Don't free `struct font'.
9924 (ftfont_has_char): Adjusted for the format change of font-entity.
9925 (ftfont_encode_char, ftfont_text_extents): Likewise.
9926
9927 * ftxfont.c (ftxfont_list): Return a list, not vector.
9928 (ftxfont_open): Return a font-object. Adjusted for the change of
9929 struct font. Get underline_thickness and underline_position from
9930 font property. Don't update dpyinfo->smallest_font_height and
9931 dpyinfo->smallest_char_width.
9932 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9933 (ftxfont_draw): Adjusted for the change of struct font.
9934
9935 * image.c (image_ascent): Don't include "charset.h". Include
9936 "character.h" and "font.h".
9937
9938 * lisp.h (enum pvec_type): New member PREV_FONT.
9939 (Fassoc_string): EXFUN it.
9940
9941 * print.c: Include font.h.
9942 (print_object): Handle font-related objects.
9943
9944 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9945 conditionals. Don't check enable_font_backend. Delete all codes
9946 used only when USE_FONT_BACKEND is not defined.
9947 (handle_auto_composed_prop): Do nothing if it->f is not on a
9948 window system. Check how many following characters can be
9949 displayed by the same font.
9950 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9951 'struct font *'.
9952 (get_char_face_and_encoding): Assign the whole encoding task to
9953 the `encode-char' method of a font driver.
9954 (fill_composite_glyph_string): Adjusted for the change of `struct
9955 face' and `struct glyph_string'.
9956 (fill_glyph_string): Likewise.
9957 (get_per_char_metric): Arguments changed.
9958 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9959 and `struct glyph_string'.
9960 (produce_stretch_glyph, calc_line_height_property)
9961 (x_produce_glyphs): Likewise.
9962
9963 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9964 conditionals. Don't check enable_font_backend. Delete all codes
9965 used only when USE_FONT_BACKEND is not defined. Use
9966 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9967 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9968 (Qp): Extern them.
9969 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9970 Deleted.
9971 (struct font_name): Deleted.
9972 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9973 (compare_fonts_by_sort_order): New function.
9974 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9975 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9976 Deleted.
9977 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9978 compare_fonts_by_sort_order.
9979 (Fx_font_family_list): Call Ffont_family_list.
9980 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9981 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9982 (face_symbolic_slant, face_symbolic_swidth)
9983 (split_font_name_into_vector, build_font_name_from_vector)
9984 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9985 (font_rescale_ratio, split_font_name, build_font_name)
9986 (free_font_names, sort_fonts, x_face_list_fonts)
9987 (face_font_available_p, sorted_font_list, cmp_font_names)
9988 (font_list_1, concat_font_list, font_list, remove_duplicates):
9989 Deleted.
9990 (Fx_list_fonts): Use Ffont_list.
9991 (LFACE_AVGWIDTH): Deleted.
9992 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9993 by FONTP.
9994 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9995 (set_lface_from_font_name): Delete it.
9996 (set_lface_from_font): Renamed from
9997 set_lface_from_font_and_fontset. Caller changed. Don't set
9998 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9999 for face.
10000 (merge_face_vectors): Copy font-spec if necessary.
10001 Clear properties of the font-spec if necessary.
10002 (merge_face_ref): Clear properties of the font-spec if necessary.
10003 (Finternal_set_lisp_face_attribute): Likewise.
10004 (set_font_frame_param): Use font_load_for_lface to load a
10005 font-object, and call Fmodify_frame_parameters with it.
10006 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10007 font name by Ffont_xlfd_name.
10008 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10009 QCslant, and QCwidth.
10010 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10011 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10012 Compare fonts by EQ.
10013 (lookup_non_ascii_face): Deleted.
10014 (face_for_font): The 2nd argument changed.
10015 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10016 Check atomic font properties by case insensitive.
10017 (realize_non_ascii_face): Set face->overstrike correctly.
10018 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10019 (dump_realized_face): Get font name from
10020 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10021
10022 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10023 conditionals. Don't check enable_font_backend. Delete all codes
10024 used only when USE_FONT_BACKEND is not defined.
10025 (xic_create_xfontset): Original code deleted and renamed from
10026 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10027 (x_make_gc): Don't set GCFont in GCs.
10028 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10029 opened by "fixed".
10030 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10031 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10032 get_font_repertory_func.
10033
10034 * xfont.c: Include <stdlib.h> and "ccl.h".
10035 (struct xfont_info): New structure.
10036 (xfont_query_font): Deleted.
10037 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10038 moved from xterm.c.
10039 (xfont_driver): Adjusted for the change of struct font_driver.
10040 (compare_font_names): New function.
10041 (xfont_list_pattern): Sort font names case insensitively. Make
10042 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10043 (xfont_list): Return a list, not vector.
10044 (xfont_match): If the font doesn't have QCname property, generate
10045 a name from the other font properties.
10046 (xfont_open): Return a font-object. Adjusted for the change of
10047 struct font. Get underline_thickness and underline_position from
10048 font property. Don't update dpyinfo->smallest_font_height and
10049 dpyinfo->smallest_char_width.
10050 (xfont_close): Don't free struct font.
10051 (xfont_prepare_face): Adjusted for the change of struct font.
10052 (xfont_done_face): Deleted.
10053 (xfont_has_char): Adjusted for the change of struct font.
10054 (xfont_encode_char, xfont_draw): Likewise.
10055 (xfont_check): New function.
10056
10057 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10058 callback function.
10059 (xftfont_match): Adjusted for the format change of font-entity.
10060 (xftfont_open): Adjusted for the format change of font-entity and
10061 font-object. Adjusted for the change of struct font. Return a
10062 font-object. Don't update dpyinfo->smallest_font_height and
10063 dpyinfo->smallest_char_width.
10064 (xftfont_close): Block input while calling XftFontClose.
10065 (xftfont_prepare_face): Don't block input while calling
10066 xftfont_get_colors. Adjusted for the change of struct font.
10067 (xftfont_shape): Return value of error case fixed.
10068
10069 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10070
10071 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10072 conditionals.
10073 (FONT_WIDTH): Return (f)->max_width.
10074 (struct x_display_info): Delete member `font'.
10075 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10076 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10077 (struct x_output): Change type of `font' to `struct font *'.
10078
10079 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10080 conditionals. Don't check enable_font_backend. Delete all codes
10081 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10082 (x_per_char_metric, x_encode_char): Deleted.
10083 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10084 (x_compute_glyph_string_overhangs): Adjusted for the change of
10085 `struct face'.
10086 (x_draw_glyph_string_foreground)
10087 (x_draw_composite_glyph_string_foreground): Likewise.
10088 (x_draw_glyph_string): Likewise. Use font->underline_position and
10089 font->underline_thickness.
10090 (x_new_font): Renamed from x_new_fontset2.
10091 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10092 (x_check_font): Call `check' method of a font driver.
10093 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10094 (x_query_font, x_get_font_repertory): Deleted.
10095 (x_find_ccl_program): Renamed and moved to xfont.c.
10096 (x_redisplay_interface): Adjusted for the change of `struct
10097 redisplay_interface'.
10098
10099 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10100 conditionals. Don't check enable_font_backend. Delete all codes
10101 used only when USE_FONT_BACKEND is not defined. Surround non-used
10102 code by "#ifdef OLD_FONT" and "endif".
10103 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10104
10105 * w32font.h (struct w32font_info): New member.
10106 (FONT_COMPAT): New macro.
10107 (w32font_open_internal): Prototype adjusted.
10108
10109 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10110 OLD_FONT" and "endif".
10111
10112 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10113 conditionals. Don't check enable_font_backend. Delete all codes
10114 used only when USE_FONT_BACKEND is not defined.
10115 (w32font_open): Return a font-object. Make a font-object by
10116 font_make_object. Adjusted for the change of struct w32font_info.
10117 (w32font_close): Don't free struct font. Adjusted for the change
10118 of struct w32font_info.
10119 (w32font_encode_char, w32font_text_extents, w32font_draw):
10120 Adjusted for the change of struct w32font_info.
10121 (w32font_draw): Likewise.
10122 (w32font_list_internal): Return a list, not vector.
10123 (w32font_open_internal): Change the 4th arg to font-object.
10124 Adjusted for the change of struct w32font_info and font-object format.
10125 (add_font_name_to_list): Don't downcase names.
10126 (w32_enumfont_pattern_entity): Make a font-entity by
10127 font_make_entity. Adjusted for the format change of font-entity.
10128 Use FONT_SET_STYLE to set a style-related font property. If a
10129 font is scalable, set avgwidth property to 0. Set font-entity
10130 property by font_put_extra.
10131 (font_matches_spec): Adjusted for the format change of font-entity.
10132 (w32_weight_table, w32_decode_weight): New variables.
10133 (w32_encode_weight): New function.
10134 (fill_in_logfont): Adjusted for the format change of font-spec.
10135 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10136 weight value.
10137 (w32font_driver): Adjusted for the change of struct font_driver.
10138
10139 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10140 conditionals. Don't check enable_font_backend. Surround non-used
10141 code by "#ifdef OLD_FONT" and "endif".
10142 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10143 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10144
10145 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10146 conditionals. Don't check enable_font_backend. Delete all codes
10147 used only when USE_FONT_BACKEND is not defined. Surround non-used
10148 code by "#ifdef OLD_FONT" and "endif".
10149
10150 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10151 (uniscribe_open): Return value changed to font-object.
10152 Adjusted for the format change of font-object.
10153 (uniscribe_otf_capability): Adjusted for the change of struct font.
10154 (add_opentype_font_name_to_list): Don't downcase names.
10155 (uniscribe_font_driver): Adjusted for the change of struct
10156 font_driver.
10157
101582008-05-13 Chong Yidong <cyd@stupidchicken.com>
10159
10160 * dispnew.c (update_frame_1): Check if tty output is still valid
10161 before flushing it.
10162
101632008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10164
10165 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10166 to Gtk+ menus.
10167
101682008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10169
10170 * dired.c (file_name_completion): Tweak the code so as to always do it
10171 in a single pass. Tighten the scope of some variables.
10172
10173 * dired.c (Qdefault_directory): New var.
10174 (file_name_completion): Use it instead of Fexpand_file_name.
10175 (syms_of_dired): Initialize it.
10176
101772008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10178
10179 * fileio.c (double_dollars): Remove dead code.
10180
101812008-05-10 Eli Zaretskii <eliz@gnu.org>
10182
10183 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10184 Mention w32-get-true-file-attributes in doc string.
10185
10186 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10187
101882008-05-09 Glenn Morris <rgm@gnu.org>
10189
10190 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10191 2008-04-23.
10192
101932008-05-09 Eli Zaretskii <eliz@gnu.org>
10194
10195 Support for reporting owner and group of each file on MS-Windows:
10196 * dired.c (stat_uname, stat_gname): New functions, with special
10197 implementation for w32.
10198 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10199
10200 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10201 (dflt_group_name): New static variable.
10202 (dflt_group): Rename from the_group.
10203 (init_user_info): Init dflt_group fields. Get user's group name
10204 from LookupAccountSid.
10205 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10206 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10207 New initialization states.
10208 (globals_of_w32): Initialize them to zero. Initialize the default
10209 group name to "None".
10210 (GetFileSecurity_Name): New global var, the name of the function
10211 to call for GetFileSecurity.
10212 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10213 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10214 (get_file_security, get_security_descriptor_owner)
10215 (get_security_descriptor_group, is_valid_sid)
10216 (get_file_security_desc, get_rid, get_name_and_id)
10217 (get_file_owner_and_group): New functions.
10218 (stat): Use get_file_security_desc and get_file_owner_and_group to
10219 report the owner and primary group of each file. Don't ignore the
10220 high 32 bits of file's size, now that st_size is 64-bit wide.
10221 Fix test when to get true file attributes.
10222 (init_user_info): Use get_rid instead of equivalent inline code.
10223 (fstat): Don't ignore the high 32 bits of file's size.
10224
102252008-05-09 Chong Yidong <cyd@stupidchicken.com>
10226
10227 * image.c (png_load): Use correct bit-depth for setting background
10228 color.
10229
102302008-05-08 Eli Zaretskii <eliz@gnu.org>
10231
10232 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10233 epa-hook.elc.
10234
102352008-05-08 Juanma Barranquero <lekktu@gmail.com>
10236
10237 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10238
102392008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10240
10241 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10242 because the original parameters are in pure storage now.
10243 (mac_window): Remove unused params. Update callers.
10244
102452008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10246
10247 * lread.c (substitute_object_recurse): Use lower-level primitives.
10248 Don't signal errors when traversing sub-char-tables.
10249 Don't loop over all the possible characters when traversing char-tables.
10250
10251 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10252 just like we do in print.c.
10253
102542008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10255
10256 * minibuf.c (Ftry_completion): Remove code left over from when we used
10257 scmp instead of Fcompare_strings.
10258
102592008-05-04 Juanma Barranquero <lekktu@gmail.com>
10260
10261 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10262
102632008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10264
10265 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10266 Create bitmap context in native byte order.
10267
10268 * macterm.c (XDrawLine)
10269 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10270 context in native byte order.
10271
102722008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10273
10274 * config.in: Regenerate.
10275
10276 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10277 New definitions for Image I/O support.
10278 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10279 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10280 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10281 (mac_data_provider_release_data, image_load_image_io)
10282 [USE_MAC_IMAGE_IO]: New functions.
10283 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10284 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10285 (init_image_func_pointer) [MAC_OSX]: Remove function.
10286 (image_load_quartz2d) [MAC_OSX]: Check availability of
10287 CGImageCreateWithPNGDataProvider at compile time.
10288 Use lowercase `false' for boolean constant.
10289 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10290 Use image_load_image_io.
10291 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10292 Don't check MyCGImageCreateWithPNGDataProvider.
10293 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10294 Don't call init_image_func_pointer.
10295
10296 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10297
10298 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10299 Make variable non-static.
10300 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10301 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10302
10303 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10304 (RED_FROM_ULONG): Mask off higher bits.
10305 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10306
10307 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10308 Include AvailabilityMacros.h.
10309 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10310 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10311
103122008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10313
10314 * chartab.c (Fset_char_table_range): If range is t, really set all
10315 chars to that value.
10316
103172008-05-03 Eli Zaretskii <eliz@gnu.org>
10318
10319 * dired.c (Ffile_attributes): Don't allow the device number become
10320 negative.
10321
103222008-05-02 Daiki Ueno <ueno@unixuser.org>
10323
10324 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10325
103262008-05-02 Juri Linkov <juri@jurta.org>
10327
10328 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10329 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10330 DEFAULT argument as a list of default values in docstrings.
10331
103322008-05-01 Chong Yidong <cyd@stupidchicken.com>
10333
10334 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10335
103362008-05-01 Martin Rudalics <rudalics@gmx.at>
10337
10338 * dispnew.c (change_frame_size_1): Preserve small windows when
10339 shrinking frames by calling set_window_height|width with third
10340 arg 2.
10341
10342 * window.h (struct window): Replace field too_small_ok by field
10343 resize_proportionally.
10344
10345 * window.c (make_window): Initialize resize_proportionally.
10346 (enlarge_window): Temporarily set resize_proportionally to make
10347 sure that shrink_windows does scale the window proportionally.
10348 (shrink_windows): When window has resize_proportionally set try
10349 to shrink it proportionally by stealing from other windows.
10350 (struct saved_window, Fset_window_configuration)
10351 (compare_window_configurations): Handle resize_proportionally.
10352 (WINDOW_TOTAL_SIZE): New macro.
10353 (window_min_size, shrink_windows, size_window): Use it.
10354 (check_min_window_sizes): Remove. Invalid values of
10355 window-min-height|width are handled by window_min_size_2 now.
10356 (size_window, Fsplit_window, enlarge_window)
10357 (adjust_window_trailing_edge, grow_mini_window): Don't call
10358 check_min_window_sizes.
10359 (window_min_size_2, window_min_size_1, window_min_size):
10360 New argument safe_p for retrieving "safe" minimum sizes.
10361 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10362 (adjust_window_trailing_edge, grow_mini_window):
10363 Adjust arguments of window_min_size... functions.
10364 (shrink_windows): Argument min_size removed. New argument
10365 safe_p allows shrinking windows to their safe minimum sizes.
10366 Calculate minimum size and decide whether a window shall be
10367 deleted for each window individually.
10368 (size_window): When nodelete_p equals 2, tell shrink_windows to
10369 delete windows only if their new minimum size is no more safe.
10370 (shrink_window_lowest_first): Call window_min_size_1 to make
10371 sure to preserve modeline of bottom-most window when resizing
10372 the minibuffer.
10373 (Fset_window_configuration, Fcurrent_window_configuration)
10374 (compare_window_configurations): Do not handle
10375 window-min-height|width any more.
10376 (syms_of_window): Clarify window-min-height|width doc-strings.
10377
103782008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10379
10380 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10381 some more. Copy some of the code from Ftry_completions.
10382 Remove special case code that dates back to initial revision when the
10383 slash was only added when necessary and that can't trigger nowadays.
10384
103852008-04-27 Kenichi Handa <handa@m17n.org>
10386
10387 * font.c (font_prop_validate): Signal `error' instead of `font'.
10388
103892008-04-29 Jason Rumney <jasonr@gnu.org>
10390
10391 * w32fns.c (Fw32_battery_status): New defun.
10392 (syms_of_w32fns): Defsubr it.
10393
103942008-04-28 Andreas Schwab <schwab@suse.de>
10395
10396 * dired.c (file_name_completion): Fix another mixing of encoded
10397 and decoded names.
10398
103992008-04-28 Juanma Barranquero <lekktu@gmail.com>
10400
10401 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10402
104032008-04-27 Juanma Barranquero <lekktu@gmail.com>
10404
10405 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10406
104072008-04-27 Andreas Schwab <schwab@suse.de>
10408
10409 * dired.c (file_name_completion): Fix inappropriate mixing of
10410 encoded and decoded names.
10411
10412 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10413
10414 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10415
104162008-04-26 Eli Zaretskii <eliz@gnu.org>
10417
10418 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10419 2008-03-31, it's not needed anymore with `struct stat' definition
10420 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10421 for the same reasons.
10422
104232008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10424
10425 * m/sparc.h: Additional redefinitions for GNU/Linux.
10426
104272008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10428
10429 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10430 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10431 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10432 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10433 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10434 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10435 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10436 Likewise.
10437
10438 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10439 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10440 (mac_ax_number_of_characters): Add externs.
10441 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10442 [USE_MAC_TSM]: Likewise.
10443 (mac_handle_text_input_event) [MAC_OSX]:
10444 Handle kEventTextInputOffsetToPos for no active input area case.
10445 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10446 (mac_handle_document_access_event)
10447 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10448 (install_application_handler) [MAC_OSX]: Register handlers for
10449 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10450 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10451 Register mac_handle_document_access_event.
10452
10453 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10454 Make functions non-static.
10455
104562008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10457
10458 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10459 (read_file_name_completion_ignore_case, insert_default_directory)
10460 (Qdefault_directory): Move to minibuffer.el.
10461 (Fread_file_name): Call the new `read-file-name' instead.
10462
104632008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10464
10465 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10466 Make function non-static.
10467 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10468 Remove function.
10469 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10470 Move to mactoolbox.c.
10471 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10472
10473 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10474 (mac_rect_make): New macro.
10475
10476 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10477 instead of float.
10478 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10479 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10480 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10481 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10482 CGRectMake.
10483 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10484 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10485 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10486 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10487 instead of WindowRef in argument type.
10488 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10489 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10490 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10491 instead of DISPLAY. All uses changed.
10492 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10493 (x_calc_absolute_position): Simplify so as not to use
10494 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10495
10496 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10497 instead of WindowRef in argument type.
10498 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10499 [TARGET_API_MAC_CARBON]: Remove externs.
10500 (create_apple_event, mac_event_parameters_to_lisp)
10501 [TARGET_API_MAC_CARBON]: Add externs.
10502
10503 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10504 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10505 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10506 is clicked.
10507 (x_activate_menubar): Remove extern for saved_menu_event_location.
10508 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10509 Move from mac.c.
10510
105112008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10512
10513 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10514 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10515
105162008-04-23 Jason Rumney <jasonr@gnu.org>
10517
10518 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10519 attributes only for local files.
10520
10521 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10522 default to Qlocal.
10523
105242008-04-22 Juri Linkov <juri@jurta.org>
10525
10526 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10527 read-buffer-to-switch instead of using the letter "B".
10528
105292008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10530
10531 * fileio.c (Qdefault_directory): New variable.
10532 (Fread_file_name): Use it to pass `dir' to the completion functions.
10533
105342008-04-20 Chong Yidong <cyd@stupidchicken.com>
10535
10536 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10537
105382008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10539
10540 * keyboard.c (Vpre_help_message): Remove.
10541 (show_help_echo): Remove default C code.
10542
10543 * dired.c (directory_files_internal, file_name_completion):
10544 Only call ENCODE_FILE if the string is indeed decoded.
10545
105462008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10547
10548 * Makefile.in (TOOLKIT_DEFINES): Remove.
10549 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10550
105512008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10552
10553 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10554 (mactoolbox.o): New target.
10555
10556 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10557 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10558
10559 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10560 Use mac_set_frame_window_background instead of XSetWindowBackground.
10561 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10562 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10563 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10564 instead of SetWindowTitleWithCFString.
10565 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10566 Move function to mactoolbox.c.
10567 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10568 Use mac_set_window_modified instead of SetWindowModified.
10569 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10570 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10571 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10572 FrontNonFloatingWindow. Use mac_activate_window instead of
10573 ActivateWindow. Use mac_active_non_floating_window instead of
10574 ActiveNonFloatingWindow.
10575 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10576 Use mac_show_hourglass and mac_hide_hourglass.
10577 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10578 instead of GetGlobalMouse.
10579 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10580 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10581 Use mac_bring_window_to_front instead of BringToFront.
10582 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10583 mactoolbox.c.
10584 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10585 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10586 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10587 mactoolbox.c.
10588
10589 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10590 (XtPointer): Move typedef from macmenu.c.
10591 (enum button_type): Move enum from macmenu.c.
10592 (widget_value): Move typedef from macmenu.c.
10593 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10594 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10595 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10596 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10597 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10598 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10599 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10600 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10601 (Selection): Move typedef from macselect.c.
10602 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10603 macterm.c.
10604 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10605 (mac_is_window_collapsed, mac_bring_window_to_front)
10606 (mac_send_window_behind, mac_hide_window, mac_show_window)
10607 (mac_collapse_window, mac_front_non_floating_window)
10608 (mac_active_non_floating_window, mac_activate_window)
10609 (mac_move_window_structure, mac_move_window, mac_size_window)
10610 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10611
10612 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10613 (enum mac_menu_kind): Move enum to mactoolbox.c.
10614 (min_menu_id): Move variable to mactoolbox.c.
10615 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10616 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10617 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10618 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10619 [TARGET_API_MAC_CARBON]: Likewise.
10620 (XtPointer): Move typedef to macgui.h.
10621 (enum button_type): Move enum to macgui.h.
10622 (widget_value): Move typedef to macgui.h.
10623 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10624 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10625 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10626 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10627 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10628 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10629 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10630 (popup_activated_flag): Make variable non-static.
10631 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10632 (add_menu_item, fill_menu, dispose_menus):
10633 Move functions to mactoolbox.c.
10634 (restore_show_help_function, menu_target_item_handler)
10635 (install_menu_target_item_handler, mac_handle_dialog_event)
10636 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10637 [TARGET_API_MAC_CARBON]: Likewise.
10638 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10639 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10640 (find_and_call_menu_selection, name_is_separator): Make function
10641 non-static.
10642 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10643 to mactoolbox.c.
10644 (set_frame_menubar): Don't call install_menu_quit_handler.
10645 (menu_item_selection): New variable.
10646 (mac_menu_show): Use create_and_show_popup_menu.
10647 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10648 selection but set variable menu_item_selection. All uses changed.
10649 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10650 Call install_menu_quit_handler. Move to mactoolbox.c.
10651
10652 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10653 (Selection): Move typedef to macgui.h.
10654 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10655 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10656 Make variables non-static.
10657 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10658 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10659 Make functions non-static.
10660 (Vmac_service_selection) [MAC_OSX]: Likewise.
10661 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10662 (mac_valid_selection_target_p, mac_clear_selection)
10663 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10664 (mac_put_selection_value, mac_selection_has_target_p)
10665 (mac_get_selection_value, mac_get_selection_target_list)
10666 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10667 Move functions to mactoolbox.c.
10668 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10669 Likewise.
10670 (copy_scrap_flavor_data, mac_handle_service_event)
10671 (install_service_handler) [MAC_OSX]: Likewise.
10672 (syms_of_macselect) <Vmac_dnd_known_types>:
10673 Use mac_dnd_default_known_types.
10674
10675 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10676 Move to mactoolbox.c.
10677 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10678 (Fx_selection_owner_p): Add EXFUN.
10679 (install_window_handler, remove_window_handler, XSetWindowBackground):
10680 Remove externs.
10681 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10682 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10683 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10684 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10685 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10686 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10687 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10688 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10689 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10690 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10691 (mac_valid_selection_target_p, mac_clear_selection)
10692 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10693 (mac_put_selection_value, mac_selection_has_target_p)
10694 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10695 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10696 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10697 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10698 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10699 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10700 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10701 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10702 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10703
10704 * mactoolbox.c: New file.
10705
107062008-04-18 Jason Rumney <jasonr@gnu.org>
10707
10708 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10709
107102008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10711
10712 * character.c (Fmultibyte_char_to_unibyte):
10713 Return latin1 chars unchanged.
10714
10715 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10716 relocated if it points to `name'.
10717
107182008-04-17 Kenichi Handa <handa@m17n.org>
10719
10720 * data.c (Faset): Allow setting a multibyte character in an
10721 ASCII-only unibyte string.
10722
10723 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10724
107252008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10726
10727 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10728 done in config.h.
10729
107302008-04-16 Juanma Barranquero <lekktu@gmail.com>
10731
10732 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10733 (Fchar_direction): Add usage in the docstring.
10734
107352008-04-15 Chong Yidong <cyd@stupidchicken.com>
10736
10737 * keyboard.c (read_key_sequence): Remove always-true checks.
10738
107392008-04-14 Jason Rumney <jasonr@gnu.org>
10740
10741 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10742 compatibility struct, for better underline positioning.
10743
107442008-04-13 David Hansen <david.hansen@gmx.net>
10745
10746 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10747 string.
10748
107492008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10750
10751 * m/hp800.h (XUINT, XSET): Remove.
10752
107532008-04-12 Juanma Barranquero <lekktu@gmail.com>
10754
10755 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10756 previous change.
10757
107582008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10759
10760 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10761 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10762
107632008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10764
10765 * keymap.h (map_keymap_canonical): Declare.
10766 * xmenu.c (single_keymap_panes): Use it.
10767
107682008-04-11 Glenn Morris <rgm@gnu.org>
10769
10770 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10771 set the target's value to that of the alias.
10772
107732008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10774
10775 * term.c (set_tty_color_mode): Left over typo.
10776
107772008-04-10 Michael Albinus <michael.albinus@gmx.de>
10778
10779 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10780 only after check for file name handler functions. Signal, when
10781 native functionality is not supported.
10782 (syms_of_fileio): Declare it unconditionally.
10783
107842008-04-10 Jason Rumney <jasonr@gnu.org>
10785
10786 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10787 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10788
10789 * w32.c (logon_network_drive): Also logon to remote drives that
10790 are mapped to drive letters.
10791
107922008-04-10 Glenn Morris <rgm@gnu.org>
10793
10794 * xdisp.c (truncate-partial-width-windows): Doc fix.
10795
107962008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10797
10798 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10799 Move functions to minibuffer.el.
10800 (syms_of_fileio): Don't declare them.
10801
108022008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10803
10804 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10805 (syms_of_minibuf): Remove its initialization.
10806
10807 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10808
108092008-04-09 Juanma Barranquero <lekktu@gmail.com>
10810
10811 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10812
108132008-04-09 Jason Rumney <jasonr@gnu.org>
10814
10815 * makefile.w32-in (distclean): Delete makefile too.
10816 (maintainer-clean): New target.
10817
10818 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10819
10820 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10821 for new font backend and composite cases.
10822
108232008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10824
10825 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10826 Most of the code moved to run_timers.
10827 (do_pending_atimers): Call run_timers.
10828 (run_timers): New function.
10829
10830 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10831 run atimers.
10832
10833 * process.c (wait_reading_process_output): The same as above.
10834
108352008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10836
10837 * minibuf.c (last_exact_completion): Remove variable.
10838 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10839 (complete_and_exit_1, complete_and_exit_2)
10840 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10841 (Fdisplay_completion_list, display_completion_list_1)
10842 (Fminibuffer_completion_help, Fself_insert_and_exit)
10843 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10844 minibuffer.el.
10845 (syms_of_minibuf): Remove corresponding initializations.
10846
10847 * keyboard.c (Qdeactivate_mark): New var.
10848 (command_loop_1): Use it to call `deactivate-mark'.
10849 (syms_of_keyboard): Initialize it.
10850
10851 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10852 to another frame.
10853 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10854 Don't call set_tty_color_mode.
10855 (store_frame_param): Reset previous_frame rather than call
10856 set_tty_color_mode.
10857 * term.c (set_tty_color_mode): Rewrite.
10858 * dispextern.h (set_tty_color_mode): New type.
10859 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10860
108612008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10862
10863 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10864 for generic chars, which do not exist any more in emacs-unicode.
10865
108662008-04-08 Michael Albinus <michael.albinus@gmx.de>
10867
10868 * coding.c (detect_coding_emacs_mule)
10869 (Ffind_operation_coding_system): Fix typo.
10870
108712008-04-08 Jason Rumney <jasonr@gnu.org>
10872
10873 * w32uniscribe.c (SNAME): Extract only symbol name.
10874
10875 * w32font.h (struct w32_metric_cache): New struct.
10876 (w32font_info): Use it.
10877 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10878 (CACHE_BLOCKSIZE): New constants.
10879
10880 * w32font.c (Qja, Qko, Qzh): New symbols.
10881 (syms_of_w32font): Initialise them.
10882 (font_matches_spec): Use them to filter by language.
10883 (recompute_cached_metrics): Remove function.
10884 (compute_metrics, clear_cached_metrics): New functions.
10885 (w32font_encode_char): Use them to manage metric cache.
10886 (w32font_text_extents): Cache metrics for all glyphs on demand.
10887 Delay converting glyph indices to WORD until needed.
10888 (w32font_open_internal): Initialize metric cache to empty.
10889 (registry_to_w32_charset): Charset should always be a symbol.
10890 (fill_in_logfont, list_all_matching_fonts): Family should
10891 always be a symbol.
10892
108932008-04-06 Jason Rumney <jasonr@gnu.org>
10894
10895 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10896 Give up if glyph indices not supported. Use uniscribe obtained
10897 ABC widths for individual metrics. Map glyph clusters back to
10898 characters using fClusterStart flag. Return number of glyphs
10899 produced, not chars processed.
10900 (uniscribe_shape): Map char at FROM to current glyph.
10901
109022008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10903
10904 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10905 Use SetMenuItemHierarchicalMenu.
10906
109072008-04-05 Jason Rumney <jasonr@gnu.org>
10908
10909 * image.c (pbm_load): Allow color values up to 65535.
10910 Throw an error if max_color_idx is outside the supported range.
10911 Report an error when image size is invalid.
10912 Read two bytes at a time when raw images have max_color_idx above 255.
10913
109142008-04-05 Eli Zaretskii <eliz@gnu.org>
10915
10916 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10917 cFileName a file name that includes `?' characters, use the 8+3
10918 alias in cAlternateFileName instead.
10919
109202008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10921
10922 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10923 append "CCL: Quitted" when the CCL program is quitted.
10924 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10925
10926 * ccl.h (struct ccl_program): New member quit_silently.
10927
109282008-04-05 Chong Yidong <cyd@stupidchicken.com>
10929
10930 * search.c (compile_pattern_1): Treat non-nil and non-string of
10931 search-spaces-regexp as nil.
10932
10933 * minibuf.c (Fassoc_string): Tweak docstring.
10934
109352008-04-05 Eli Zaretskii <eliz@gnu.org>
10936
10937 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10938 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10939 2008-03-14 to force inode be positive.
10940
10941 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10942 _S_* ones, since we now use our own sys/stat.h.
10943 (stat, fstat): Don't mangle the inode number.
10944 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10945
109462008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10947
10948 * frame.h (struct frame): Give one more bit to `visible' since we use
10949 values larger than 1 to indicate obscured frames on ttys.
10950
10951 * keymap.c (Qkeymap_canonicalize): New var.
10952 (Fmap_keymap_internal): New fun.
10953 (describe_map): Use keymap-canonicalize.
10954
10955 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10956 (Fundo_boundary): Set them.
10957 (syms_of_undo): Initialize them.
10958 (record_point): Use them instead of last_point_position*.
10959 (last_undo_buffer): Change type.
10960
109612008-04-04 Jason Rumney <jasonr@gnu.org>
10962
10963 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10964 (recompute_cached_metrics): Don't set ascent and descent per char.
10965
10966 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10967 (uniscribe_check_otf): Add GC protection before consing.
10968 Rearrange loop for counting features.
10969
109702008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10971
10972 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10973 buffer with byte-size of source buffer.
10974
109752008-04-03 Chong Yidong <cyd@stupidchicken.com>
10976
10977 * callint.c (Fcall_interactively): Handle temporary region even
10978 when shift-select-mode is off.
10979
109802008-04-03 Jason Rumney <jasonr@gnu.org>
10981
10982 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10983
109842008-04-03 Kenichi Handa <handa@m17n.org>
10985
10986 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10987 (CATEGORY_MASK_UTF_16): Likewise.
10988 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10989 binary file.
10990 (detect_coding): Add null-byte detection for a binary file.
10991 (detect_coding_system): Likewise.
10992
109932008-04-03 Jason Rumney <jasonr@gnu.org>
10994
10995 * w32uniscribe.c: New file.
10996
10997 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10998
10999 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11000
11001 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11002 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11003 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11004 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11005 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11006 (Qphonetic): New symbols.
11007 (syms_of_w32font): Initialize them.
11008 (font_supported_scripts): Use them.
11009 (w32font_list_family): List all charsets.
11010 (w32font_text_extents, recompute_cached_metrics): Fix metric
11011 calculations.
11012 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11013 Give opentype fonts their own format.
11014 (font_matches_spec): New arguments backend and logfont.
11015 Handle :otf spec for uniscribe backend.
11016 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11017 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11018
11019 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11020 font backend.
11021 (globals_of_w32fns): Initialize uniscribe font backend.
11022
11023 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11024 dependencies.
11025 (w32uniscribe.$(O)): New file to build.
11026 (FONT_OBJ): Include w32uniscribe.$(O).
11027 (LIBS): Add uniscribe libraries.
11028
11029 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11030
110312008-04-02 Chong Yidong <cyd@stupidchicken.com>
11032
11033 * callint.c (Vshift_select_mode): New var.
11034 (Finteractive): Document new ^ spec.
11035 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11036 is present.
11037
11038 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11039 (command_loop_1): Avoid running the direct display versions of
11040 forward-char and backward-char if shift-selection may occur.
11041 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11042 shift-translation takes place.
11043
11044 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11045 avoid clobbering by define-minor-mode.
11046
11047 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11048 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11049
11050 * syntax.c (Fforward_word): Add ^ interactive spec.
11051
11052 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11053 (Fscroll_right): Add ^ interactive spec.
11054
110552008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11056
11057 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11058
11059 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11060
11061 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11062
110632008-03-31 Juri Linkov <juri@jurta.org>
11064
11065 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11066
110672008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11068
11069 * gtkutil.c (xg_set_geometry): Fix indentation.
11070 (xg_resize_outer_widget): Remove.
11071 (x_wm_size_hint_off): Fix indentation.
11072 (xg_frame_set_char_size): Call flush_and_sync after
11073 gtk_window_resize.
11074 (x_wm_set_size_hint): Pass NULL as geometry window to
11075 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11076 Add menu bar and tool bar height to base height.
11077 (xg_update_frame_menubar, free_frame_menubar)
11078 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11079 (update_frame_tool_bar, free_frame_tool_bar):
11080 Change xg_resize_outer_widget to xg_frame_set_char_size.
11081
110822008-03-30 Michael Albinus <michael.albinus@gmx.de>
11083
11084 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11085 (Fdbus_call_method): New parameter TIMEOUT.
11086 (dbus-send-signal): Optimize UNGCPRO call.
11087
110882008-03-29 Juri Linkov <juri@jurta.org>
11089
11090 * window.c (Fdisplay_buffer): Move call to
11091 Vsplit_window_preferred_function out of conditions that check
11092 if window is eligible for vertical splitting.
11093 When Vsplit_window_preferred_function is non-nil, call it and use
11094 its non-nil return value as window. Otherwise, continue doing
11095 vertical splitting using Fsplit_window with arg horflag=nil.
11096 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11097 default value from `split-window' to nil.
11098
110992008-03-29 Juri Linkov <juri@jurta.org>
11100
11101 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11102 for interactive code letters 'b' and 'B'.
11103
111042008-03-29 Eli Zaretskii <eliz@gnu.org>
11105
11106 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11107 multibyte string.
11108
111092008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11110
11111 * keyboard.c (pending_funcalls): New var.
11112 (timer_check): Run it.
11113 (syms_of_keyboard): Initialize it.
11114 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11115 (Vdelete_terminal_functions): New vars.
11116 (syms_of_terminal): Initialize them.
11117 (Fdelete_terminal): Run delete-terminal-functions.
11118 * xdisp.c (safe_eval): Rewrite.
11119 (safe_call2): New fun.
11120 * frame.c (Qdelete_frame_functions): New var.
11121 (syms_of_frame): Initialize it.
11122 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11123 * lisp.h (safe_call2, pending_funcalls): Declare.
11124
111252008-03-28 Andreas Schwab <schwab@suse.de>
11126
11127 * indent.c (Fmove_to_column): Move declaration before statements.
11128
111292008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11130
11131 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11132 (struct frame): Use bit fields for boolean vars.
11133
11134 * process.c (server_accept_connection): Simplify naming.
11135 (emacs_get_tty_pgrp): Use SDATA.
11136
11137 * coding.c (decode_coding_object): Fix last change.
11138
111392008-03-27 Jason Rumney <jasonr@gnu.org>
11140
11141 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11142
111432008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11144
11145 * charset.c (Fdefine_charset_internal): Change the way of
11146 registering charsets in Vcharset_order_list.
11147 (syms_of_charset): Make the charset `eight-bit' supplementary.
11148
111492008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11150
11151 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11152 operations, to avoid having the difference between pointers
11153 overflow.
11154
111552008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11156
11157 * indent.c (check_display_width): New fun.
11158 (scan_for_column): Use it.
11159
11160 * data.c (syms_of_data): Mark most-positive-fixnum and
11161 most-negative-fixnum as constants.
11162
11163 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11164
11165 * indent.c (scan_for_column): Extract from current_column_1.
11166 Merge with the same code from Fmove_to_column.
11167 (current_column_1, Fmove_to_column): Use it.
11168
111692008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11170
11171 * keymap.c (map_keymap_internal): New fun.
11172 (map_keymap): Use it.
11173 (Fmap_keymap_internal): New fun.
11174 (Fmap_keymap): Remove left-out test from before make_save_value.
11175
11176 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11177
11178 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11179 Use XCAR/XCDR.
11180
11181 * process.h (struct Lisp_Process): Remove filter_multibyte.
11182 * process.c (QCfilter_multibyte): Remove.
11183 (setup_process_coding_systems): Don't use filter_multibyte.
11184 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11185 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11186 (Fset_process_filter_multibyte): Change the coding-system to
11187 approximate the previous behavior.
11188 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11189 coding-system.
11190
11191 * coding.c (decode_coding_object): When not decoding into a buffer,
11192 obey the coding system's preference of (uni|multi)byte.
11193
111942008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11195
11196 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11197 every char is changed and has a different byte-length.
11198 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11199 Fix int -> EMACS_INT.
11200
112012008-03-23 David Hansen <david.hansen@gmx.net>
11202
11203 * dbusbind.c (xd_read_message): Remove extra copying of message
11204 strings. Check for NULL `interface' or `member'.
11205
112062008-03-22 Eli Zaretskii <eliz@gnu.org>
11207
11208 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11209 cFileName a file name that includes `?' characters, use the 8+3
11210 alias in cAlternateFileName instead.
11211
112122008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11213
11214 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11215
112162008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11217
11218 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11219 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11220 work on current_buffer only instead (that was already the case
11221 for some of the code anyway).
11222 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11223 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11224 (SET_PT, SET_PT_BOTH): Adjust.
11225 * intervals.h (set_point, temp_set_point, set_point_both)
11226 (temp_set_point_both): Remove redundant declarations.
11227
112282008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11229
11230 * fileio.c (Finsert_file_contents):
11231 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11232 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11233 when buffer != current_buffer anyway.
11234
112352008-03-20 Andreas Schwab <schwab@suse.de>
11236
11237 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11238 as default.
11239
112402008-03-19 Jason Rumney <jasonr@gnu.org>
11241
11242 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11243 (syms_of_w32fns): Initialize them.
11244 (HOURGLASS_ID): New constant.
11245 (x_window_to_frame): Don't check hourglass_window.
11246 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11247 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11248 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11249 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11250 Only change the cursor if hourglass is not active.
11251 (Fx_create_frame): Initialize frame's current_cursor.
11252 (hourglass_atimer): Remove.
11253 (hourglass_started): New function.
11254 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11255 (show_hourglass): Adapt to w32, changing argument to frame.
11256
11257 * w32term.h (struct w32_output): Remove hourglass_window.
11258 Add current_cursor.
11259
11260 * eval.c (call_debugger, Fsignal):
11261 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11262 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11263 (Fexecute_extended_command, cancel_hourglass_unwind):
11264 * minibuf.c (read_minibuf):
11265 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11266
112672008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11268
11269 * window.c (run_funs): New fun.
11270 (run_window_configuration_change_hook): Use it to run the buffer-local
11271 and the global part of the hook.
11272
11273 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11274 (unwind_format_mode_line): Restore selected window.
11275 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11276
112772008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11278
11279 * editfns.c (Fchar_equal): Check they are valid characters.
11280
11281 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11282
112832008-03-17 Andreas Schwab <schwab@suse.de>
11284
11285 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11286 against a charset.
11287
11288 * lisp.h (Fbuffer_list): Declare.
11289
112902008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11291
aac0c6e3
MR
11292 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11293 handlebox_widget is != 0.
11294
112952008-03-16 Juri Linkov <juri@jurta.org>
11296
11297 * callint.c (Fcall_interactively): For interactive code letters
11298 'b' and 'B' put the buffer list into the list of default "future"
11299 values of the minibuffer.
11300
113012008-03-16 Andreas Schwab <schwab@suse.de>
11302
11303 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11304 modifiers.
11305
11306 * regex.c (re_match_2_internal): Correct matching of a charset
11307 against latin-1 characters.
11308
113092008-03-16 Kenichi Handa <handa@m17n.org>
11310
11311 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11312 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11313 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11314 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11315 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11316 CHAR_STRING_ADVANCE.
11317 (produce_chars): Fix for the case that the source and the
11318 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11319 instead of CHAR_STRING_ADVANCE.
11320 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11321 STRING_CHAR_ADVANCE.
11322
113232008-03-15 Andreas Schwab <schwab@suse.de>
11324
11325 * regex.c (re_match_2_internal): Correct matching of eight bit
11326 characters in unibyte strings.
11327
113282008-03-15 Martin Rudalics <rudalics@gmx.at>
11329
11330 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11331 at end of range when it coincides with the end of the buffer.
11332
113332008-03-14 Eli Zaretskii <eliz@gnu.org>
11334
11335 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11336
11337 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11338
113392008-03-14 Jason Rumney <jasonr@gnu.org>
11340
11341 * editfns.c (initial_tz): New variable.
11342 (syms_of_editfns): Initialize it.
11343 (Fset_time_zone_rule): Set it when first called.
11344 Use it when TZSTRING is nil.
11345
11346 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11347 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11348 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11349 (globals_of_w32fns): Initialize them.
11350 (compute_tip_xy): Use them to position tooltips.
11351
113522008-03-14 Glenn Morris <rgm@gnu.org>
11353
11354 * emacs.c (main): Revert previous change.
11355 (standard_args): Revert -internal-script back to -scriptload,
11356 and remove the long-option form.
11357
113582008-03-13 Glenn Morris <rgm@gnu.org>
11359
11360 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11361 Remove option -enable-font-backend.
11362
113632008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11364
11365 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11366
113672008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11368
11369 * xterm.c (x_connection_closed): For GTK: If this is the last
11370 terminal just exit without closing the display.
11371
113722008-03-11 Jason Rumney <jasonr@gnu.org>
11373
11374 * w32font.c (w32font_full_name): Use floor to round.
11375
f0131492 113762008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11377
11378 * sound.c (alsa_configure): Declare vol at beginning of block.
11379
11380 * fontset.c (Ffontset_info): Remove extra semicolon.
11381
113822008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11383
11384 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11385 size of resulting string.
11386
113872008-03-10 Jason Rumney <jasonr@gnu.org>
11388
11389 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11390
113912008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11392
11393 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11394 Don't pretend as if characters with display property haven't been
11395 consumed for string-replacing-string case.
11396
113972008-03-08 Kim F. Storm <storm@cua.dk>
11398
11399 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11400 (get_next_display_element, next_element_from_string)
11401 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11402
114032008-03-08 Andreas Schwab <schwab@suse.de>
11404
11405 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11406
114072008-03-06 Jason Rumney <jasonr@gnu.org>
11408
11409 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11410 when charset not specified. Only translate ANSI to unicode when
11411 font_type is truetype.
11412 (w32font_coverage_ok): New function.
11413 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11414
114152008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11416
11417 * lread.c (Fread_char): Resolve modifiers.
11418 (Fread_char_exclusive): Likewise.
11419
11420 * character.c (char_resolve_modifier_mask): New function.
11421 (char_string): Use char_resolve_modifier_mask.
11422 (Fchar_resolve_modifiers): New function.
11423 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11424 function.
11425
114262008-03-04 Jason Rumney <jasonr@gnu.org>
11427
11428 * makefile.w32-in: Always include w32font.c in the build.
11429 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11430
114312008-03-04 Andreas Schwab <schwab@suse.de>
11432
11433 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11434 (versionclean): Likewise.
11435
114362008-03-04 Juanma Barranquero <lekktu@gmail.com>
11437
11438 * .cvsignore: Add oo.
11439
114402008-03-03 Andreas Schwab <schwab@suse.de>
11441
11442 * coding.c (decode_coding_object): Inhibit gap shrinking while
11443 decoding in place.
11444
114452008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11446
11447 * w32term.c: Remove unused include "gnu.h".
11448 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11449
11450 * gnu.h: Rename to ...
11451 * emacs-icon.h: ... this.
11452 * xterm.c: Use emacs-icon.h instead of gnu.h.
11453 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11454
114552008-03-03 Juanma Barranquero <lekktu@gmail.com>
11456
11457 * w32font.c: Include math.h.
11458
114592008-03-03 Jason Rumney <jasonr@gnu.org>
11460
11461 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11462 Compute options separately.
11463 (w32font_open_internal): Set glyph_idx before caching metrics.
11464
11465 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11466 Define if system headers don't.
11467 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11468 (w32font_encode_char): Don't declare here.
11469
11470 * w32font.c (Quniscribe, QCformat): New symbols.
11471 (syms_of_w32font): Define them.
11472 (w32font_has_char): Indicate uncertainty.
11473 (w32font_encode_char): Encode as glyph point. Make static.
11474 (recompute_cached_metrics): New function.
11475 (w32font_open_internal): Use it. Set font to use glyph points
11476 initially. Set format based on type of font.
11477 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11478 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11479 on it. Set format based on information available here.
11480 (add_font_entity_to_list): Identify backend based on opentype_only.
11481
114822008-03-02 Andreas Schwab <schwab@suse.de>
11483
11484 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11485
11486 * coding.c (decode_coding_big5, produce_chars):
11487 Fix typos in last change.
11488
114892008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11490
11491 * gnu.h: New icon.
11492
114932008-03-02 Kenichi Handa <handa@m17n.org>
11494
11495 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11496 `dos', don't decode '\r' if that is the last in the source.
11497 (decode_coding_utf_16, decode_coding_emacs_mule)
11498 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11499 (decode_coding_raw_text, decode_coding_charset): Likewise.
11500 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11501
115022008-03-01 Jason Rumney <jasonr@gnu.org>
11503
11504 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11505
115062008-03-01 Kim F. Storm <storm@cua.dk>
11507
11508 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11509
115102008-03-01 Jason Rumney <jasonr@gnu.org>
11511
11512 * w32font.c (w32font_full_name): New function.
11513 (w32font_open_internal): Use it.
11514
115152008-03-01 Kim F. Storm <storm@cua.dk>
11516
11517 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11518
115192008-03-01 Jason Rumney <jasonr@gnu.org>
11520
11521 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11522
115232008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11524
11525 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11526 xg_frame_resized when the event is for the edit widget.
11527
11528 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11529
11530 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11531 set_char_size.
11532 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11533 operations on widgets here. Just set frame size if needed.
11534 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11535 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11536 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11537 the whole frame.
11538 (xg_create_tool_bar): Move attachment of the tool bar to
11539 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11540 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11541
115422008-03-01 Jason Rumney <jasonr@gnu.org>
11543
11544 * w32fns.c (w32_msg_pump): Disable debug code.
11545
115462008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11547
11548 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11549
115502008-02-29 Chong Yidong <cyd@stupidchicken.com>
11551
11552 * xdisp.c (next_overlay_string): Don't set
11553 overlay_strings_at_end_processed_p if we're currently reading from
11554 a display string.
11555
115562008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11557
11558 * xdisp.c (get_overlay_strings_1): Fix typo.
11559
115602008-02-29 Chong Yidong <cyd@stupidchicken.com>
11561
11562 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11563
115642008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11565
11566 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11567
11568 * xdisp.c (display_mode_element): Cancel the previous change.
11569 (decode_mode_spec): Likewise.
11570 (handle_auto_composed_prop): Don't make composition if it->string
11571 is a string.
11572
115732008-02-27 Kim F. Storm <storm@cua.dk>
11574
11575 * lisp.h (GLYPH): Change type from int to struct with separate char
11576 and face_id members.
11577 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11578 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11579 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11580 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11581 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11582 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11583 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11584 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11585 handle new Lisp glyph code encoding, either an integer or a cons.
11586
11587 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11588 (GLYPH_ALIAS): Delete.
11589 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11590 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11591 (GLYPH_FROM_CHAR): Replace macro by ...
11592 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11593
11594 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11595 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11596 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11597 (GLYPH_INVALID_P): New macro.
11598 (spec_glyph_lookup_face): Update prototype.
11599
11600 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11601 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11602 new glyph code encoding.
11603 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11604 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11605
11606 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11607 Adapt to new glyph type and new glyph code encoding.
11608
11609 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11610
11611 * indent.c (current_column, current_column_1, Fmove_to_column)
11612 (compute_motion): Adapt to new glyph code encoding.
11613
11614 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11615
116162008-02-27 Chong Yidong <cyd@stupidchicken.com>
11617
11618 * process.c (wait_reading_process_output): Check for window
11619 changes caused by timers.
11620 Suggested by Johan Bockgård.
11621
116222008-02-27 Glenn Morris <rgm@gnu.org>
11623
11624 * emacs.c (USAGE1): Add `--disable-font-backend'.
11625
116262008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11627
11628 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11629 is made to the buffer.
11630
116312008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11632
11633 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11634 (face_at_string_position):
11635 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11636 (face_at_string_position):
11637 * xdisp.c (display_string, next_overlay_change):
11638 * buffer.h (overlays_at):
11639 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11640 Update callers.
11641
116422008-02-26 Chong Yidong <cyd@stupidchicken.com>
11643
11644 * editfns.c (Fformat): Doc fix.
11645
116462008-02-26 Juanma Barranquero <lekktu@gmail.com>
11647
11648 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11649 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11650 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11651
116522008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11653
11654 * buffer.c (Fbuffer_swap_text): New function.
11655 (syms_of_buffer): Defsubr it.
11656
116572008-02-25 Chong Yidong <cyd@stupidchicken.com>
11658
11659 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11660
116612008-02-25 Jason Rumney <jasonr@gnu.org>
11662
11663 * w32font.c (w32font_draw): Draw one character at a time when padding.
11664
116652008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11666
11667 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11668 Handle a nil arg. Use run_window_configuration_change_hook.
11669 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11670 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11671 Use run_window_configuration_change_hook.
11672
116732008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11674
11675 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11676 1-pixel width.
11677
116782008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11679
11680 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11681 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11682 if the glyph in the font is zero pixel with.
11683
11684 * dispextern.h (struct glyph_string): New member padding_p.
11685
11686 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11687
11688 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11689
11690 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11691
11692 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11693
11694 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11695
116962008-02-25 Jason Rumney <jasonr@gnu.org>
11697
11698 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11699
117002008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11701
11702 Allow fine-grained image-cache flushing.
11703 * dispextern.h (struct image): Add `dependencies' field.
11704 (clear_image_caches): Change arg to Lisp_Object.
11705 * image.c (make_image): Initialize `dependencies' field.
11706 (clear_image_cache): Change arg to allow fine-grained flushing.
11707 Perform the flush even if image-cache-eviction-delay is nil.
11708 (clear_image_caches): Change arg to Lisp_Object.
11709 (Fclear_image_cache): Expand meaning of the argument.
11710 (mark_image): Mark `dependencies' field.
11711 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11712 (lface_hash): Use XHASH rather than XFASTINT.
11713 (face_at_buffer_position): Fix int -> EMACS_INT position.
11714 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11715 (select_frame_for_redisplay): Remove code duplication.
11716 (redisplay_internal): Adapt arg to call to clear_image_caches.
11717
117182008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11719
11720 * s/vms4-0.h:
11721 * s/vms4-2.h:
11722 * s/vms4-4.h:
11723 * s/vms5-5.h: Remove, unused.
11724
11725 * s/irix5-2.h:
11726 * s/irix6-0.h:
11727 * s/riscos5.h:
11728 * s/mach-bsd4-3.h:
11729 * m/mips4.h: Remove files for obsolete systems.
11730
11731 * Makefile.in:
11732 * filelock.c:
11733 * unexmips.c:
11734 * m/hp9000s300.h:
11735 * m/iris4d.h:
11736 * s/aix3-1.h:
11737 * s/hpux.h:
11738 * s/msdos.h:
11739 * s/usg5-0.h:
11740 * s/usg5-2-2.h:
11741 * s/usg5-2.h:
11742 * s/usg5-3.h: Remove references to obsolete variables.
11743
11744 * s/irix5-0.h: Remove, move all the contents ...
11745 * s/irix6-5.h: ... here. Simplify.
11746 * config.in: Regenerate.
11747
117482008-02-24 Jason Rumney <jasonr@gnu.org>
11749
11750 * w32term.c (x_draw_glyph_string_background): Clear the background
11751 manually when cleartype is in use.
11752 (x_draw_glyph_string_foreground): Draw text transparently when
11753 cleartype is in use.
11754
11755 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11756 a font into it unless we have to.
11757
117582008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11759
11760 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11761 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11762
aac0c6e3
MR
117632008-02-18 Jason Rumney <jasonr@gnu.org>
11764
11765 * w32fns.c (Fw32_shell_execute): Encode parameters.
11766
117672008-02-09 Eli Zaretskii <eliz@gnu.org>
11768
11769 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11770
117712008-02-05 Juanma Barranquero <lekktu@gmail.com>
11772
11773 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11774
117752008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11776
11777 * xterm.c (x_set_offset): Don't change the gravity if
11778 CHANGE_GRAVITY is -1.
11779
117802008-02-23 Chong Yidong <cyd@stupidchicken.com>
11781
11782 * fileio.c (auto_save_error_occurred): New var.
11783 (auto_save_error): Set it.
11784 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11785 error occurred.
11786
117872008-02-23 Eli Zaretskii <eliz@gnu.org>
11788
11789 * w32.c (globals_of_w32): Add initializations for
11790 g_b_init_get_sid_sub_authority and
11791 g_b_init_get_sid_sub_authority_count.
11792
117932008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11794
11795 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11796 (font_parse_xlfd): Use them for sanity check.
11797 (Finternal_set_font_style_table): Make sure the table is bijective.
11798
11799 Consolidate the image_cache to the terminal struct.
11800 * termhooks.h (P_): Remove redundant def.
11801 (struct terminal): New field `image_cache'.
11802 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11803 of FRAME_X_IMAGE_CACHE.
11804 * xterm.h (struct x_display_info): Remove image_cache field.
11805 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11806 * w32term.h (struct w32_display_info): Remove image_cache field.
11807 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11808 * macterm.h (struct mac_display_info): Remove image_cache field.
11809 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11810 * xterm.c (x_term_init):
11811 * w32term.c (w32_term_init):
11812 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11813 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11814 Remove declarations.
11815 (clear_image_caches, mark_image_cache): New declarations.
11816 * xfaces.c (clear_face_cache):
11817 * xdisp.c (redisplay_internal): Use clear_image_caches.
11818 * image.c (clear_image_cache): Don't check that a frame is on
11819 a window-system before checking if it shares the same cache.
11820 (clear_image_caches): New function.
11821 (Fclear_image_cache): Use it.
11822 (mark_image): Move from allo.c.
11823 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11824 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11825 (mark_object): Don't call mark_image_cache for frames.
11826 (mark_terminals): Call mark_image_cache.
11827
11828 * lisp.h (Fdelete_terminal): Declare.
11829
11830 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11831 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11832 wrong_type_argument.
11833
118342008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11835
11836 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11837 malayalam.el, and tamil.el. Add sinhala.el.
11838
118392008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11840
11841 * xterm.c (x_connection_closed): Consolidate identical tests.
11842 (x_delete_terminal): Don't crash if called via x_connection_closed.
11843
118442008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11845
11846 * xdisp.c (decode_mode_spec): New arg string.
11847 (display_mode_element): Adjust for the above change.
11848
118492008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11850
11851 * callint.c (Fcall_interactively): Use AREF.
11852
118532008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11854
11855 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11856
118572008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11858
11859 * xfns.c (Fx_show_tip): Set string to " " if empty.
11860
118612008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11862
11863 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11864 with Qt.
11865
118662008-02-17 Kenichi Handa <handa@m17n.org>
11867
11868 * ftfont.c (ftfont_shape): Return Lispy number.
11869
11870 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11871 for GCs.
11872 (Finternal_set_font_selection_order): Call font_update_sort_order
11873 only when enable_font_backend is set.
11874 (realize_x_face): Set face->font_info to that of default face only
11875 when enable_font_backend is set.
11876
11877 * xdisp.c (handle_composition_prop): Set it->c to the fist
11878 character of the composed region.
11879 (fill_composite_glyph_string): Set base_face->font_info to
11880 s->font_info. Get a face for ascii from base_face->ascii_face.
11881 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11882 with a face already decided.
11883 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11884 non-negative.
11885 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11886 call font_prepare_composition unconditionally.
11887
11888 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11889
11890 * xterm.h (struct x_display_info): New member font.
11891
11892 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11893 (x_set_mouse_face_gc, x_new_font): Likewise.
11894 (x_term_init): Setup display_info->font.
11895 (x_delete_terminal): Free display_info->font.
11896
11897 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11898
11899 * ftxfont.c (ftxfont_default_fid): Delete it.
11900 (ftxfont_open): Set xfont->fid to 0.
11901 (ftxfont_end_for_frame): Clear data specific to the frame and the
11902 font-driver.
11903
11904 * xftfont.c (xftfont_default_fid): Delete it.
11905 (xftfont_open): Set xfont->fid to 0.
11906
11907 * fontset.c (FONTSET_OBJLIST): New macro.
11908 (fontset_find_font): Update font-object list of the fontset.
11909 (free_realized_fontset): New function.
11910 (free_face_fontset): Call free_realized_fontset.
11911 (Ffont_info): Call font_close_object only when enable_font_backend
11912 is set.
11913
11914 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11915 [HAVE_NTGUI]: Include w32term.h.
11916 [MAC_OS]: Include macterm.ch.
11917 (font_otf_ValueRecord): Use make_number.
11918 (font_finish_cache): Fix handling of reference count.
11919 (font_clear_cache): Update num_fonts.
11920 (font_open_entity): Update smallest_char_width and
11921 smallest_font_height of the frame.
11922 (font_close_object): Update num_fonts.
11923 (Fclear_font_cache): Fix finding the target cache data.
11924
119252008-02-16 Glenn Morris <rgm@gnu.org>
11926
11927 * fontset.c (Finternal_char_font): Fix compilation warning.
11928
119292008-02-16 Eli Zaretskii <eliz@gnu.org>
11930
11931 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11932 instead of char arrays. Enlarge the size of array passed to
11933 get_token_information.
11934
11935 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11936 warnings.
11937
119382008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11939
11940 * .gdbinit: Don't set `args', it breaks gdb --args.
11941
119422008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11943
11944 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11945 within a narrowed buffer.
11946
119472008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11948
11949 * coding.c (decode_coding_object, encode_coding_object):
11950 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11951
119522008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11953
11954 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11955 hardcoding 1.
11956 (detect_coding_system):
11957 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11958 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11959 * insdel.c (insert_from_gap):
11960 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11961 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11962 (string_to_multibyte):
11963 * character.c (chars_in_text, multibyte_chars_in_text):
11964 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11965
11966 * character.h (FETCH_STRING_CHAR_ADVANCE)
11967 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11968 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11969 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11970
11971 * casefiddle.c (casify_region): Only call after-change and composition
11972 functions on the part of the region that was changed.
11973
11974 * keyboard.c (read_avail_input):
11975 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11976
119772008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11978
11979 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11980 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11981
119822008-02-11 Juanma Barranquero <lekktu@gmail.com>
11983
11984 * w32menu.c (push_submenu_start, push_submenu_end)
11985 (push_left_right_boundary, push_menu_pane, push_menu_item):
11986 * keyboard.c (read_key_sequence): Don't pass args with side effects
11987 to AREF, it fails when compiling with -DENABLE_CHECKING.
11988
119892008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11990
11991 * Makefile.in (${lispsource}international/charprop.el):
11992 Delete this target.
11993
11994 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11995 emacs-unicode-2.
11996
119972008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11998
11999 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12000
120012008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12002
12003 * frame.c (Qnoelisp): New symbol.
12004 (syms_of_frame): Initialize it.
12005 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12006 harmless Elisp code, from a strong `force' from x_connection_closed.
12007 * frame.h (Qnoelisp): Declare.
12008 * xterm.c (x_connection_closed): Pass `noelisp'.
12009
12010 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12011 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12012 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12013 rather than `int' for the type of `type'.
12014
120152008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12016
12017 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12018
12019 * Makefile.in (GNUC): Remove support for gcc-1.x.
12020
120212008-02-10 Richard Stallman <rms@gnu.org>
12022
12023 * lisp.h (ASET): Use AREF, not ASLOT.
12024
120252008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12026
12027 * lisp.h (ASET): Check bounds.
12028
120292008-02-10 Glenn Morris <rgm@gnu.org>
12030
12031 * buffer.c (mode-name): Doc fix.
12032
120332008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12034
12035 * Makefile.in:
12036 * emacs.c:
12037 * gmalloc.c:
12038 * keyboard.c:
12039 * lisp.h:
12040 * m/ibm370aix.h:
12041 * process.c:
12042 * regex.c:
12043 * s/hpux.h:
12044 * sysdep.c:
12045 * sysselect.h:
12046 * systty.h:
12047 * unexec.c:
12048 * w32term.c:
12049 * xsmfns.c:
12050 * xterm.c: Remove code that deals with obsolete variables.
12051
12052 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12053
12054 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12055 nothing else needs it anymore.
12056
120572008-02-09 Eli Zaretskii <eliz@gnu.org>
12058
12059 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12060 instead of unibyte_char_to_multibyte.
12061
120622008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12063
12064 * s/gnu-linux.h: Remove commented out code.
12065
12066 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12067
12068 * Makefile.in: Update what RMS says about using autoconf.
12069 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12070 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12071 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12072 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12073
120742008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12075
12076 * keymap.c (Fkey_description): Move side effect outside of macro call.
12077
12078 * xfaces.c (Finternal_make_lisp_face):
12079 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12080
12081 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12082 (syms_of_fontset): Use ASET.
12083
12084 * fns.c (concat): Move side effect outside of macro call.
12085 (hash_clear): Use ASET.
12086
120872008-02-08 Richard Stallman <rms@gnu.org>
12088
12089 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12090 If FORCE, and frame has a surrogate minibuffer for another frame,
12091 delete the other frame first.
12092
120932008-02-07 Timo Savola <timo.savola@iki.fi>
12094
12095 * xterm.c (x_detect_focus_change): Handle embed client message.
12096 (handle_one_xevent): Ditto.
12097 (handle_one_xevent): If embedded and we get a button press/release,
12098 request focus.
12099 (xembed_set_info, xembed_send_message): New functions.
12100 (x_make_frame_visible): Call xembed_set_info if embedded.
12101 (x_make_frame_invisible): Call xembed_set_info if embedded.
12102 (x_term_init): Initialize Xatom_XEMBED.
12103 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12104 (x_iconify_frame): Ditto.
12105
12106 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12107 (enum xembed_info, enum xembed_message, enum xembed_focus)
12108 (enum xembed_modifier, enum xembed_accelerator): New.
12109 (xembed_set_info, xembed_send_message): Declare.
12110 (FRAME_X_EMBEDDED_P): New.
12111
12112 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12113 gtk_plug_new.
12114
12115 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12116 window ID of a frame.
12117 (x_window): Reparent frame if embedded.
12118 (Fx_create_frame): Don't set border width if embedded.
12119
12120 * emacs.c (USAGE3): Add --parent-id.
12121 (standard_args): Ditto.
12122
121232008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12124
12125 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12126
121272008-02-07 Jim Meyering <meyering@redhat.com>
12128
12129 Use "do...while (0)", not "if (1)...else" in macro definitions.
12130 The latter provokes a warning from gcc about the empty else, when
12131 followed by ";". Also, without that trailing semicolon, it would
12132 silently swallow up any following statement.
12133 * syntax.h (SETUP_SYNTAX_TABLE)
12134 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12135 * buffer.h (DECODE_POSITION): Likewise.
12136 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12137 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12138 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12139 (FETCH_CHAR_ADVANCE): Likewise.
12140 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12141
121422008-02-07 Jim Meyering <meyering@redhat.com>
12143
12144 * lread.c [lint]: Don't include <sys/inode.h>.
12145
121462008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12147
12148 * xselect.c (x_handle_dnd_message):
12149 * xmenu.c (digest_single_submenu, xmenu_show):
12150 * xdisp.c (with_echo_area_buffer_unwind_data)
12151 (format_mode_line_unwind_data, unwind_format_mode_line)
12152 (display_menu_bar):
12153 * eval.c (Ffetch_bytecode):
12154 * doc.c (store_function_docstring):
12155 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12156 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12157 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12158
121592008-02-07 Kenichi Handa <handa@m17n.org>
12160
12161 * ftxfont.c (ftxfont_open): Don't set
12162 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12163
12164 * ftfont.c (ftfont_open): Fix previous change.
12165
121662008-02-06 Jason Rumney <jasonr@gnu.org>
12167
12168 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12169 Use cached metrics for ASCII characters.
12170 (w32font_open_internal): Don't set font's owning_frame.
12171 Cache metrics for ASCII characters.
12172
12173 * w32font.h (struct w32font_info): Add ascii_metrics.
12174 Remove owning_frame.
12175
121762008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12177
12178 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12179 to negative value.
12180
12181 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12182
12183 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12184
12185 * charset.c (syms_of_charset): Set QCtest and Qeq.
12186
121872008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12188
12189 * process.c (Fstart_process):
12190 * callproc.c (Fcall_process): Handle the case where
12191 Funhandled_file_name_directory returns nil.
12192
12193 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12194 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12195 * font.c (check_gstring): Use them and AREF to access the vector before
12196 we know it's really a gstring.
12197 (Ffont_shape_text): Fix typo.
46e722a9 12198 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12199
12200 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12201 Declare.
12202
12203 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12204
122052008-02-05 Jason Rumney <jasonr@gnu.org>
12206
12207 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12208 Set smallest_font_height and smallest_char_width in display info.
12209
122102008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12211
12212 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12213
122142008-02-05 Miles Bader <miles@gnu.org>
12215
12216 * xfaces.c (get_lface_attributes, merge_named_face)
12217 (lookup_named_face, lookup_derived_face, realize_named_face):
12218 Revert 2008-02-01 change by cyd@stupidchicken.com.
12219
122202008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12221
12222 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12223 fallback fonts.
12224 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12225
122262008-02-04 Jason Rumney <jasonr@gnu.org>
12227
12228 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12229 set full_name.
12230 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12231
122322008-02-03 Jason Rumney <jasonr@gnu.org>
12233
12234 * makefile.w32-in (OBJ1): Include font.o here.
12235 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12236
122372008-02-02 Jason Rumney <jasonr@gnu.org>
12238
12239 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12240
122412008-02-01 Jason Rumney <jasonr@gnu.org>
12242
12243 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12244
12245 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12246
122472008-02-01 Andreas Schwab <schwab@suse.de>
12248
12249 * Makefile.in (shortlisp, lisp): Update for rename of
12250 ../lisp/language/myanmar.el.
12251
122522008-02-01 Chong Yidong <cyd@stupidchicken.com>
12253
12254 * xfaces.c (get_lface_attributes): Delete function.
12255 (merge_named_face, lookup_named_face, lookup_derived_face)
12256 (realize_named_face): Call lface_from_face_name directly, and use
12257 the fact that merge_face_vectors does not alter its FROM argument.
12258
122592008-02-01 Jason Rumney <jasonr@gnu.org>
12260
12261 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12262 input in the default locale. Handle non-Unicode multibyte input.
12263
122642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12265
12266 * fontset.c (reorder_font_vector): Exclude nil elements from the
12267 font group. Don't try multiple fonts.
12268 (fontset_font): Adjust for the above change.
12269 (Finternal_char_font): Return nil if the found font doesn't
12270 contain the character ch.
12271
12272 * Makefile.in (lisp, shortlisp): Add cham.el.
12273
122742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12275
12276 * font.h (FONTP): Make it return 1 also for a font-object.
12277
12278 * .gdbinit (xfontset): New function.
12279
12280 * font.c (font_find_for_lface): Check if the character C is
12281 supported or not only for the first font.
12282
12283 * fontset.c (reorder_font_vector): Fix typo.
12284 (fontset_find_font): Don't add a font-spec specifying a script.
12285 Use 0 (not Qt) for the indication of empty font-group. Change the
12286 format of RFONT-DEF. Return Qt if no font in the font-group
12287 support the character.
12288 (fontset_font): Adjust for the above change. If no font was
12289 found the character, remember that.
12290 (face_for_char): Adjust for the change of RFONT-DEF.
12291 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12292 no font for the target.
12293 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12294
122952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12296
12297 * font.c (font_load_for_face): Handle the case that the font in
12298 face->lface is a string.
12299
123002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12301
12302 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12303
123042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12305
12306 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12307 Fix previous change. If the frame is not on a window system,
12308 signal an error.
12309
123102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12311
12312 * coding.c (decode_coding_object, encode_coding_object): Adjust
12313 marker positions after conversion.
12314
12315 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12316
123172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12318
12319 * font.c (font_find_for_lface): Fix the handling of the return
12320 value of font_has_char.
12321 (Ffont_shape_text): Fix previous change.
12322
12323 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12324 (fontset_ref_and_range): Delete it.
12325 (fontset_find_font): Call char_table_ref_and_range instead of
12326 FONTSET_REF_AND_RANGE.
12327 (make_fontset): Don't setup font groups of Latin here.
12328 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12329 (new_fontset_from_font): Make the specified font the default for
12330 all Latin characters.
12331
123322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12333
12334 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12335 is on a window system before accessing the fontset of the frame.
12336
123372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12338
12339 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12340
12341 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12342 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12343
12344 * font.c (Ffont_shape_text): If the font driver doesn't have a
12345 shaper function, make zero-width glyphs to have at least one-pixel
12346 width. Fix setting of `to' field of glyphs.
12347
123482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12349
12350 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12351 glyphs.
12352
12353 * font.h (struct font_driver): Improve docstring of member `shape'.
12354
123552008-02-01 Kenichi Handa <handa@m17n.org>
12356
12357 * composite.c (syms_of_composite): Fix docstring of
12358 auto-composition-function.
12359
12360 * font.h (LGLYPH_SIZE): New macro.
12361
12362 * font.c (Ffont_fill_gstring): Stop filling when a character not
12363 supported by the font is found.
12364 (Ffont_shape_text): When a shape callback function returns nil,
12365 try at most two more times with larger gstring.
12366 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12367
12368 * xdisp.c (handle_auto_composed_prop): Change the argument to
12369 auto-composition-function.
12370
12371 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12372 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12373 Lispy glyph and store it in the lgstring.
12374
12375 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12376
12377 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12378
123792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12380
12381 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12382
12383 * fontset.c (Vfont_encoding_charset_alist): New variable.
12384 (syms_of_fontset): DEFVAR it.
12385 (reorder_font_vector, fontset_find_font): Optimize for the case of
12386 no need of reordering.
12387 (face_for_char): Map the charset property by
12388 Vfont_encoding_charset_alist.
12389
123902008-02-01 Jason Rumney <jasonr@gnu.org>
12391
12392 * w32font.c (logfonts_match): Don't check adstyle here.
12393 (font_matches_spec): Check here against physical font instead.
12394 (add_font_entity_to_list): Avoid some substitutions.
12395
12396 * font.c (font_parse_fcname): Default weight and slant to normal.
12397 (font_score): Prefer normal fonts if weight or slant unspecified.
12398 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12399 match freetype scores.
12400
124012008-02-01 Jason Rumney <jasonr@gnu.org>
12402
12403 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12404 font, as it may have been deleted.
12405 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12406 most common hyphenless variation.
12407 (logfonts_match): Check generic family.
12408 (font_matches_spec): Don't check generic family here.
12409 (fill_in_logfont): Set generic family based on adstyle.
12410
12411 * w32font.h (w32font_get_cache): Update declaration.
12412
124132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12414
12415 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12416
12417 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12418 If none of the new drivers are available, call font_update_drivers
12419 with the old drivers.
12420
12421 * w32font.c (w32font_get_cache): Adjust the argument type.
12422
12423 * xfont.c (xfont_get_cache): Adjust the argument type.
12424
12425 * font.h (struct font_driver): Change argument type of get_cache.
12426
12427 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12428
12429 * font.c (Ffont_get): Fix arguments to Fassoc.
12430 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12431 (font_clear_cache): New function.
12432 (font_list_entities, font_matching_entity): Use font_get_cache.
12433 (font_update_drivers): Call font_clear_cache when finishing a driver.
12434
12435 * fontset.c (fontset_find_font): Fix previous change.
12436
124372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12438
12439 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12440 dpyinfo->font_table.
12441 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12442 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12443
12444 * font.c (font_at): Handle the case that the arg C is negative.
12445 Handle the unibyte case.
12446 (Ffont_at): Call font_at with the arg C -1.
12447
12448 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12449 the position here, and call font_at with the arg C -1.
12450 Don't check the range of the existing composition at the point.
12451
124522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12453
12454 * fontset.c (fontset_add): New args charset_id and family.
12455 Change caller.
12456 (load_font_get_repertory, fontset_find_font): Assume that
12457 font_spec is always a font-spec object.
12458 (Fset_fontset_font): Always store a font-spec object in a fontset.
12459
12460 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12461 instead of get_property_and_range.
12462
124632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12464
12465 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12466 (xftfont_open): Don't keep locking face.
12467 (xftfont_close): Don't unlock face.
12468 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12469
12470 * fontset.c (fontset_find_font): Don't prefer a font of
12471 supplementary charset.
12472
124732008-02-01 Kenichi Handa <handa@m17n.org>
12474
12475 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12476 script, langsys_tag to langsys, new member script.
12477 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12478 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12479 listing to the script specified in that property. Fix arg to
12480 OTF_check_features.
12481
124822008-02-01 Jason Rumney <jasonr@gnu.org>
12483
12484 * w32font.h: New file.
12485
12486 * w32font.c: Include it.
12487 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12488 (w32font_open): Set owning_frame.
12489 (w32font_text_extents): Use owning_frame.
12490 (struct font_callback_data): Add opentype_only field.
12491 (add_font_entity_to_list): Use it to filter fonts.
12492 Don't check against full name.
12493 (w32font_list_internal): New function.
12494 (w32font_list): Use it.
12495 (w32font_match_internal): New function.
12496 (w32font_match): Use it.
12497 (w32font_open_internal): New function.
12498 (w32font_open): Use it.
12499 (w32font_get_cache, w32font_close, w32font_has_char)
12500 (w32font_encode_char, w32font_text_extents, w32font_draw):
12501 Make non-static.
12502
12503 * makefile.w32-in (w32font.o): Depend on w32font.h.
12504
125052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12506
12507 * charset.c (Fdefine_charset_internal): Record a supplementary
12508 charset at the tail of Vcharset_order_list.
12509
12510 * font.c (Ffont_shape_text): Fix the return value.
12511
12512 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12513
12514 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12515
125162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12517
12518 * ftfont.c (struct OpenTypeSpec): New struct.
12519 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12520 (ftfont_get_open_type_spec): New function.
12521 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12522
12523 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12524
125252008-02-01 Jason Rumney <jasonr@gnu.org>
12526
12527 * w32font.c (add_font_entity_to_list): Compare only the beginning
12528 of full name.
12529
125302008-02-01 Kenichi Handa <handa@m17n.org>
12531
12532 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12533 Never return HANDLED_RECOMPUTE_PROPS.
12534
125352008-02-01 Kenichi Handa <handa@m17n.org>
12536
12537 * font.c (font_gstring_produce): Delete it.
12538
12539 * composite.h (COMPOSITION_METHOD):
12540 Handle COMPOSITION_WITH_GLYPH_STRING.
12541
125422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12543
12544 * xfont.c (Qx): Delete.
12545 (syms_of_xfont): Don't initialize Qx.
12546
12547 * composite.h (enum composition_method):
12548 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12549
125502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12551
12552 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12553 (choose_face_font): Accept new form of font-spec.
12554
12555 * frame.h (font_driver_list): Declare it unconditionally.
12556 (struct frame): Define members font_driver_list and font_data_list
12557 unconditionally.
12558
12559 * fontset.c: Include "font.h" unconditionally.
12560 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12561 (Fset_fontset_font): Accept a font-spec object.
12562
12563 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12564 PIXEL_SIZE part a wild card.
12565
12566 * dispextern.h (struct glyph_string): Define members clip and
12567 num_clips unconditionally.
12568 (struct face): Define members font_info and extra unconditionally.
12569
12570 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12571 ftfont_info only when HAVE_LIBOTF is defined.
12572
125732008-02-01 Andreas Schwab <schwab@suse.de>
12574
12575 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12576 and end.
12577
125782008-02-01 Jason Rumney <jasonr@gnu.org>
12579
12580 * w32font.c (w32font_driver): Add new fields.
12581
125822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12583
12584 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12585 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12586 (LIBES): Add @M17N_FLT_CFLAGS@.
12587
12588 * composite.c (compose_text): Don't treat the new style
12589 composition specially.
12590
12591 * emacs.c (main): Call syms_of_font unconditionally.
12592
12593 * font.h (FONT_ENTITY_NOT_LOADABLE)
12594 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12595 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12596 (struct font_driver): New member shape.
12597 (font_registry_charsets): Extern it.
12598 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12599 (font_otf_capability, font_drive_otf): Delete their externs.
12600
12601 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12602 (font_charset_alist, font_registry_charsets): Move from xfont.c
12603 and rename.
12604 (font_prop_validate_otf): New function.
12605 (font_property_table): Register it for QCotf.
12606 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12607 (font_drive_otf): Delete.
12608 (font_prepare_composition): New arg F. Adjust for the change of
12609 lispy gstring.
12610 (font_find_for_lface): New arg C.
12611 (font_load_for_face): Adjust for the change of font_find_for_lface.
12612 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12613 lispy gstring.
12614 (Ffont_shape_text): New function.
12615 (Fopen_font): If the font size is not given, use 12-pixel.
12616 (Ffont_at): New arg STRING.
12617 (syms_of_font): Initalize font_charset_alist.
12618 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12619 conditionally.
12620
12621 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12622 fonts of the same font-spec. Change the format of RFONT-DEF.
12623 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12624 Adjust for the change of RFONT-DEF.
12625 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12626
12627 * ftfont.h: New file.
12628
12629 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12630 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12631 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12632 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12633 font_otf_capability and font_drive_otf, set ftfont_shape.
12634 (ftfont_list): Adjust for the change of :otf property value.
12635 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12636 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12637 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12638 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12639 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12640 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12641
12642 * w32term.c (x_draw_composite_glyph_string_foreground):
12643 Adjust for the change of lispy gstring.
12644
12645 * xdisp.c (handle_composition_prop): Adjust for the change of
12646 lispy gstring. Call a function for auto-composition with the
12647 third arg it->window.
12648 (fill_composite_glyph_string): Adjust for the change of lispy string.
12649 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12650
12651 * xfaces.c (set_font_frame_param): Adjust for the change of
12652 font_find_for_lface.
12653
12654 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12655 (xfont_registry_charsets): Likewise. Change caller.
12656 (syms_of_xfont): Don't handle x_font_charset_alist.
12657
12658 * xftfont.c: Include "ftfont.h".
12659 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12660 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12661 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12662 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12663 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12664 Set xftfont_driver.shape to xftfont_shape.
12665
12666 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12667 the change of lispy gstring.
12668
126692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12670
12671 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12672
126732008-02-01 Jason Rumney <jasonr@gnu.org>
12674
12675 * w32font.c (w32font_draw): Fill background manually.
12676
126772008-02-01 Jason Rumney <jasonr@gnu.org>
12678
12679 * font.c (Qfontp): Remove unused symbol.
12680 (QCantialias): New symbol.
12681 (syms_of_font): Define it.
12682 (font_property_table): Set a validator for QCantialias.
12683
12684 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12685 Define if not already.
12686 (QCfamily): Share with xfaces.c.
12687 (Qstandard, Qsubpixel, Qnatural): New symbols.
12688 (syms_of_w32font): Define them. Don't define QCfamily here.
12689 (w32_antialias_type, lispy_antialias_type): New functions.
12690 (w32_enumfont_pattern_entity): New arg requested_font.
12691 Set antialias parameter if non-default was requested.
12692 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12693
126942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12695
12696 * lread.c (read1): Undo the previous change.
12697
126982008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12699
12700 * frame.c (Fdelete_frame): Call font_update_drivers only when
12701 USE_FONT_BACKEND is defined.
12702
127032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12704
12705 * font.h (struct font_bitmap): New member bits_per_pixel.
12706 (struct font_driver): New members start_for_frame and end_for_frame.
12707 (struct font_data_list): New struct.
12708 (font_put_frame_data, font_get_frame_data): Extern them.
12709
12710 * frame.h (struct frame): New member font_data_list.
12711
12712 * font.c (font_update_drivers): Call driver->start_for_frame and
12713 driver->end_for_frame at proper timings.
12714 (font_put_frame_data, font_get_frame_data): New functions.
12715 (Ffont_spec): Add usage in the docstring.
12716
12717 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12718 (Fdelete_frame): Call font_update_drivers.
12719
12720 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12721 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12722 (xftfont_get_xft_draw): New function.
12723 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12724 (xftfont_end_for_frame): New function.
12725 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12726
12727 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12728 Change argument. Cache GCs in the per-frame data.
12729 (struct ftxfont_frame_data): New struct.
12730 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12731 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12732 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12733 (ftxfont_end_for_frame): New function.
12734 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12735
12736 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12737
127382008-02-01 Kenichi Handa <handa@m17n.org>
12739
12740 * xselect.c (Vselection_coding_system)
12741 (Vnext_selection_coding_system): Delete them.
12742 (syms_of_xselect): Don't declare selection-coding-system and
12743 next-selection-coding-system. They are declared in select.el.
12744
127452008-02-01 Jason Rumney <jasonr@gnu.org>
12746
12747 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12748
12749 * w32fns.c: Include imm.h.
12750 (get_composition_string_fn, get_ime_context_fn): New optional
12751 system functions.
12752 (globals_of_w32fns): Load them from imm32.dll.
12753 (ignore_ime_char): New flag.
12754 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12755 WM_IME_ENDCOMPOSITION messages.
12756
12757 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12758 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12759
127602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12761
12762 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12763 (READCHAR_REPORT_MULTIBYTE): New macro.
12764 (readchar): New 2nd arg MULTIBYTE.
12765 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12766 Make symbol's name multibyte according to the multibyteness of the
12767 source.
12768
127692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12770
12771 * xfaces.c (face_for_overlay_string): Call lookup_face with
12772 correct arguments (fix of synching with the trunk).
12773
127742008-02-01 Kenichi Handa <handa@m17n.org>
12775
12776 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12777 (font_prop_validate_non_neg, font_prop_validate_spacing):
12778 Delete argument prop_index.
12779 (font_property_table): Change arguments to validater. Change Callers.
12780 (font_lispy_object): Delete.
12781 (font_at): Use font_find_object instead fo font_lispy_object.
12782
127832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12784
12785 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12786 and file names.
12787
127882008-02-01 Jason Rumney <jasonr@gnu.org>
12789
12790 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12791 (font_matches_spec): Remove debug output.
12792 (add_font_entity_to_list): Avoid using substituted fonts.
12793
127942008-02-01 Jason Rumney <jasonr@gnu.org>
12795
12796 * doc.c (Fsnarf_documentation):
12797 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12798
127992008-02-01 Miles Bader <miles@gnu.org>
12800
12801 * dispextern.h (struct glyph_row): Only define "clip" field if
12802 HAVE_WINDOW_SYSTEM is defined.
12803
128042008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12805
12806 Fix up multi-tty merge.
12807
12808 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12809 and indentation.
12810
12811 * xfaces.c (free_realized_face, clear_face_gcs):
12812 Include font_done_for_face in the input_blocked section, just in case.
12813
12814 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12815 (get_char_face_and_encoding): Undo last change and remove the *other*
12816 duplicate definition (i.e. keep the one that's better scoped and that
12817 includes code for the font-backend).
12818
12819 * terminal.c (create_terminal): Default keyboard_coding to
12820 `no-conversion' and terminal_coding to `undecided'.
12821
12822 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12823
12824 * fontset.c (free_realized_fontsets): Check that the table entry does
12825 contain a fontset before trying to compare it to `base'.
12826
12827 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12828 syms_of_charset, and syms_of_coding earlier because init_window_once
12829 now needs Vcoding_system_hash_table to be setup.
12830
12831 * coding.h (default_buffer_file_coding): Remove.
12832
12833 * coding.c (default_buffer_file_coding): Remove.
12834 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12835 than ->symbol, and use the terminal-local coding system.
12836 (syms_of_coding): Don't setup the coding-systems that are not
12837 terminal-local.
12838 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12839
12840 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12841 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12842
12843 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12844 in chartab.c and were re-added here by mistake.
12845 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12846
12847 * doc.c (Fsnarf_documentation):
12848 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12849 src to etc.
12850
12851 * ChangeLog.10: Add mistakenly removed entry.
12852
128532008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12854
12855 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12856
128572008-02-01 Miles Bader <miles@gnu.org>
12858
12859 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12860 Add extra args to FACE_FOR_CHAR.
12861
128622008-02-01 Kenichi Handa <handa@m17n.org>
12863
12864 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12865 in sequence.
12866
12867 * chartab.c (map_sub_char_table, map_char_table): If the range
12868 contains just one character, call the function with that character
12869 even if the depth is not 3.
12870
128712008-02-01 Jason Rumney <jasonr@gnu.org>
12872
12873 * w32font.c (w32font_text_extents): Calculate metrics for the
12874 whole string.
12875
128762008-02-01 Jason Rumney <jasonr@gnu.org>
12877
12878 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12879
128802008-02-01 Jason Rumney <jasonr@gnu.org>
12881
12882 * w32term.c (x_set_glyph_string_clipping): Use
12883 get_glyph_string_clip_rects.
12884 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12885 Adjust for the change of struct glyph_string.
12886
12887 * w32font.c (w32font_draw): Do clipping here.
12888
128892008-02-01 Kenichi Handa <handa@m17n.org>
12890
12891 * xftfont.c (xftfont_draw): Adjust for the change of struct
12892 glyph_string.
12893
12894 * xterm.c (x_set_glyph_string_clipping): Use
12895 get_glyph_string_clip_rects.
12896 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12897 Adjust for the change of struct glyph_string.
12898
12899 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12900 the resulting clip(s}.
12901 (expose_overlaps): Add arg r. Change callers. Set it to
12902 row->clip temporarily.
12903 (expose_window): Redraw rows overlapping the exposed area.
12904
12905 * dispextern.h (struct glyph_row): New member clip.
12906 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12907 clip_height, new member clip, and num_clips.
12908
129092008-02-01 Kenichi Handa <handa@m17n.org>
12910
12911 * data.c (Fchar_or_string_p): Fix docstring.
12912
129132008-02-01 Kenichi Handa <handa@m17n.org>
12914
12915 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12916 create a temporary XftDraw object.
12917
129182008-02-01 Kenichi Handa <handa@m17n.org>
12919
12920 * font.c (Ffontp): Fix docstring.
12921
12922 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12923 strong evidence of ISO-2022.
12924
129252008-02-01 Kenichi Handa <handa@m17n.org>
12926
12927 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12928 SYNTAX_ENTRY_FOLLOW_PARENT.
12929
129302008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12931
12932 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12933 its type.
12934 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12935 Update to the new type of weak_hash_tables and next_weak.
12936
12937 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12938 a plain C pointer to Lisp_Hash_Table.
12939
12940 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12941 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12942 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12943 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12944 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12945 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12946 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12947 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12948 (GC_EQ): Remove since they've been identical to their non-GC_
12949 alter-egos ever since the markbit was eradicated.
12950
12951 * alloc.c:
12952 * buffer.c:
12953 * buffer.h:
12954 * data.c:
12955 * fileio.c:
12956 * filelock.c:
12957 * fns.c:
12958 * frame.h:
12959 * lisp.h:
12960 * macterm.c:
12961 * print.c:
12962 * process.c:
12963 * w32fns.c:
12964 * w32menu.c:
12965 * w32term.c:
12966 * xfns.c:
12967 * xmenu.c:
12968 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12969
129702008-02-01 Kenichi Handa <handa@m17n.org>
12971
12972 * chartab.c (map_sub_char_table): Make it work for the top-level
12973 char-table. Fix handling of parent char-table.
12974 (map_char_table): Adjust for the above change.
12975
129762008-02-01 Jason Rumney <jasonr@gnu.org>
12977
12978 * w32font.c (Qgdi): Rename from Qw32.
12979
129802008-02-01 Jason Rumney <jasonr@gnu.org>
12981
12982 * w32bdf.c (get_quoted_string): Make function static.
12983
129842008-02-01 Kenichi Handa <handa@m17n.org>
12985
12986 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12987 bigger ascent and descent than those of the font, use them as
12988 font's ascent and descent.
12989
129902008-02-01 Kenichi Handa <handa@m17n.org>
12991
12992 * Makefile.in (${lispsource}international/charprop.el): Move this
12993 target within "#ifdef HAVE_UNIDATA" and "#endif".
12994
129952008-02-01 Kenichi Handa <handa@m17n.org>
12996
12997 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12998 (shortlisp): Add ../lisp/language/tai-viet.el.
12999
130002008-02-01 Ulrich Mueller <ulm@gentoo.org>
13001
13002 * Makefile.in (${lispsource}international/charprop.el): Depend on
13003 temacs${EXEEXT}.
13004
130052008-02-01 Jason Rumney <jasonr@gnu.org>
13006
13007 * w32font.c (w32font_close): Delete the GDI font object.
13008
13009 * w32menu.c: Include character.h.
13010
13011 * w32proc.c: Likewise.
13012
13013 * w32select.c: Likewise.
13014
13015 * makefile.w32-in (w32proc.o): Depend on character.h.
13016
130172008-02-01 Jason Rumney <jasonr@gnu.org>
13018
13019 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13020
13021 * w32menu.c (syms_of_w32menu): Likewise.
13022
13023 * w32proc.c (syms_of_ntproc): Likewise.
13024
13025 * w32select.c (syms_of_w32select): Likewise.
13026
13027 * w32term.c (syms_of_w32term): Likewise.
13028
130292008-02-01 Jason Rumney <jasonr@gnu.org>
13030
13031 * w32font.c (w32font_draw): Delete brush after using it.
13032
130332008-02-01 Jason Rumney <jasonr@gnu.org>
13034
13035 * w32font.c (w32font_open): Don't set font_idx.
13036 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13037 to font settings.
13038 (w32font_draw): Fill background explicitly.
13039
130402008-02-01 Jason Rumney <jasonr@gnu.org>
13041
13042 * w32term.c (w32_initialize): Don't call w32font_initialize.
13043
13044 * w32font.c (w32font_info): Remove subranges.
13045 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13046 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13047 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13048 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13049 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13050 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13051 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13052 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13053 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13054 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13055 New symbols.
13056 (font_callback_data): New struct.
13057 (w32font_list, w32font_match): Use it.
13058 (w32font_open): Don't populate subranges.
13059 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13060 (w32font_encode_char): Always return unicode code-point as-is.
13061 (w32font_text_extents): Supply a transformation matrix to
13062 GetGlyphOutline. Never look up by glyph index. Avoid looping
13063 twice. Use unicode version of GetTexExtentPoint32 instead of
13064 glyph index version.
13065 (set_fonts_frame): Remove.
13066 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13067 set frame parameter. Use backward compatible fake foundries.
13068 Save generic family in extra slot under QCfamily. Make width slot
13069 constant. Save QCspacing value. Save list of scripts instead of
13070 binary subranges.
13071 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13072 (add_font_entity_to_list): Use font_callback_data struct. Filter
13073 unwanted fonts.
13074 (add_one_font_entity_to_list): Use font_callback_data struct.
13075 (w32_registry): Default to iso10646_1.
13076 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13077 string font registries. Don't fill in font name if it is a generic
13078 family name, fill family instead. Use spacing, family and script
13079 extra info to fill pitch, family and charset fields.
13080 (list_all_matching_fonts): Use font_callback_data struct.
13081 (unicode_range_for_char): Remove.
13082 (font_supported_scripts): New function.
13083 (w32font_initialize): Remove.
13084 (syms_of_w32font): Update which symbols are defined.
13085
130862008-02-01 Jason Rumney <jasonr@gnu.org>
13087
13088 * font.c (font_pixel_size): Reverse assq_no_quit args.
13089
13090 * w32term.h (FONT_WIDTH): Report max width, not average.
13091 (FONT_MAX_WIDTH): Remove.
13092 (FONT_AVG_WIDTH): New macro.
13093
13094 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13095 redefinition of FONT_WIDTH.
13096
13097 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13098 (w32_cache_char_metrics): Use FONT_WIDTH.
13099
13100 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13101
131022008-02-01 Jason Rumney <jasonr@gnu.org>
13103
13104 * w32font.c (w32font_open): Make lfHeight negative.
13105
13106 * w32fns.c (x_default_font_parameter): Use new style font name.
13107 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13108
131092008-02-01 Jason Rumney <jasonr@gnu.org>
13110
13111 * w32font.c (QCsubranges): New symbol.
13112 (w32font_open, w32font_has_char): Get subranges from subproperty
13113 of extra.
13114 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13115 (syms_of_w32font): Define :subranges symbol.
13116
13117 * font.c (font_put_extra): Expose externally.
13118
13119 * font.h (font_put_extra): Move declaration from font.c.
13120
13121 * font.c (Ffont_get): Use font driver to determine otf capability.
13122 (adjust_anchor): Check if driver defines anchor_point before using.
13123
13124 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13125 (w32font_draw): Use options.
13126 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13127 Fix detection of truetype fonts.
13128 (registry_to_w32_charset): Handle charsets other than iso8859-1
13129 expressed as lisp symbols.
13130 (w32_registry): Express charset as lisp symbol.
13131 (fill_in_logfont): Reverse pixel and point height logic.
13132 Don't set width here. Set quality to default.
13133
13134 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13135 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13136
13137 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13138 Remove redundant loop and allocation.
13139
13140 * makefile.w32-in (font.o, w32font.o): New objects.
13141 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13142 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13143
13144 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13145 STORE_XCHARB a valid l-value.
13146
13147 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13148 calculations for non-Truetype fonts.
13149 (x_draw_glyph_string): Sync with xterm.c.
13150 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13151 Remove redundant code.
13152 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13153
13154 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13155 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13156
13157 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13158 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13159
13160 * w32font.c: New file for w32 font backend.
13161
131622008-02-01 Kenichi Handa <handa@m17n.org>
13163
13164 * term.c: Don't include "buffer.h" twice.
13165
131662008-02-01 Kenichi Handa <handa@m17n.org>
13167
13168 * character.c (Funibyte_string): New function.
13169 (syms_of_character): Defsubr it.
13170
131712008-02-01 Jason Rumney <jasonr@gnu.org>
13172
13173 * w32term.c [USE_FONT_BACKEND]:
13174 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13175 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13176 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13177 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13178 (x_free_frame_resources): Sync with xterm.c.
13179
131802008-02-01 Andreas Schwab <schwab@suse.de>
13181
13182 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13183 char-table size.
13184
131852008-02-01 Kenichi Handa <handa@m17n.org>
13186
13187 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13188
131892008-02-01 Kenichi Handa <handa@m17n.org>
13190
13191 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13192 font_otf_gpos, add font_drive_otf.
13193
13194 * fontset.c (fontset_find_font): Pay attention to font size
13195 specified for a font.
13196 (reorder_font_vector): Check contents of font_def.
13197
13198 * font.c (struct otf_list): Delete it.
13199 (otf_list): Make it a lisp variable.
13200 (otf_open): Use lispy otf_list.
13201 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13202 (check_otf_features): New function.
13203 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13204 New functions.
13205 (font_drive_otf): New function merging font_otf_gsub and
13206 font_otf_gpos.
13207 (font_open_for_lface): New arg spec. Change argument order.
13208 (font_load_for_face): Adjust for the change of font_open_for_lface.
13209 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13210 Ffont_otf_gpos.
13211 (syms_of_font): Staticpro otf_list. Delete defsubr of
13212 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13213
13214 * xfaces.c (set_font_frame_param): Adjust for the change of
13215 font_open_for_lface.
13216
13217 * font.h (font_open_for_lface): Adjust prototype.
13218 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13219 member otf_drive.
13220 (font_otf_gsub, font_otf_gpos): Delete externs.
13221 (font_drive_otf): Extern it.
13222
132232008-02-01 Kenichi Handa <handa@m17n.org>
13224
13225 * font.c (font_at): If the window W is not on a window system,
13226 return Qnil.
13227
13228 * coding.c (produce_chars, encode_coding): Don't call
13229 insert_from_gap if no characters to produce.
13230
132312008-02-01 Kenichi Handa <handa@m17n.org>
13232
13233 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13234 Fclear_face_cache.
13235
13236 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13237
132382008-02-01 Miles Bader <miles@gnu.org>
13239
13240 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13241 Parse "--disable-font-backend" option.
13242 (standard_args): Add "--disable-font-backend" option.
13243
132442008-02-01 Kenichi Handa <handa@m17n.org>
13245
13246 * fontset.c (fontset_find_font): New function.
13247 (fontset_font): Use fontset_find_font.
13248 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13249 Register the specified font for all Latin characters.
13250 (new_fontset_from_font): Register the specified font for all Latin
13251 characters.
13252 (dump_fontset): For a realized fontset, include the base fontset
13253 name in the returned vector.
13254
132552008-02-01 Kenichi Handa <handa@m17n.org>
13256
13257 * character.h (CHAR_STRING): Cast C to unsigned on calling
13258 char_string.
13259
13260 * character.c (char_string): Type of arg C changed to unsigned.
13261 Signal an error if C is an invalid character code.
13262
13263 * editfns.c (general_insert_function, Fchar_to_string):
13264 Use CHARACTERP, not INTEGERP.
13265
132662008-02-01 Kenichi Handa <handa@m17n.org>
13267
13268 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13269 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13270
13271 * regex.c (analyse_first): Fix for multibyte characters in "case
13272 charset:" and "case categoryspec:".
13273
132742008-02-01 Andreas Schwab <schwab@suse.de>
13275
13276 * Makefile.in (LIBES): Move standard libraries to the end.
13277
132782008-02-01 Kenichi Handa <handa@m17n.org>
13279
13280 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13281 nonzero, don't shrink the buffer nextb.
13282
13283 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13284
13285 * coding.c (coding_alloc_by_making_gap): New arg offset.
13286 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13287 offset.
13288 (decode_coding_iso_2022): Update coding->safe_charsets.
13289 (decode_coding_gap): Temporarily set
13290 current_buffer->text->inhibit_shrinking to 1.
13291
132922008-02-01 Kenichi Handa <handa@m17n.org>
13293
13294 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13295 indexing into elements of s->cmp and s->char2b.
13296
132972008-02-01 Juanma Barranquero <lekktu@gmail.com>
13298
13299 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13300
133012008-02-01 Kenichi Handa <handa@m17n.org>
13302
13303 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13304 target_multibyte instead of multibyte.
13305 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13306 (bcmp_translate): Change the argument name from multibyte to
13307 target_multibyte.
13308
133092008-02-01 Kenichi Handa <handa@m17n.org>
13310
13311 These changes are to compile a regexp into a pattern that can be
13312 used both for multibyte and unibyte targets.
13313
13314 * Makefile.in (search.o): Depend on charset.h.
13315
13316 * character.c (multibyte_char_to_unibyte_safe): New function.
13317
13318 * search.c: Include "charset.h".
13319 (compile_pattern_1): Delete argument multibyte. Don't set
13320 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13321 (compile_pattern): Don't compare cp->buf.target_multibyte.
13322 Compare cp->buf.charset_unibyte.
13323 (compile_pattern): Set cp->buf.target_multibyte.
13324
13325 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13326
13327 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13328
13329 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13330 multibyte. Change callers.
13331 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13332 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13333 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13334 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13335 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13336 (regex_compile): Make the compiled pattern usable both for
13337 multibyte and unibyte targets.
13338 (analyse_first): Make the fastmap usable both for multibyte and
13339 unibyte targets.
13340 (TRANSLATE_VIA_MULTIBYTE): Delete.
13341 (re_match_2_internal): Pay attention to the case that the
13342 multibyteness of bufp and target may be different.
13343
133442008-02-01 Kenichi Handa <handa@m17n.org>
13345
13346 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13347 empty box occupy at least one column width.
13348
133492008-02-01 Miles Bader <miles@gnu.org>
13350
13351 * Makefile.in: Remove redundant HAVE_XFT clause.
13352
133532008-02-01 Kenichi Handa <handa@m17n.org>
13354
13355 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13356
133572008-02-01 Kenichi Handa <handa@m17n.org>
13358
13359 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13360 being nil.
13361
133622008-02-01 Kenichi Handa <handa@m17n.org>
13363
13364 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13365
133662008-02-01 Kenichi Handa <handa@m17n.org>
13367
13368 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13369
133702008-02-01 Kenichi Handa <handa@m17n.org>
13371
13372 * search.c (simple_search): Fix previous change.
13373
133742008-02-01 Kenichi Handa <handa@m17n.org>
13375
13376 * xftfont.c (ftfont_font_format): Extern declaration.
13377
13378 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13379
13380 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13381 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13382
13383 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13384 (ftfont_font_format): Fix previous change.
13385
13386 * font.h (Ffont_xlfd_name): EXFUN it.
13387
13388 * font.c (font_parse_xlfd): Fix the array size of `f'.
13389 (register_font_driver): Use EQ to compare driver->type.
13390
13391 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13392 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13393 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13394
133952008-02-01 Kenichi Handa <handa@m17n.org>
13396
13397 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13398 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13399
134002008-02-01 Kenichi Handa <handa@m17n.org>
13401
13402 * xfont.c (xfont_open): Set font->format.
13403
13404 * xftfont.c (xftfont_open): Set font->format.
13405
13406 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13407 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13408 (ftfont_open): Set font->format.
13409 (ftfont_font_format): New function.
13410
13411 * font.h (struct font): New member format.
13412
13413 * font.c (Qopentype): New variable.
13414 (syms_of_font): Defsym it.
13415 (Fquery_font): Change the format of the last element of the return
13416 value.
13417
134182008-02-01 Kenichi Handa <handa@m17n.org>
13419
13420 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13421 last resort.
13422
134232008-02-01 Kenichi Handa <handa@m17n.org>
13424
13425 * coding.c (detect_coding_charset): Fix detection of multi-byte
13426 charset.
13427
134282008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13429
13430 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13431
134322008-02-01 Kenichi Handa <handa@m17n.org>
13433
13434 * xdisp.c (get_next_display_element): Set it->face_id for the
13435 first component of a composition.
13436 (x_produce_glyphs): Check if the font is changed or not for composition.
13437
134382008-02-01 Kenichi Handa <handa@m17n.org>
13439
13440 * fontset.c (Qlatin): New variable.
13441 (syms_of_fontset): Define it as a lisp symbol.
13442 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13443
134442008-02-01 Kenichi Handa <handa@m17n.org>
13445
13446 * font.c (font_unparse_fcname): Pay attention to the case that
13447 some of font property is a null string.
13448
134492008-02-01 Kenichi Handa <handa@m17n.org>
13450
13451 * term.c: Include "composite.h".
13452 (encode_terminal_code): Output all components of composition.
13453 Check the size of encode_terminal_src.
13454 (produce_glyphs): For composition, call produce_composite_glyph.
13455 (append_composite_glyph, produce_composite_glyph): New functions.
13456
13457 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13458 is not found, get font_info from the current ascii face.
13459
134602008-02-01 Kenichi Handa <handa@m17n.org>
13461
13462 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13463 buffer-file-name to Qnil before calling insert_from_buffer.
13464
13465 * font.c (font_unparse_fcname): Pay attention to the case that
13466 foundry is a null string.
13467
134682008-02-01 Kenichi Handa <handa@m17n.org>
13469
13470 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13471
13472 * font.c (Qunicode_sip): New variable.
13473 (syms_of_font): Declare it as a Lisp symbol.
13474
13475 * font.h (Qunicode_sip): Extern it.
13476
134772008-02-01 Kenichi Handa <handa@m17n.org>
13478
13479 * composite.c (get_composition_id): Pay attention to TAB component.
13480
13481 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13482 TAB. Adjust for the change of s->char2b which always points to
13483 the first element of allocated memory.
13484
13485 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13486
13487 * xdisp.c (handle_composition_prop): Set it->c to the first
13488 non-TAB component.
13489 (fill_composite_glyph_string): Change argument.
13490 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13491 (x_produce_glyphs): Fix handling of left/right padding.
13492
134932008-02-01 Kenichi Handa <handa@m17n.org>
13494
13495 * coding.c (detect_coding_system): Fix for handling off
13496 inhibit_iso_escape_detection. Fix for the case that no coding
13497 system is defined for a specific coding category.
13498
134992008-02-01 Kenichi Handa <handa@m17n.org>
13500
13501 * font.c (font_matching_entity): Delete unused local var.
13502
13503 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13504 opening a font.
13505
13506 * fileio.c (Finsert_file_contents): On recovering a file, assume
13507 Unix-like eol.
13508 (choose_write_coding_system): On auto-saving a file, force
13509 Unix-like eol.
13510
13511 * coding.c (setup_coding_system): Fix setting of
13512 coding->common_flags based on eol_type.
13513 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13514 inherit from it.
13515
135162008-02-01 Kenichi Handa <handa@m17n.org>
13517
13518 * alloc.c (NSTATICS): Increas to 0x600.
13519
135202008-02-01 Kenichi Handa <handa@m17n.org>
13521
13522 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13523 (ftfont_list): Don't check :name property.
13524 (ftfont_match): New function.
13525 (ftfont_pattern_entity): If the pattern doesn't contain
13526 FC_SPACING, don't assume FC_MONO.
13527
13528 * font.h (struct font_driver): New member `match'.
13529 (font_update_drivers): Adjust prototype.
13530
13531 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13532 property of FONT.
13533 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13534 them unconditionally.
13535 (font_matching_entity): New function.
13536 (font_open_by_name): Try font_matching_entity if exact match is
13537 not found.
13538 (font_update_drivers): Delete the arg FONT. Return a list of
13539 actually used backends. Don't free faces, font caches here.
13540 Don't store data in frame parameters. Don't call x_set_font.
13541 (Ffont_spec): Store :name property as is.
13542 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13543 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13544 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13545 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13546 Call font->driver->otf_gsub instead of font_otf_gsub.
13547
13548 * frame.c (x_set_font_backend): Do more works that were done in
13549 font_update_drivers before.
13550
13551 * xfont.c (xfont_match): New function.
13552 (xfont_driver): Set xfont_driver.match to xfont_match.
13553 (xfont_draw): Set font in GC if necessary.
13554
13555 * ftxfont.c (ftxfont_match): New function.
13556 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13557
13558 * xftfont.c (xftfont_match): New function.
13559 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13560
135612008-02-01 Kenichi Handa <handa@m17n.org>
13562
13563 * font.h (struct font): New member scalable.
13564 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13565 (font_otf_gsub): Adjust prototype.
13566
13567 * font.c (font_otf_capability): Fix handling of the default langsys.
13568 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13569 Check the contents of SPEC.
13570 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13571 (check_gstring): New function.
13572 (REPLACEMENT_CHARACTER): New macro.
13573 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13574 glyph codes of GSTRING.
13575 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13576 (font_prepare_composition): Set cmp->glyph_len.
13577 (font_open_entity): Set font->scalable.
13578 (Ffont_get): Handle :otf property.
13579 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13580 functions.
13581 (Fquery_font): Use font->font.full_name.
13582 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13583 Sfont_otf_alternates.
13584
13585 * ftfont.c (ftfont_open): Set font->font.full_name and
13586 font->font.name properly. Fix calculation of font->font.height
13587 and font->min_width.
13588
13589 * ftxfont.c (ftxfont_create_gcs): New function.
13590 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13591 (ftxfont_draw_backgrond): Fix filling region.
13592 (ftxfont_default_fid): New function.
13593 (ftxfont_open): Set xfont->fid to the return value of
13594 ftxfont_default_fid.
13595 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13596 (ftxfont_done_face): Free only GCs that are created by
13597 ftxfont_create_gcs.
13598 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13599
13600 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13601 Clip to src->width, etc (not src->clip_XXX).
13602
13603 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13604 FontBackend frame parameter.
13605
136062008-02-01 Kenichi Handa <handa@m17n.org>
13607
13608 * font.h (struct font_driver_list): New member `on'.
13609 (Fclear_font_cache): EXFUN it.
13610 (font_update_drivers): Extern it.
13611
13612 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13613 (font_list_entities): Check driver_list->on.
13614 (register_font_driver): Initalize `on' member to 0.
13615 (font_update_drivers): New function.
13616 (Fclear_font_cache): Check driver_list->on.
13617
13618 * frame.h (Qfont_backend): Extern it.
13619 (x_set_font_backend): Extern it.
13620
13621 * frame.c (Qfont_backend): New variable.
13622 (frame_parms): New element for font-backend.
13623 (x_set_font_backend): New function.
13624
13625 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13626 FontBackend frame parameter.
13627 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13628 x_set_font_backend.
13629
13630 * xfont.c (xfont_list): Don't try listing by :name property if the
13631 name is not for XLFD.
13632
136332008-02-01 Kenichi Handa <handa@m17n.org>
13634
13635 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13636 (LGLYPH_SET_TO): New macros.
13637 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13638 element of G is vector or not.
13639 (font_at): Extern it.
13640
13641 * font.c: Include window.h.
13642 (font_lispy_object): New function.
13643 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13644 end of valid glyph.
13645 (font_close_object): Fix getting (struct font *).
13646 (font_at): New function.
13647 (Ffont_get): If FONT is a font-object, get entity from it.
13648 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13649 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13650 range check.
13651 (Ffont_at): New function.
13652 (syms_of_font): Defsubr Sfont_at.
13653
13654 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13655 before the entry for Qcomposition.
13656 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13657 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13658 the font in gstring.
13659 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13660 LGLYPH_FORM (g) to detect the end of valid glyph.
13661 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13662 we are composing with gstring.
13663
13664 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13665 Check if adjustment is vector or not.
13666
13667 * Makefile.in (font.o): Make it depends on window.h.
13668
136692008-02-01 Kenichi Handa <handa@m17n.org>
13670
13671 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13672 adjustment is vector or not.
13673
136742008-02-01 Miles Bader <miles@gnu.org>
13675
13676 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13677
136782008-02-01 Kenichi Handa <handa@m17n.org>
13679
13680 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13681 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13682 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13683
13684 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13685 (DEVICE_DELTA): Fix typo.
13686 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13687 LGLYPH format.
13688
13689 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13690 the change of LGLYPH format.
13691
136922008-02-01 Kenichi Handa <handa@m17n.org>
13693
13694 * ftfont.c (ftfont_list): Fix typo.
13695 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13696
136972008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13698
13699 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13700
13701 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13702 xftface_info is non-NULL.
13703
137042008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13705
13706 * ftfont.c (ftfont_list): Move misplaced #endif.
13707
137082008-02-01 Kenichi Handa <handa@m17n.org>
13709
13710 * ftfont.c (ftfont_list): Pay attention to the case that
13711 FC_CAPABILITY is not defined.
13712
137132008-02-01 Kenichi Handa <handa@m17n.org>
13714
13715 * xftfont.c (xftfont_open): Set charset related members to -1.
13716
13717 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13718 QCname.
13719 (ftfont_open): Set charset related members to -1.
13720
13721 * fontset.c (Votf_script_alist): New variable.
13722 (syms_of_fontset): Initialize it.
13723 (fontset_font): Delete unused variable.
13724
13725 * fontset.h (Votf_script_alist): Extern it.
13726
13727 * font.c (font_find_for_lface): Optimize code.
13728
13729 * font.h (font_close_object, font_merge_old_spec): Extern them.
13730
137312008-02-01 Kenichi Handa <handa@m17n.org>
13732
13733 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13734 (syms_of_font): Initialize them.
13735 (font_pixel_size): Allow float value in dpi.
13736 (font_prop_validate_type): Delete.
13737 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13738 Change caller.
13739 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13740 (font_prop_validate_extra): Delete.
13741 (font_prop_validate_spacing): New function.
13742 (font_property_table): Add elements for all known properties.
13743 (get_font_prop_index): Rename from check_font_prop_name. New
13744 argument FROM. Change caller.
13745 (font_prop_validate): Validate all known properties.
13746 (font_put_extra): Delete argument force. Change caller.
13747 (font_expand_wildcards): Make it static. Fix the way of shrinking
13748 the possible range.
13749 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13750 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13751 Change caller.
13752 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13753 (font_parse_fcname): Delete argument merge. Fix parsing of point
13754 size. Don't validate properties values here. Change caller.
13755 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13756 (font_open_by_name): Delete unused variable.
13757 (Ffont_spec): Likewise. Validate property values.
13758 (Ffont_match_p): New function.
13759
13760 * font.h (QCscalable): Extern it.
13761 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13762
13763 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13764
13765 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13766 (xfont_list_pattern): New function.
13767 (xfont_list): Use xfont_list_pattern.
13768
137692008-02-01 Kenichi Handa <handa@m17n.org>
13770
13771 * font.h (Flist_fonts): EXFUN it.
13772
137732008-02-01 Jason Rumney <jasonr@gnu.org>
13774
13775 * w32term.c (w32_initialize): Add back smoothing_type and
13776 smoothing_enabled definitions.
13777
137782008-02-01 Kenichi Handa <handa@m17n.org>
13779
13780 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13781 s->face->font on determining underline position.
13782
137832008-02-01 Kenichi Handa <handa@m17n.org>
13784
13785 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13786 (font_has_char): Accept font-object too.
13787 (font_find_for_lface): Try at first with a size specified in face.
13788
137892008-02-01 Kenichi Handa <handa@m17n.org>
13790
13791 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13792 font_open_by_name.
13793
137942008-02-01 Kenichi Handa <handa@m17n.org>
13795
13796 * font.h (QCspacing, QCdpi): Extern them.
13797 (enum font_spacing): New enum.
13798 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13799
13800 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13801 (QCspacing, QCdpi): New variables.
13802 (syms_of_font): Initialize them.
13803 (font_pixel_size): New function.
13804 (font_put_extra): New function.
13805 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13806 in FONT_EXTRA.
13807 (font_parse_fcname): Handle enumerated values (e.g. bold).
13808 Fix handling font size. Add QCname property that contains only
13809 unknown properties.
13810 (font_score): Change argument. Change caller. Pay attention to
13811 FONT_PIXEL_SIZE_QUANTUM.
13812 (font_sort_entites, font_list_entities, font_find_for_lface)
13813 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13814 (Ffont_spec): Add QCname property that contains only unknown properties.
13815
13816 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13817 include weight in listing pattern, instead check weight of each
13818 listed font. Don't include scalable in pattern. Pay attention to
13819 FONT_PIXEL_SIZE_QUANTUM.
13820
138212008-02-01 Kenichi Handa <handa@m17n.org>
13822
13823 * font.c (font_parse_fcname): Fix parsing of point-size.
13824 (font_unparse_fcname): Produce symbolic names for style properties.
13825 (font_list_entities): Handle float size correctly.
13826 (font_open_by_name): Prefer `normal' property values if the name
13827 doesn't specify them.
13828
13829 * fontset.c (Finternal_char_font): Use font_get_name, not
13830 Ffont_xlfd_name.
13831
13832 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13833 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13834 pattern. Don't force scalable.
13835
13836 * xftfont.c (xftfont_open): For generating a name, start from
13837 96-byte buffer.
13838
138392008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13840
13841 * frame.h (x_new_fontset2): Fix prototype.
13842
138432008-02-01 Kenichi Handa <handa@m17n.org>
13844
13845 * font.h (struct font_driver): Delete member parse_name.
13846 (font_match_p, font_get_spec, font_parse_fcname)
13847 (font_unparse_fcname): Extern them.
13848 (font_get_name): Adjust prototype.
13849
13850 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13851 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13852 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13853 unnecessary checks for weight, slant, and swidth.
13854 (font_parse_fcname): New function.
13855 (font_unparse_fcname): New function.
13856 (font_parse_name): New function.
13857 (font_match_p): New function.
13858 (font_get_name): Change return value to Lisp string.
13859 (font_get_spec): New function.
13860 (Qunspecified, Qignore_defface): Don't extern them.
13861 (font_find_for_lface): Assume that LFACE is fully specified.
13862 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13863 object, use it for FACE.
13864 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13865 driver->parse_name.
13866 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13867
13868 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13869 prototype.
13870
13871 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13872 argument F. Don't call Fnew_fontset. Instead, directly call
13873 make_fontset.
13874
13875 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13876
13877 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13878 of x_new_fontset2.
13879
13880 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13881 (Qsans__serif): New variables.
13882 (ftfont_generic_family_list): New variable.
13883 (syms_of_ftfont): Initialize the above variables.
13884 (ftfont_pattern_entity): Delete argument NAME.
13885 (ftfont_list_generic_family): New function.
13886 (ftfont_parse_name): Delete this function.
13887 (ftfont_list): Try generic family only when FcFontList found no font.
13888 (ftfont_list_family): Fix args to FcObjectSetBuild.
13889
13890 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13891 object in attrs[LFACE_FONT_INDEX].
13892 (set_lface_from_font_name): Cancel all changes for font-backend.
13893 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13894 function.
13895 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13896 font object in QCfont attribute.
13897 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13898 (realize_default_face) [USE_FONT_BACKEND]: Call
13899 set_lface_from_font_and_fontset.
13900
13901 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13902 "fixed", and signal error here if no suitable font was found.
13903
13904 * xfont.c (xfont_parse_name): Delete this function.
13905
13906 * xftfont.c (xftfont_open): Change coding style of error
13907 handling. Generate fontconfig's fontname pattern.
13908
13909 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13910 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13911
13912 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13913 Both args FONTSET and FONT_OBJECT must be existing ones.
13914
139152008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13916
13917 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13918
139192008-02-01 Kenichi Handa <handa@m17n.org>
13920
13921 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13922
13923 * font.h (struct font): Fix typo.
13924
13925 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13926 XLFD_XXX_INDEX.
13927 (enum xlfd_field_mask): New enum.
13928 (intern_font_field): Changed argument. Change caller. If digits
13929 are followed by non-digits, return a symbol.
13930 (font_expand_wildcards): New function.
13931 (font_parse_xlfd): Fix wildcard handling.
13932 (Ffont_spec): If :name is specified, reflect the info in the other
13933 properties.
13934
13935 * ftfont.c (ftfont_pattern_entity): Fix typo.
13936 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13937 locale.
13938
139392008-02-01 Kenichi Handa <handa@m17n.org>
13940
13941 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13942
13943 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13944 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13945 registry doesn't specify encoding part.
13946 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13947 (font_open_by_name): At first try parsing the name.
13948 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13949 as Lisp symbols.
13950
13951 * fontset.c (reorder_font_vector): Pay attention to the case that
13952 the 3rd element of font_def is nil.
13953 (fontset_font): For the default fontset, append one more fontset
13954 elements for a script-based font specification. Don't add script
13955 attribute on finding a font.
13956 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13957 font name.
13958 (fontset_ascii_font): If a font can't be opened, return nil.
13959
13960 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13961 (ftfont_pattern_entity): New function.
13962 (ftfont_get_cache): Assume that freetype_font_cache is already
13963 initialized.
13964 (ftfont_list): Handle the case that a file is specified in font
13965 name. Use ftfont_pattern_entity to generate entities.
13966 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13967 (syms_of_ftfont): Initialize freetype_font_cache.
13968
13969 * xftfont.c (xftfont_open): Make the font name fontconfig's
13970 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13971 (xftfont_close): Free font->font.name if not NULL.
13972
13973 * xfont.c (xfont_list): If script is specified for a font, return
13974 null_vector.
13975 (xfont_list_family): Declare argument type.
13976
13977 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13978 name, set LFACE_FONT (lface) to nil.
13979
13980 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13981 return Qnil.
13982
139832008-02-01 Kenichi Handa <handa@m17n.org>
13984
13985 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13986 (standard_args): Add "-enable-font-backend".
13987
139882008-02-01 Kenichi Handa <handa@m17n.org>
13989
13990 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13991 (struct xftdraw_list, xftdraw_list): Delete them.
13992 (register_xftdraw, check_xftdraw): Delete them.
13993 (xftfont_prepare_face): Don't call register_xftdraw.
13994 (xftfont_done_face): Don't call check_xftdraw.
13995 (xftfont_draw): Get background color only when with_background is
13996 nonzero.
13997
13998 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13999
140002008-02-01 Kenichi Handa <handa@m17n.org>
14001
14002 These changes are for the new font handling codes.
14003
14004 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14005 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14006 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14007 (FONTSRC, FONTOBJ): New variables.
14008 (obj): Add $(FONTOBJ).
14009 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14010 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14011 @LIBOTF_LIBS@.
14012 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14013 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14014
14015 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14016
14017 * character.h (Vscript_representative_chars): Extern it.
14018
14019 * character.c (Vscript_representative_chars): New variable.
14020 (syms_of_character): Declare it as a Lisp variable.
14021
14022 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14023 enable_font_backend is nonzero, accept the composition method
14024 COMPOSITION_WITH_GLYPH_STRING.
14025
14026 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14027 enumeration COMPOSITION_WITH_GLYPH_STRING.
14028
14029 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14030 members clip_x, clip_y, clip_width, and clip_height.
14031 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14032
14033 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14034 --enable-font-backend. Call syms_of_font.
14035
14036 * fns.c (assoc_no_quit): New function.
14037
14038 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14039 (face_for_font, new_fontset_from_font)
14040 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14041
14042 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14043 (fontset_font, fontset_ascii, face_for_char)
14044 (make_fontset_for_ascii_face, Ffont_info)
14045 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14046 is nonzero, use font-backend mechanism.
14047 (find_font_encoding): Make it non-static.
14048 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14049 New functions.
14050
14051 * frame.h (struct frame): New members resx and resy.
14052 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14053 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14054
14055 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14056 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14057
14058 * lisp.h (assoc_no_quit): Extern it.
14059
14060 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14061 Through out the file, use FONT_INFO_FROM_FACE instead of
14062 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14063 rif->per_char_metric.
14064 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14065 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14066 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14067 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14068 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14069 nonzero, use font-backend mechanism.
14070 (get_per_char_metric): New function.
14071
14072 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14073 (set_lface_from_font_name)
14074 (set_font_frame_param, free_realized_face)
14075 (prepare_face_for_display, clear_face_gcs)
14076 (Finternal_set_font_selection_order, realize_x_face)
14077 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14078 font-backend mechanism.
14079 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14080 (load_face_font) [USE_FONT_BACKEND]: Abort.
14081 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14082 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14083
14084 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14085 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14086 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14087 nonzero, register all available font drivers. Call
14088 x_default_font_parameter for deciding a font.
14089 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14090
14091 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14092 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14093 (x_set_glyph_string_clipping_exactly)
14094 (x_compute_glyph_string_overhangs)
14095 (x_draw_glyph_string_foreground)
14096 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14097 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14098 enable_font_backend is nonzero, use font-backend mechanism.
14099 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14100
141012008-02-01 Kenichi Handa <handa@m17n.org>
14102
14103 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14104 system_eol_type.
14105 (syms_of_coding): Initialize system_eol_type.
14106
14107 * process.c (Fset_process_coding_system): Inherit system's eol
14108 format if necessary.
14109
141102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14111
14112 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14113
141142008-02-01 Kenichi Handa <handa@m17n.org>
14115
14116 * coding.c (decode_eol): Pay attention to buffer relocation in
14117 del_range_2.
14118 (decode_coding): Call decode_eol before restoring undo_list.
14119
141202008-02-01 Kenichi Handa <handa@m17n.org>
14121
14122 * charset.c (Fdefine_charset_internal): Fix setting of
14123 emacs_mule_bytes.
14124
141252008-02-01 Kenichi Handa <handa@m17n.org>
14126
14127 * keyboard.c (read_char): Check if C is a character or not before
14128 looking up Vkeyboard_translate_table.
14129
141302008-02-01 Kenichi Handa <handa@m17n.org>
14131
14132 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14133 condition to terminate the loop.
14134
141352008-02-01 Kenichi Handa <handa@m17n.org>
14136
14137 * coding.c (produce_composition): Compare charbuf[i] instead of
14138 args[i] against 0.
14139 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14140
141412008-02-01 Kenichi Handa <handa@m17n.org>
14142
14143 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14144 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14145 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14146 detect_coding.
14147 (emacs_mule_char): Handle old style (Emacs 20) component character
14148 of a composition.
14149 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14150 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14151 composition rule.
14152 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14153
141542008-02-01 Kenichi Handa <handa@m17n.org>
14155
14156 * coding.c (encode_coding_ccl): Allocate destination dynamically
14157 when necessary.
14158
141592008-02-01 Kenichi Handa <handa@m17n.org>
14160
14161 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14162 the loop. When quitted, show a proper error message.
14163
141642008-02-01 Kenichi Handa <handa@m17n.org>
14165
14166 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14167 src->clip_head and src->clip_tail temporarily instead of src->hl.
14168
14169 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14170 character sequence.
14171 (Fccl_execute_on_string): Use ASET, not XSET.
14172
141732008-02-01 Kenichi Handa <handa@m17n.org>
14174
14175 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14176
141772008-02-01 Kenichi Handa <handa@m17n.org>
14178
14179 * coding.c (decode_coding): Fix the condition of terminating the
14180 decoding loop.
14181
141822008-02-01 Kenichi Handa <handa@m17n.org>
14183
14184 * data.c (Faset): On setting a character bigger than 255 in a
14185 unibyte string, signal an error instead of make the string multibyte.
14186
141872008-02-01 Kenichi Handa <handa@m17n.org>
14188
14189 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14190 made by a mapping table.
14191
141922008-02-01 Kenichi Handa <handa@m17n.org>
14193
14194 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14195 not.
14196 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14197 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14198
14199 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14200 s->face is NULL or not.
14201
142022008-02-01 Kenichi Handa <handa@m17n.org>
14203
14204 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14205 (x_draw_glyph_string): Fix drawing of right_overhang and
14206 left_overhang around/on cursor.
14207
14208 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14209
142102008-02-01 Kenichi Handa <handa@m17n.org>
14211
14212 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14213
142142008-02-01 Kenichi Handa <handa@m17n.org>
14215
14216 * coding.c (Fdefine_coding_system_internal)
14217 (Fdefine_coding_system_alias): Avoid a duplicated element in
14218 Vcoding_system_alist.
14219
142202008-02-01 Kenichi Handa <handa@m17n.org>
14221
14222 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14223
14224 * coding.c (Qcoding_system_define_form): New variable.
14225 (syms_of_coding): Intern and staticpro it.
14226 (Fcoding_system_p): Check Qcoding_system_define_form.
14227 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14228
14229 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14230 Fcoding_system_p.
14231 (CHECK_CODING_SYSTEM): If ID is not available, call
14232 Fcheck_coding_system.
14233 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14234 Try also Fcheck_coding_system.
14235
142362008-02-01 Kenichi Handa <handa@m17n.org>
14237
14238 * coding.c (code_conversion_restore): GCPRO arg.
14239
142402008-02-01 Kenichi Handa <handa@m17n.org>
14241
14242 * character.c (lisp_string_width): Check multibyteness of STRING.
14243
142442008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14245
14246 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14247 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14248 (decode_mac_font_name): Use decode_coding_c_string instead of
14249 decode_coding.
14250 (x_load_font): Initialize fontp->fontset to -1. Set
14251 fontp->encoding_type.
14252
142532008-02-01 Kenichi Handa <handa@m17n.org>
14254
14255 * search.c (search_buffer): Give up BM search on case-fold-search
14256 if one of a target character has a case-equivalence of different
14257 byte length even if that target charcter is an ASCII.
14258 (simple_search): Fix calculation of byte length of matched text.
14259 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14260
142612008-02-01 Kenichi Handa <handa@m17n.org>
14262
14263 * coding.c (decode_coding): Fix handling of invalid bytes.
14264
142652008-02-01 Kenichi Handa <handa@m17n.org>
14266
14267 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14268 Unicode characters.
14269
142702008-02-01 Kenichi Handa <handa@m17n.org>
14271
14272 * coding.c (encode_coding_object): If a pre-write-conversion
14273 function makes a new buffer, kill it.
14274
142752008-02-01 Kenichi Handa <handa@m17n.org>
14276
14277 * coding.c (QCascii_compatible_p): New variable.
14278 (syms_of_coding): Initialize it.
14279 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14280 calling string_char.
14281 (record_conversion_result): Add `default:' case.
14282 (coding_charset_list): Delete unused variable `coding_type'.
14283 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14284 property in the plist of the coding system.
14285 (Fcoding_system_put): Check QCascii_compatible_p.
14286
142872008-02-01 Miles Bader <miles@gnu.org>
14288
14289 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14290 removed calculation of frame `f', as it's now used.
14291
142922008-02-01 Kenichi Handa <handa@m17n.org>
14293
14294 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14295 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14296 (UNIDATA): New variable.
14297 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14298 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14299 $(RUN_TEMACS) unconditionally.
14300
143012008-02-01 Kenichi Handa <handa@m17n.org>
14302
14303 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14304 (admindir): New variable.
14305 ($(lispsource)international/charprop.el): New target.
14306
143072008-02-01 Miles Bader <miles@gnu.org>
14308
14309 * character.c (chars-in-region): Remove obsolete function.
14310 (syms_of_character): Remove its initialization.
14311
143122008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14313
14314 * w32select.c (validate_coding_system)
14315 (setup_windows_coding_system): New functions.
14316 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14317 setup_windows_coding_system.
14318 (setup_config, Fw32_get_clipboard_data): Use
14319 validate_coding_system.
14320 (Fx_selection_exists): Move call to setup_config to a place
14321 where signals are allowed.
14322
14323 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14324 (Fcheck_coding_system): Add declarations.
14325
143262008-02-01 Kenichi Handa <handa@m17n.org>
14327
14328 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14329
143302008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14331
14332 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14333 string as the second argument for x_new_fontset.
14334
143352008-02-01 Kenichi Handa <handa@m17n.org>
14336
14337 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14338 (encode_coding_object): Use safe_call instead of call2.
14339
143402008-02-01 Kenichi Handa <handa@m17n.org>
14341
14342 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14343
14344 * Makefile.in (lisp): Include charprop.el.
14345
143462008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14347
14348 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14349 Not sure if it's unnecessary.
14350
143512008-02-01 Steven Tamm <steventamm@mac.com>
14352
14353 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14354 some possibly unnecessary fontset checking code that crashed
14355 when creating a new frame.
14356
143572008-02-01 Kenichi Handa <handa@m17n.org>
14358
14359 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14360 lookup_face.
14361
14362 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14363
14364 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14365
143662008-02-01 Kenichi Handa <handa@m17n.org>
14367
14368 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14369 (coding_charset_list): New function.
14370
14371 * coding.h (coding_charset_list): Extern it.
14372
143732008-02-01 Kenichi Handa <handa@m17n.org>
14374
14375 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14376 concatenation of family and registry.
14377
143782008-02-01 Kenichi Handa <handa@m17n.org>
14379
14380 * character.h (BYTE8_STRING): Fix typo.
14381
14382 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14383 string to multibyte (sync to HEAD).
14384
14385 * casefiddle.c (casify_region): Handle changes in byte-length
14386 using replace_range_2 (sync to HEAD).
14387
143882008-02-01 Andreas Schwab <schwab@suse.de>
14389
14390 * chartab.c (map_char_table): GCPRO table and arg.
14391
143922008-02-01 Kenichi Handa <handa@m17n.org>
14393
14394 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14395 already at limit.
14396
143972008-02-01 Kenichi Handa <handa@m17n.org>
14398
14399 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14400 instead of fast_c_string_match_ignore_case.
14401 (find_font_encoding): Change argument to Lisp_Object. Use
14402 fast_string_match_ignore_case instead of
14403 fast_c_string_match_ignore_case. Change caller.
14404
144052008-02-01 Kenichi Handa <handa@m17n.org>
14406
14407 * xdisp.c (get_next_display_element): In unibyte case, decide to
14408 display in octal form by checking a character by
14409 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14410
14411 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14412
14413 * character.c (unibyte_has_multibyte_table): New variable.
14414
14415 * character.h (unibyte_has_multibyte_table): Extern it.
14416 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14417
144182008-02-01 Kenichi Handa <handa@m17n.org>
14419
14420 * coding.c (encode_coding_iso_2022): Fix handling of charset
14421 annotation.
14422
144232008-02-01 Kenichi Handa <handa@m17n.org>
14424
14425 * coding.c (setup_coding_system): If coding_system is nil, use
14426 Qundecided.
14427 (Fterminal_coding_system): Return nil if terminal coding system is
14428 `undecided'.
14429 (syms_of_coding): Define coding-system `undecided' here. Setup
14430 terminal_coding as `undecided'.
14431
144322008-02-01 Kenichi Handa <handa@m17n.org>
14433
14434 * xdisp.c (message_dolog, set_message_1): Call
14435 unibyte_char_to_multibyte with arg type int.
14436
14437 * lread.c (read1): Fix reading of a char-table.
14438
14439 * print.c (print_object): Include sub char-table in circularities
14440 detection.
14441
144422008-02-01 Kenichi Handa <handa@m17n.org>
14443
14444 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14445 Append the found sequences in car of ARGS instead of prepending.
14446
144472008-02-01 Kenichi Handa <handa@m17n.org>
14448
14449 * fileio.c (report_file_error): Make a unibyte string from
14450 strerror (errorno).
14451 (Fsubstitute_in_file_name): Fix the arg to
14452 unibyte_char_to_multibyte. It is evaluated twice.
14453
144542008-02-01 Kenichi Handa <handa@m17n.org>
14455
14456 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14457
144582008-02-01 Kenichi Handa <handa@m17n.org>
14459
14460 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14461 BOM is not found.
14462 (detect_coding, detect_coding_system): Optimization for ISO-2022
14463 when no 8-bit data is found.
14464
144652008-02-01 Jason Rumney <jasonr@gnu.org>
14466
14467 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14468
144692008-02-01 Kenichi Handa <handa@m17n.org>
14470
14471 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14472 CHARS.
14473
144742008-02-01 Steven Tamm <steventamm@mac.com>
14475
14476 * macterm.c (mac_encode_char): Add charset argument and update
14477 to use encoding_type.
14478 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14479 switch to pure fontset.
14480 (decode_mac_font_name): Temporarily remove decoding.
14481 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14482 (x_load_font): Temporarily remove encoding.
14483
144842008-02-01 Kenichi Handa <handa@m17n.org>
14485
14486 * xfaces.c (Fface_font): If frame is not on a window system,
14487 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14488 refer to face->font.
14489 (split_font_name_into_vector, build_font_name_from_vector)
14490 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14491 when HAVE_WINDOW_SYSTEM is defined.
14492
144932008-02-01 Kenichi Handa <handa@m17n.org>
14494
14495 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14496 (x_produce_glyphs): Fix setting of members of cmp in case
14497 cmp->glyph_len is zero.
14498
14499 * fontset.c (Fset_fontset_font): Fix docstring.
14500 (Ffontset_info): Make it backward compatible. New arg ALL.
14501
145022008-02-01 Kim F. Storm <storm@cua.dk>
14503
14504 * process.c (read_process_output): Grow decoding_buf when needed;
14505 this could cause a crash in allocate_string and compact_small_strings.
14506
145072008-02-01 Kenichi Handa <handa@m17n.org>
14508
14509 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14510
145112008-02-01 Kenichi Handa <handa@m17n.org>
14512
14513 * coding.c (setup_coding_system): Set coding->common_flags
14514 correctly for raw-text.
14515 (consume_chars): On encoding unibyte text by raw-text, don't check
14516 multibyte form.
14517 (encode_coding): On encoding by raw-text, never use translation tables.
14518
14519 * fileio.c (e_write): Short cut for the case of no encoding.
14520
145212008-02-01 Kenichi Handa <handa@m17n.org>
14522
14523 * coding.c (detect_coding, detect_coding_system): Delete unused
14524 variables.
14525
145262008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14529 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14530
145312008-02-01 Kenichi Handa <handa@m17n.org>
14532
14533 * coding.c (Ffind_coding_systems_region_internal): Include
14534 raw-text and no-conversion in the result.
14535
145362008-02-01 Kenichi Handa <handa@m17n.org>
14537
14538 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14539 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14540 FONT_DEF.
14541 (font_def_arg, add_arg, from_arg, to_arg): New args.
14542 (set_fontset_font): Change argument.
14543 (Fset_fontset_font): Fix for the case that TARGET is a script
14544 name and charset name.
14545 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14546
145472008-02-01 Kenichi Handa <handa@m17n.org>
14548
14549 * fontset.c (fontset_font): Rename from fontset_face. Change return
14550 value.
14551 (face_suitable_for_char_p, face_for_char): Adjust for the change
14552 of fontset_font.
14553 (make_fontset_for_ascii_face): Fix setting of the fontset element
14554 for ASCII.
14555 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14556 to get a font name.
14557 (Ffontset_info): Adjust for the change of fontset_font.
14558
14559 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14560
14561 * character.h (LEADING_CODE_LATIN_1_MIN)
14562 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14563
145642008-02-01 Kenichi Handa <handa@m17n.org>
14565
14566 * editfns.c (check_translation): New function.
14567 (Ftranslate_region_internal): Handle M:N mapping.
14568
145692008-02-01 Kenichi Handa <handa@m17n.org>
14570
14571 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14572
145732008-02-01 Kenichi Handa <handa@m17n.org>
14574
14575 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14576 goto invalid_code.
14577 (decode_coding_iso_2022): Fix handling of invalid designation.
14578
14579 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14580 after calling code_conversion_save.
14581
145822008-02-01 Kenichi Handa <handa@m17n.org>
14583
14584 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14585
14586 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14587
14588 * fontset.c: Include "intervals.h".
14589 (fontset_face): Fix comparing of Lisp_Objects.
14590 (free_face_fontset, new_fontset_from_font_name): Fix
14591 Lisp_Object/int mixup.
14592
14593 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14594
14595 * coding.c: Add many prototypes for static functions.
14596 (get_translation_table): Allow max_lookup to be NULL.
14597 (decode_coding, Ffind_coding_systems_region_internal)
14598 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14599 get_translation_table with max_lookup NULL.
14600
146012008-02-01 Kenichi Handa <handa@m17n.org>
14602
14603 * coding.c (get_translation_table): Declare it as Lisp_Object.
14604 (LOOKUP_TRANSLATION_TABLE): New macro.
14605 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14606 instead of CHAR_TABLE_REF.
14607
146082008-02-01 Kenichi Handa <handa@m17n.org>
14609
14610 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14611 annotation data format.
14612 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14613 Change arguments FROM and TO to single argument NCHARS. Change caller.
14614 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14615 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14616 (decode_coding_ccl, decode_coding_charset): Pay attention to
14617 coding->charbuf_used.
14618 (get_translation): New function.
14619 (produce_chars): New arguments translation_table and last_block.
14620 Translate characters here. Return number of carryover chars.
14621 Change caller.
14622 (produce_composition): New argument pos. Change caller.
14623 Adjust for the change of annotation data format.
14624 (produce_charset, produce_annotation): Likewise.
14625 (decode_coding, encode_coding): Don't call translate_chars.
14626 (consume_chars): New arg translation_table. Change caller.
14627 (translate_chars): Delete.
14628 (syms_of_coding): Make translation-table's number of extra slots 2.
14629
146302008-02-01 Kenichi Handa <handa@m17n.org>
14631
14632 * search.c (simple_search): Fix setting this_pos_byte in backward
14633 search.
14634
14635 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14636 byte sequence.
14637 (detect_coding_ccl): Fix setting of the variable valids.
14638
146392008-02-01 Kenichi Handa <handa@m17n.org>
14640
14641 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14642
14643 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14644
14645 * editfns.c (Ftranslate_region_internal): Rename from
14646 Ftranslate_region. Accept a char-table in TABLE.
14647 (syms_of_editfns): Defsubr Stranslate_region_internal.
14648
14649 * xfaces.c (set_lface_from_font_name): If a font is specified for
14650 a frame, generate a fontset from the font.
14651 (build_scalable_font_name): If the scalable font is requested for
14652 a specific size, don't change that size.
14653 (try_font_list): Try a scalable font also in the case that a
14654 pattern string is specified.
14655
146562008-02-01 Kenichi Handa <handa@m17n.org>
14657
14658 * xfaces.c (Fface_font): New optional arg CHARACTER.
14659
146602008-02-01 Kenichi Handa <handa@m17n.org>
14661
14662 * charset.h (CHARSET_OFFSET): New macro.
14663
146642008-02-01 Kenichi Handa <handa@m17n.org>
14665
14666 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14667
14668 * fontset.c (fontset_face): Handle the case that repertory is a
14669 char-table.
14670 (find_font_encoding): Return nil for unknown encoding.
14671 (Fset_fontset_font): Ignore a font of unknown encoding.
14672
146732008-02-01 Kenichi Handa <handa@m17n.org>
14674
14675 * keymap.c (describe_vector): Handle default value of a char table.
14676
14677 * fontset.c (fontset_face): Handle fallback fonts correctly.
14678 (Ffontset_info): Return infomation about fallback fonts.
14679
146802008-02-01 Kenichi Handa <handa@m17n.org>
14681
14682 * fontset.c (FONTSET_DEFAULT): New macro.
14683 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14684 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14685 the case that it is nil.
14686 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14687 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14688
14689 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14690 subset or superset.
14691
146922008-02-01 Kenichi Handa <handa@m17n.org>
14693
14694 * emacs.c (main): Call init_charset after syms_of_XXX.
14695
14696 * charset.c (Vcharset_map_directory): Delete.
14697 (Vcharset_map_path): New variable.
14698 (load_charset_map_from_file): Use Vcharset_map_path instead.
14699 (init_charset): Initialize Vcharset_map_path.
14700 (syms_of_charset): Delete declaration of "charset-map-directory",
14701 add declaration of "charset-map-path".
14702
147032008-02-01 Kenichi Handa <handa@m17n.org>
14704
14705 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14706 ASCII only string.
14707
14708 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14709
14710 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14711 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14712
147132008-02-01 Kenichi Handa <handa@m17n.org>
14714
14715 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14716
14717 * coding.c (QCmnemonic, QCdefalut_char)
14718 (QCdecode_translation_table, QCencode_translation_table)
14719 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14720 (get_translation_table): Return a list of translation tables if
14721 necessary.
14722 (decode_coding): Call get_translation_table with ENCODEP 0.
14723 (char_encodable_p): If translation_table is non-nil, always call
14724 translate_char.
14725 (Fdefine_coding_system_internal): Accept list of translation
14726 tables as :encode-translation-table and :decode-translation-table.
14727 (Fcoding_system_put): New function.
14728 (syms_of_coding): Declare new symbols. Defsubr
14729 Scoding_system_put.
14730 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14731 typically JISX0212.
14732
14733 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14734 when the charset is superset type.
14735
14736 * character.c (translate_char): Accept list of translation tables.
14737
147382008-02-01 Kenichi Handa <handa@m17n.org>
14739
14740 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14741 (CODING_ATTR_TRANS_TBL): New macro.
14742
14743 * coding.c (get_translation_table): New function.
14744 (translate_chars): Fix the bug of skipping annotation data.
14745 (decode_coding, encode_coding): Utilize get_translation_table.
14746 (char_encodable_p, Funencodable_char_position): Translate char if
14747 necessary.
14748 (Ffind_coding_systems_region_internal)
14749 (Fcheck_coding_systems_region): Setup translation table for encode
14750 in a coding system attribute vector in advance.
14751 (Fdefine_coding_system_internal): Allow a symbol as translation
14752 table. For shift-jis type coding system, allow 4th charset.
14753
147542008-02-01 Kenichi Handa <handa@m17n.org>
14755
14756 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14757
14758 * xdisp.c (get_next_display_element): Pass -1 as POS to
14759 FACE_FOR_CHAR if displaying a C-string.
14760
147612008-02-01 Kenichi Handa <handa@m17n.org>
14762
14763 * composite.c (get_composition_id): Handle xoff and yoff in a
14764 composition rule.
14765
14766 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14767 (struct composition): New member lbearing and rbearing.
14768
14769 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14770 (x_get_glyph_overhangs): Handle a composition glyph.
14771 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14772
14773 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14774 composition glyph.
14775
147762008-02-01 Kenichi Handa <handa@m17n.org>
14777
14778 * print.c: Include charset.h.
14779 (Vprint_charset_text_property): New variable.
14780 (Qdefault): Extern it.
14781 (PRINT_STRING_NON_CHARSET_FOUND)
14782 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14783 (print_check_string_result): New variable.
14784 (print_check_string_charset_prop): New function.
14785 (print_prune_charset_plist): New variable.
14786 (print_prune_string_charset): New function.
14787 (print_object): Call print_prune_string_charset if
14788 Vprint_charset_text_property is not t.
14789 (print_interval): Print nothing if interval->plist is nil.
14790 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14791 variable. Init and staticpro print_prune_charset_plist.
14792
147932008-02-01 Kenichi Handa <handa@m17n.org>
14794
14795 * fontset.c (new_fontset_from_font_name): Use the specified font
14796 for all characters in the new fontset.
14797
14798 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14799 OBJECT args.
14800
14801 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14802 OBJECT args for composition too.
14803
14804 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14805 OBJECT args.
14806
148072008-02-01 Kenichi Handa <handa@m17n.org>
14808
14809 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14810
14811 * fontset.c (reorder_font_vector): Adjust for the change of
14812 FONT_DEF format.
14813 (fontset_face): New arg id. Change caller.
14814 (face_for_char): New args pos and object.
14815 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14816 (fs_query_fontset): Check NAME by Fassoc too.
14817 (Fset_fontset_font): Allow non-XLFD font name.
14818 (Ffontset_info): Adjust for the change of FONT_DEF format.
14819
14820 * fontset.h (face_for_char): Adjust prototype.
14821
14822 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14823 (append_space, extend_face_to_end_of_line)
14824 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14825 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14826
14827 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14828 POS and OBJECT args.
14829
14830 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14831 POS and OBJECT args.
14832
148332008-02-01 Jason Rumney <jasonr@gnu.org>
14834
14835 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14836 of GlobalAlloc'ed memory.
14837
148382008-02-01 Kenichi Handa <handa@m17n.org>
14839
14840 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14841
14842 * charset.h (charset_table_used): Delete extern.
14843
14844 * charset.c (charset_table_used): Make it static.
14845 (map_charset_chars): Fix args to c_function with.
14846
14847 * chartab.c (map_sub_char_table_for_charset): Fix args to
14848 c_function with.
14849
14850 * coding.h (enum coding_result_code): Delete
14851 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14852
14853 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14854 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14855 (Vlast_code_conversion_error): New variables.
14856 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14857 (ONE_MORE_BYTE): Record error if any instead of signaling an
14858 error. If non-ASCII multibyte char is found, return the negative
14859 value of the code. All callers changed to check it.
14860 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14861 (record_conversion_result): New function. Change all codes setting
14862 coding->result to call this function.
14863 (detect_coding_utf_8, decode_coding_utf_8)
14864 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14865 Don't use the local variable incomplete.
14866 (emacs_mule_char): Change the second arg to `const'.
14867 (decode_coding): Fix of flushing out unprocessed data.
14868 (make_conversion_work_buffer): Fix making of a work buffer.
14869 (decode_coding_object): Return coding->dst_object.
14870
14871 * fontset.c (set_fontset_font): Fix args.
14872
14873 * lisp.h (CHARACTERBITS): Define as 22.
14874
14875 * process.c (send_process): Be sure to set coding->src_multibyte.
14876
14877 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14878
148792008-02-01 Kenichi Handa <handa@m17n.org>
14880
14881 * xdisp.c (handle_auto_composed_prop): Give limit to
14882 Fnext_single_char_property_change.
14883
148842008-02-01 Kenichi Handa <handa@m17n.org>
14885
14886 * composite.c (syms_of_composite): Don't make the composition hash
14887 table weak.
14888
14889 * fontset.c (Fset_fontset_font): Fix docstring.
14890
14891 * lisp.h (detect_coding_system): Adjust prototype.
14892
14893 * fileio.c (kill_workbuf_unwind): Delete this function.
14894 (Finsert_file_contents): Adjust the call of detect_coding_system.
14895 Get conversion_buffer by code_conversion_save. Use the macro
14896 CODING_MAY_REQUIRE_DECODING. After decoding, update
14897 coding_system.
14898
14899 * coding.h (make_conversion_work_buffer): Delete extern.
14900 (code_conversion_save): Extern it.
14901
14902 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14903 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14904 (decode_coding_utf_8): Don't do eol converion.
14905 (detect_coding_utf_16): Check coding->src_chars, not
14906 coding->src_bytes. Add heuristics for those that have no signature.
14907 (decode_coding_emacs_mule, decode_coding_iso_2022)
14908 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14909 Don't do eol converion.
14910 (adjust_coding_eol_type): Return a new coding system.
14911 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14912 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14913 each change.
14914 (decode_coding): Pay attention to undo_list. Do eol conversion for
14915 all types of coding-systems (if necessary).
14916 (Vcode_conversion_work_buf_list): Delete it.
14917 (Vcode_conversion_reused_workbuf): Rename from
14918 Vcode_conversion_reused_work_buf.
14919 (Vcode_conversion_workbuf_name): New variable.
14920 (reused_workbuf_in_use): New variable.
14921 (make_conversion_work_buffer): Delete the arg DEPTH.
14922 (code_conversion_restore): Change argument to cons.
14923 (code_conversion_save): Delete the argument BUFFER. Change callers.
14924 (detect_coding_system): New argument src_chars. Change callers.
14925 Fix for utf-16 detection.
14926 (init_coding_once): Don't use ISO_carriage_return.
14927 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14928 reused_workbuf_in_use.
14929
149302008-02-01 Kenichi Handa <handa@m17n.org>
14931
14932 * keymap.c (store_in_keymap): Pay attention to the case that idx
14933 is a cons specifying a character range.
14934
149352008-02-01 Kenichi Handa <handa@m17n.org>
14936
14937 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14938 HANDLED_RECOMPUTE_PROPS.
14939
14940 * coding.c (Fdefine_coding_system_internal): Fix checking of
14941 ascii compatibility.
14942
149432008-02-01 Kenichi Handa <handa@m17n.org>
14944
14945 * charset.c (find_charsets_in_text): Delete unused locale variable.
14946 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14947
14948 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14949 Resync charset_list to Vemacs_mule_charset_list.
14950
14951 * keymap.c (store_in_keymap): Pay attention to the case that idx
14952 is a cons specifying a character range.
14953
149542008-02-01 Kenichi Handa <handa@m17n.org>
14955
14956 * composite.c (update_compositions): Bind inhibit-read-only, etc
14957 to t before calling remove-list-of-text-properties.
14958
14959 * print.c (print_object): Always print ASCII chars as is.
14960
149612008-02-01 Kenichi Handa <handa@m17n.org>
14962
14963 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14964
14965 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14966 is a char table.
14967
149682008-02-01 Kenichi Handa <handa@m17n.org>
14969
14970 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14971
149722008-02-01 Kenichi Handa <handa@m17n.org>
14973
14974 * xfaces.c (set_lface_from_font_name): Fix for the case that
14975 FONTNAME is not fontset name.
14976
149772008-02-01 Kenichi Handa <handa@m17n.org>
14978
14979 * fns.c (base64_encode_1): Fix previous change.
14980
149812008-02-01 Kenichi Handa <handa@m17n.org>
14982
14983 * fontset.c (set_fontset_font): New function.
14984 (Fset_fontset_font): If a font is specified for a charset, use
14985 map_charset_chars to store the font spec in a fontset.
14986
149872008-02-01 Kenichi Handa <handa@m17n.org>
14988
14989 * fontset.c (fontset_face): Create a fallback fontset on demand.
14990 (make_fontset): Don't create a fallback fontset here.
14991 (free_face_fontset): Free a fallback fontset (if any) too.
14992 (n_auto_fontsets): Delete this variable.
14993 (auto_fontset_alist): New variable.
14994 (new_fontset_from_font_name): Check auto_fontset_alist.
14995 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14996 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14997 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14998 Defsubr Sfontset_list_all.
14999
150002008-02-01 Kenichi Handa <handa@m17n.org>
15001
15002 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15003
150042008-02-01 Kenichi Handa <handa@m17n.org>
15005
15006 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15007
150082008-02-01 Kenichi Handa <handa@m17n.org>
15009
15010 * editfns.c (Fgoto_char): Fix docstring.
15011
150122008-02-01 Kenichi Handa <handa@m17n.org>
15013
15014 * insdel.c (insert_from_gap): Adjust intervals correctly.
15015
150162008-02-01 Jason Rumney <jasonr@gnu.org>
15017
15018 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15019 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15020 (w32_initialize): Try to load it.
15021 (x_get_font_repertory): Use it if available.
15022 (w32_encode_char): Add shortcut for unicode output.
15023
15024 * w32fns.c (w32_load_system_font): Default charset to -1.
15025 (x_to_w32_charset): Match all fonts for unicode.
15026 (w32_to_x_charset): New parameter matching. Don't return partial
15027 or wildcard charsets.
15028 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15029 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15030 (w32_to_x_font): Match charset to real charset.
15031 (enum_font_cb2): Always list unicode versions.
15032
15033 * makefile.w32-in (temacs): Increase EMHEAP.
15034
150352008-02-01 Jason Rumney <jasonr@gnu.org>
15036
15037 * w32term.c (w32_encode_char): New charset parameter.
15038 font_info.encoding becomes encoding_type.
15039 (x_get_font_repertory): New function. Warning: stub only!
15040 (x_new_font): Return quickly if font already set.
15041 (x_new_fontset): fontsetname parameter is Lisp_Object.
15042 Use new fs_query_fontset. Try new_fontset_from_font_name.
15043 Use fontset_name for return value.
15044
15045 * w32term.h: Declare x_get_font_repertory.
15046
15047 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15048 place of find_charset_in_text. Use encode_coding_object in place
15049 of encode_coding.
15050 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15051 decode_coding.
15052
15053 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15054 of x_new_fontset.
15055 (w32_load_system_font): Initialize charset as unicode.
15056 font_info.encoding becomes encoding_type.
15057 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15058 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15059 (syms_of_w32fns): Set get_font_repertory_func.
15060
15061 * w32console.c: Include character.h. Use terminal_encode_buffer
15062 from term.c.
15063 (write_glyphs): Use new version of encode_terminal_code. Use
15064 encode_coding_object in place of encode_coding.
15065
15066 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15067 encoding becomes encoding_type.
15068
15069 * term.c (terminal_encode_buffer): Make externally visible.
15070
15071 * makefile.w32-in: Add character.h dependancies.
15072 (character.o, chartab.o): New targets.
15073
150742008-02-01 Kenichi Handa <handa@m17n.org>
15075
15076 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15077 CODING_ID_EOL_TYPE.
15078
150792008-02-01 Andreas Schwab <schwab@suse.de>
15080
15081 * coding.c (produce_chars): Revert last change.
15082
150832008-02-01 Kenichi Handa <handa@m17n.org>
15084
15085 * charset.h (charset_unicode): Extern it.
15086
15087 * charset.c (string_xstring_p): Check by (C >= 0x100).
15088 (find_charsets_in_text): Change format of the arc CHARSETS. New
15089 arg MULTIBYTE.
15090 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15091 change of find_charsets_in_text.
15092 (Fsplit_char): Fix doc. Never return unknown.
15093
15094 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15095
15096 * coding.c (Fdefine_coding_system_alias): Update
15097 Vcoding_system_list.
15098
15099 * fontset.c (load_font_get_repertory): Pay attention to the case
15100 that ENCODING of a font is specified by a char-table.
15101
15102 * xterm.c (x_get_font_repertory): Handle the case that the
15103 encoding of font is other than Unicode.
15104
151052008-02-01 Kenichi Handa <handa@m17n.org>
15106
15107 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15108 if a character is encodable by the terminal coding system. If
15109 not, produces proper number of `?'s. Update
15110 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15111 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15112
151132008-02-01 Kenichi Handa <handa@m17n.org>
15114
15115 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15116 variables.
15117 (encode_terminal_code): Change argument. Encode multiple
15118 characters at once. Store the result of encoding in
15119 terminal_encode_buffer.
15120 (write_glyphs, insert_glyphs): Adjust for the change of
15121 encode_terminal_code.
15122 (term_init): Initialize terminal_encode_buffer and
15123 terminal_encode_buf_size.
15124
15125 * coding.c (consume_chars): If coding->src_object is nil, don't
15126 check annotation.
15127
151282008-02-01 Kenichi Handa <handa@m17n.org>
15129
15130 * character.c (char_string): Use ASCII_CHAR_P instead of
15131 SINGLE_BYTE_CHAR_P.
15132
151332008-02-01 Kenichi Handa <handa@m17n.org>
15134
15135 * xdisp.c (handle_auto_composed_prop): Check if the last
15136 characters of auto-composed region is newly composed with the
15137 following characters.
15138 (handle_composition_prop): Fix checking of point being inside
15139 composition.
15140
151412008-02-01 Kenichi Handa <handa@m17n.org>
15142
15143 * fns.c (concat): Don't change multibyteness of the result by
15144 concatenating an 8-bit character.
15145
15146 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15147 multibyteness of the result when newelt is an 8-bit character.
15148
151492008-02-01 Dave Love <fx@gnu.org>
15150
15151 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15152 EMACS_INT.
15153
15154 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15155
15156 * xfaces.c (face_numeric_value): Declare dim size_t.
15157 (Finternal_lisp_face_equal_p): Remove unused f.
15158
15159 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15160 (MATRIX_ROW): Remove unused vars.
15161 (draw_glyphs, x_insert_glyphs, fast_find_position)
15162 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15163 byte/char counts.
15164
15165 * regex.c (regex_compile): Remove unused var.
15166
15167 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15168
15169 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15170 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15171
15172 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15173
15174 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15175
15176 * fileio.c (Fwrite_region): Remove unused var.
15177
15178 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15179 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15180
15181 * composite.c (Fremove_list_of_text_properties): Declare.
15182
15183 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15184 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15185 (coding_inherit_eol_type): Remove unused attrs.
15186 (detect_coding): Cast arg of detect_eol.
15187
15188 * charset.c (syms_of_charset): Remove unused var p.
15189 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15190 byte/char counts.
15191
15192 * casetab.c (set_case_table): Remove unused var.
15193
15194 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15195 unused vars.
15196
151972008-02-01 Dave Love <fx@gnu.org>
15198
15199 * xterm.c (x_bitmap_mask): Declare.
15200
152012008-02-01 Dave Love <fx@gnu.org>
15202
15203 * xterm.c (x_term_init): Fix type error.
15204
15205 * lisp.h: Add Funibyte_char_to_multibyte.
15206
15207 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15208 (Fset_coding_system_priority): Doc fix.
15209
15210 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15211
15212 * indent.c (check_composition): Make start and end EMACS_INT.
15213
15214 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15215
15216 * xdisp.c (handle_composition_prop, check_point_in_composition):
15217 Make buffer positions EMACS_INT.
15218
15219 * composite.c (find_composition, run_composition_function)
15220 (update_compositions, Ffind_composition_internal): Make buffer
15221 positions EMACS_INT.
15222
15223 * composite.h (find_composition, update_compositions): Make
15224 position args EMACS_INT.
15225
15226 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15227
15228 * intervals.c (get_property_and_range):
15229 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15230
15231 * unexalpha.c: Don't include varargs.h.
15232
152332008-02-01 Dave Love <fx@gnu.org>
15234
15235 * coding.h (ENCODE_UTF_8): New.
15236
15237 * Makefile.in (gtkutil.o): Depend on coding.h.
15238
15239 * coding.c (Fset_coding_system_priority): Doc fix.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15244 the case of auto saving.
15245
152462008-02-01 Andreas Schwab <schwab@suse.de>
15247
15248 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15249 `range' from GC.
15250
152512008-02-01 Kenichi Handa <handa@m17n.org>
15252
15253 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15254
152552008-02-01 Kenichi Handa <handa@m17n.org>
15256
15257 * fileio.c (choose_write_coding_system): Return a decided coding system.
15258 (Fwrite_region): Set Vlast_coding_system_used to the return value
15259 of choose_write_coding_system.
15260
152612008-02-01 Kenichi Handa <handa@m17n.org>
15262
15263 * charset.c (Fset_charset_priority): Pay attention to duplicated
15264 arguments.
15265
15266 * coding.c (QCcategory): New variable.
15267 (syms_of_coding): Defsym it. Set all elements of
15268 Vcoding_category_table and their symbol values.
15269 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15270 coding-category-XXX, and coding-category-list.
15271 (Fdefine_coding_system_internal): Add category in the plist.
15272
152732008-02-01 Kenichi Handa <handa@m17n.org>
15274
15275 * callproc.c (Fcall_process): Handle carryover correctly.
15276
15277 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15278 (raw_text_coding_system): Check NILP (coding_system).
15279 (coding_inherit_eol_type): Check NILP (coding_system) and
15280 NILP (parent).
15281 (consume_chars): Fix for the case of raw-text.
15282
15283 * process.c (read_process_output): Handle carryover correctly.
15284
152852008-02-01 Dave Love <fx@gnu.org>
15286
15287 * regex.c (re_search_2): Fix last change.
15288
152892008-02-01 Kenichi Handa <handa@m17n.org>
15290
15291 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15292 target_multibyte. Even in a unibyte case, return a converted
15293 multibyte char.
15294 (GET_CHAR_AFTER): New macro.
15295 (PATFETCH): Translate via multibyte char.
15296 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15297 (SETUP_MULTIBYTE_RANGE): New macro.
15298 (regex_compile): Setup compiled code so that its multibyteness
15299 matches that of a target. Fix the handling of "[X-YZ]" using
15300 SETUP_MULTIBYTE_RANGE.
15301 (analyse_first) <charset>: For filling fastmap for all multibyte
15302 characters, don't check by BASE_LEADING_CODE_P.
15303 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15304 the same as RE_MULTIBYTE_P (bufp) now.
15305 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15306 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15307 (TRANSLATE_VIA_MULTIBYTE): New macro.
15308 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15309 It is the same as RE_MULTIBYTE_P (bufp) now.
15310 <exactn>: Translate via multibyte.
15311 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15312 translate it.
15313 <charset, charset_not>: Fetch a character by
15314 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15315 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15316 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15317 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15318 by GET_CHAR_AFTER.
15319 (bcmp_translate): Likewise.
15320
15321 * search.c (compile_pattern): Check the member target_multibyte,
15322 not the member multibyte of buf.
15323
15324 * lread.c (read1): While reading a string, set force_singlebyte
15325 and force_multibyte correctly.
15326
15327 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15328 up of unibyte_to_multibyte_table.
15329
153302008-02-01 Kenichi Handa <handa@m17n.org>
15331
15332 * coding.c (setup_coding_system): If coding has
15333 post-read-conversion or pre-write-conversion, set
15334 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15335 respectively.
15336 (decode_coding_gap): Run post-read-conversion if any.
15337
15338 * fileio.c (Finsert_file_contents): Even if we read into a
15339 unibyte buffer, check if we must decode the result or not.
15340
153412008-02-01 Kenichi Handa <handa@m17n.org>
15342
15343 * coding.c (make_conversion_work_buffer): Change the work buffer
15344 name to the same one as that of Emacs 21.
15345
153462008-02-01 Kenichi Handa <handa@m17n.org>
15347
15348 * coding.h (make_conversion_work_buffer): Adjust prototype.
15349 (code_conversion_restore): Don't extern it.
15350
15351 * coding.c (detected_mask): Delete unused variable.
15352 (decode_coding_iso_2022): Pay attention to the byte sequence of
15353 CTEXT extended segment, and retain those bytes as is.
15354 (decode_coding_ccl): Delete unused variable `valids'.
15355 (setup_coding_system): Delete unused variable `category'.
15356 (consume_chars): Delete unused variable `category'. Make it work
15357 for non-multibyte case.
15358 (make_conversion_work_buffer): Change argument.
15359 (saved_coding): Delete unused variable.
15360 (code_conversion_restore): Don't check saved_coding->destination.
15361 (code_conversion_save): New function.
15362 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15363 instead of record_unwind_protect.
15364 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15365 (detect_coding_system): Delete unused variable `mask'.
15366 (Fdefine_coding_system_internal): Delete unused variable id.
15367
15368 * fileio.c (kill_workbuf_unwind): New function.
15369 (Finsert_file_contents): On replacing, call
15370 make_conversion_work_buffer with correct args, and call
15371 record_unwind_protect with the first arg kill_workbuf_unwind.
15372
15373 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15374
153752008-02-01 Kenichi Handa <handa@m17n.org>
15376
15377 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15378 (fontset_add): Fix for the case that TO is less than TO1.
15379 (Ffontset_info): Don't use fallback fontset on checking the
15380 default fontset.
15381 (dump_fontset): New function for debugging.
15382
15383 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15384 coding_type is Qcharset.
15385
153862008-02-01 Kenichi Handa <handa@m17n.org>
15387
15388 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15389 (map_char_table): Don't inherit the value from the parent on
15390 initializing VAL. Adjust for the above change.
15391
153922008-02-01 Kenichi Handa <handa@m17n.org>
15393
15394 * coding.c (Qsignature, Qendian): Delete these variables.
15395 (syms_of_coding): Don't initialize them.
15396 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15397 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15398 detect_info->found.
15399 (decode_coding_utf_16): Don't detect BOM here.
15400 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15401 is NOT utf_16_without_bom.
15402 (setup_coding_system): For a coding system of type utf-16, check
15403 if the attribute :endian is Qbig or not (not nil or not), and set
15404 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15405 (detect_coding): If coding type is utf-16 and BOM detection is
15406 required, detect it.
15407 (Fdefine_coding_system_internal): For a coding system of type
15408 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15409
154102008-02-01 Kenichi Handa <handa@m17n.org>
15411
15412 * coding.c (coding_set_source): Fix for the case that the current
15413 buffer is different from coding->src_object.
15414 (decode_coding_object): Don't use the conversion work buffer if
15415 DST_OBJECT is a buffer.
15416
154172008-02-01 Dave Love <fx@gnu.org>
15418
15419 * lread.c (read_emacs_mule_char) [len==2]: Index
15420 emacs_mule_charset correctly.
15421
154222008-02-01 Dave Love <fx@gnu.org>
15423
15424 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15425 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15426 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15427 treated specially.)
15428 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15429 (detected_mask): Remove Big5 bits.
15430
154312008-02-01 Kenichi Handa <handa@m17n.org>
15432
15433 The following changes are to make the font rescaling facility
15434 compatible with Emacs 21.
15435
15436 * xfaces.c (Vface_font_rescale_alist): Rename from
15437 Vface_resizing_fonts.
15438 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15439 (font_rescale_ratio): Rename from font_resizing_ratio.
15440 (split_font_name): Set font->rescale_ratio.
15441 (better_font_p): Pay attention to font->rescale_ratio.
15442 (build_scalable_font_name): Likewise. Change RESX, and RESY
15443 fields.
15444 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15445
154462008-02-01 Kenichi Handa <handa@m17n.org>
15447
15448 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15449 (Qutf_16_le): Remove these variables.
15450 (syms_of_coding): Don't DEFSYM them.
15451 (decode_coding_utf_16): Fix handling of BOM.
15452 (encode_coding_utf_16): Fix handling of BOM.
15453
154542008-02-01 Kenichi Handa <handa@m17n.org>
15455
15456 * fileio.c (Finsert_file_contents): On replacing, before decoding
15457 the file into the work buffer, set point of the work buffer to the end.
15458
154592008-02-01 Dave Love <fx@gnu.org>
15460
15461 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15462
154632008-02-01 Dave Love <fx@gnu.org>
15464
15465 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15466 and fix C types.
15467
154682008-02-01 Kenichi Handa <handa@m17n.org>
15469
15470 * xdisp.c (SKIP_GLYPHS): New macro.
15471 (set_cursor_from_row): Pay attention to string display properties.
15472
15473 * category.c (copy_category_entry): Fix for the case that RANGE
15474 is an integer.
15475
15476 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15477
15478 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15479
154802008-02-01 Kenichi Handa <handa@m17n.org>
15481
15482 * charset.c (Fcharset_id_internal): New function.
15483 (syms_of_charset): Defsubr it.
15484
15485 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15486 with the last arg charset_list acquired from coding.
15487 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15488 the attribute coding_attr_ccl_valids.
15489
15490 * coding.h (enum define_coding_ccl_arg_index): Set the first
15491 member coding_arg_ccl_decoder to coding_arg_max.
15492
15493 * ccl.h (ccl_driver): Adjust prototype.
15494
15495 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15496 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15497 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15498 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15499 last arg Qnil.
15500
155012008-02-01 Kenichi Handa <handa@m17n.org>
15502
15503 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15504 call encode_char.
15505
15506 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15507
155082008-02-01 Dave Love <fx@gnu.org>
15509
15510 * composite.c (syms_of_composite): Make composition_hash_table weak.
15511
155122008-02-01 Kenichi Handa <handa@m17n.org>
15513
15514 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15515 (font_name_registry): Don't extern them.
15516 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15517
15518 * fontset.h (Qfontset): Don't extern it.
15519 (new_fontset_from_font_name): Extern it.
15520
15521 * fontset.c: Give 8 extra slots to fontset objects.
15522 (Qfontset_info): New variable.
15523 (syms_of_fontset): Defsym it.
15524 (FONTSET_FALLBACK): New macro.
15525 (fontset_face): Try also the default fontset.
15526 (make_fontset): Realize a fallback fontset from the default fontset.
15527 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15528 using split_font_name_into_vector and build_font_name_from_vector.
15529 (Fset_fontset_font): Access the elements of font_spec by enum
15530 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15531 name by using split_font_name_into_vector.
15532 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15533 generate a proper font name from the fontset name. Update
15534 Vfontset_alias_alist.
15535 (n_auto_fontsets): New variable.
15536 (new_fontset_from_font_name): New function.
15537 (Ffont_info): Store the information about fonts generated from the
15538 default fontset in the first extra slot of the returned char-table.
15539
15540 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15541 (font_name_registry): Delete function.
15542 (split_font_name_into_vector): New function.
15543 (build_font_name_from_vector): New function.
15544 (font_list): The argument REGISTRY is now a list of registry names.
15545 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15546 specifies an explicit font name, return the name as is. Make a
15547 list of registy names.
15548
15549 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15550 of x_new_fontset.
15551 (Fx_create_frame): Don't call x_new_fontset here. Just use
15552 x_list_fonts to check the existence of fonts.
15553
15554 * xterm.h (x_new_fontset): Adjust prototype.
15555
15556 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15557 string. Use new_fontset_from_font_name to create a fontset from a
15558 font name.
15559
155602008-02-01 Kenichi Handa <handa@m17n.org>
15561
15562 * syntax.c (Vfind_word_boundary_function_table): New name for
15563 Vnext_word_boundary_function_table.
15564 (find-word-boundary-function-table): New name for
15565 next-word-boundary-function-table.
15566
155672008-02-01 Dave Love <fx@gnu.org>
15568
15569 * Makefile.in: Fix some dependencies.
15570
15571 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15572 set it to nil before returning.
15573
15574 * composite.c (update_compositions): Fix type error.
15575
15576 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15577
155782008-02-01 Kenichi Handa <handa@m17n.org>
15579
15580 * xterm.c (x_new_font): Optimize for the case that the font is
15581 already set for the frame.
15582
155832008-02-01 Kenichi Handa <handa@m17n.org>
15584
15585 * chartab.c (char_table_ascii): Check if the char table contents
15586 is sub-char-table or not.
15587 (char_table_set, char_table_set_range): Fix argument to
15588 char_table_ascii.
15589
15590 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15591 (detect_coding_utf_8, detect_coding_utf_16)
15592 (detect_coding_emacs_mule, detect_coding_iso_2022)
15593 (detect_coding_sjis, detect_coding_big5)
15594 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15595 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15596 sequence is valid in this coding system. Change callers.
15597 (MAX_ANNOTATION_LENGTH): New macro.
15598 (ADD_ANNOTATION_DATA): New macro.
15599 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15600 ADD_ANNOTATION_DATA. Change the format of annotation data.
15601 (ADD_CHARSET_DATA): New macro.
15602 (emacs_mule_char): New argument ID. Change callers.
15603 (decode_coding_emacs_mule, decode_coding_iso_2022)
15604 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15605 Produce charset annotation data in coding->charbuf.
15606 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15607 to charset annotation data in coding->charbuf.
15608 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15609 coding->common_flags if the coding system is iso-2022 based and
15610 uses designation.
15611 (produce_composition): Adjust for the new annotation data format.
15612 (produce_charset): New function.
15613 (produce_annotation): Handle charset annotation.
15614 (handle_composition_annotation, handle_charset_annotation): New
15615 functions.
15616 (consume_chars): Handle charset annotation. Utilize the above two
15617 functions.
15618 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15619 buffer, get the deleted text as a string and set
15620 coding->src_object to that string.
15621 (detect_coding, detect_coding_system): Use the new struct
15622 coding_detection_info.
15623
15624 * coding.h (struct coding_detection_info): New structure.
15625 (struct coding_system): Adjust prototype of the member `detector'.
15626 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15627
156282008-02-01 Kenichi Handa <handa@m17n.org>
15629
15630 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15631
156322008-02-01 Dave Love <fx@gnu.org>
15633
15634 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15635 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15636 to new local and nullify apropos_accumulate before returning.
15637 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15638
156392008-02-01 Kenichi Handa <handa@m17n.org>
15640
15641 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15642 correctly.
e3eea1fc 15643
aac0c6e3
MR
156442008-02-01 Dave Love <fx@gnu.org>
15645
15646 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15647
156482008-02-01 Kenichi Handa <handa@m17n.org>
15649
15650 The following changes are to make character composition happen
15651 automatically on displaying.
15652
15653 * Makefile.in (lisp, shortlisp): Add composite.elc.
15654
15655 * composite.h (Qauto_composed, Vauto_composition_function)
15656 (Qauto_composition_function): Extern them.
15657
15658 * composite.c (Vcomposition_function_table)
15659 (Qcomposition_function_table): Delete variables.
15660 (Qauto_composed, Vauto_composition_function)
15661 (Qauto_composition_function): New variables.
15662 (run_composition_function): Don't call
15663 compose-chars-after-function.
15664 (update_compositions): Clear `auto-composed' text property.
15665 (compose_chars_in_text): Delete this function.
15666 (syms_of_composite): Staticpro Qauto_composed and
15667 Qauto_composition_function. Declare Vauto_composition_function as
15668 a Lisp variable.
15669
15670 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15671
15672 * xdisp.c (it_props): Add an entry for Qauto_composed.
15673 (handle_auto_composed_prop): New function.
15674
15675 * xselect.c (selection_data_to_lisp_data): Don't call
15676 compose_chars_in_text.
15677
156782008-02-01 Dave Love <fx@gnu.org>
15679
15680 * keyboard.c (read_char): Modify checking around use of
15681 Vkeyboard_translate_table.
15682
15683 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15684 and fix C types.
15685
156862008-02-01 Kenichi Handa <handa@m17n.org>
15687
15688 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15689 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15690 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15691 the case that the last byte is '\r' correctly.
15692 (decode_coding): Flush out the unprocessed data correctly.
15693 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15694
156952008-02-01 Dave Love <fx@gnu.org>
15696
15697 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15698 Add XK_ISO... case.
15699 (xaw_scroll_callback): Revert last change.
15700
157012008-02-01 Kenichi Handa <handa@m17n.org>
15702
15703 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15704
157052008-02-01 Kenichi Handa <handa@m17n.org>
15706
15707 * xfaces.c (Vface_resizing_fonts): New variable.
15708 (struct font_name): New member `resizing_ratio'.
15709 (font_resizing_ratio): New function.
15710 (split_font_name): Set font->resizing_ratio.
15711 (better_font_p): Pay attention to font->resizing_ratio.
15712 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15713 RESX, and RESY fields.
15714 (try_alternative_families): Try scalable fonts if
15715 Vscalable_fonts_allowed is not Qt.
15716 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15717
157182008-02-01 Dave Love <fx@gnu.org>
15719
15720 * xterm.c (xaw_scroll_callback): Cast correctly.
15721
157222008-02-01 Dave Love <fx@gnu.org>
15723
15724 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15725 (lispy_kana_keys): Comment out.
15726 (make_lispy_event) [XK_kana_A]: Comment out.
15727
15728 * xterm.c (xaw_scroll_callback): Cast call_data.
15729 (XTread_socket): Deal with ASCII keysyms.
15730 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15731
157322008-02-01 Dave Love <fx@gnu.org>
15733
15734 * xterm.c (Vx_keysym_table): New.
15735 (syms_of_xterm): Initialize it.
15736 (XTread_socket): Use it.
15737 From head: Eliminate incorrect optimization that tried to avoid
15738 decoding the output of X*LookupString.
15739 (x_get_font_repertory): Delete charset declaration.
15740
157412008-02-01 Kenichi Handa <handa@m17n.org>
15742
15743 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15744 return 0.
15745 (Fdefine_coding_system_internal): Setup
15746 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15747
157482008-02-01 Dave Love <fx@gnu.org>
15749
15750 * coding.c (Fcheck_coding_system): Doc fix.
15751
15752 * editfns.c (Finsert_byte): Return a proper value.
15753
157542008-02-01 Kenichi Handa <handa@m17n.org>
15755
15756 * coding.c (decode_coding): Fix args to translate_chars. Pay
15757 attention to Vstandard_translation_table_for_decode.
15758 (encode_coding): Fix args to translate_chars. Pay attention to
15759 Vstandard_translation_table_for_encode.
15760
15761 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15762 SINGLE_BYTE_CHAR_P.
15763
15764 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15765 not by SINGLE_BYTE_CHAR_P.
15766
15767 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15768 SINGLE_BYTE_CHAR_P.
15769
15770 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15771 SINGLE_BYTE_CHAR_P.
15772
15773 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15774 by SINGLE_BYTE_CHAR_P.
15775
15776 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15777 SINGLE_BYTE_CHAR_P.
15778
157792008-02-01 Dave Love <fx@gnu.org>
15780
15781 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15782
157832008-02-01 Dave Love <fx@gnu.org>
15784
15785 * fns.c (Flanginfo): Fix typo.
15786
15787 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15788
157892008-02-01 Kenichi Handa <handa@m17n.org>
15790
15791 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15792 (detect_coding_emacs_mule, detect_coding_iso_2022)
15793 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15794 incomplete byte sequence. Don't update *mask when correctly detected.
15795 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15796 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15797 (detect_coding, detect_coding_system): Adjust for the changes above.
15798
157992008-02-01 Kenichi Handa <handa@m17n.org>
15800
15801 * character.c (char_string): Rename from
15802 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15803 (string_char): Rename from string_char.
15804
15805 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15806 if C is greater than MAX_3_BYTE_CHAR.
15807 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15808 string_char instead of string_char_with_unification.
15809
158102008-02-01 Dave Love <fx@gnu.org>
15811
15812 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15813
158142008-02-01 Kenichi Handa <handa@m17n.org>
15815
15816 * keymap.c (push_key_description): Pay attention to force_multibyte.
15817
15818 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15819
158202008-02-01 Dave Love <fx@gnu.org>
15821
15822 * charset.c (define_charset_internal): Rename `supprementary'.
15823
15824 * Makefile.in (lisp, shortlisp): Remove latin-N.
15825
158262008-02-01 Dave Love <fx@gnu.org>
15827
15828 * xfns.c (x_window, x_window): Use use_xim.
15829
15830 * xterm.c (use_xim): Initialize.
15831 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15832 (x_term_init): Maybe set use_xim.
15833
15834 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15835
158362008-02-01 Kenichi Handa <handa@m17n.org>
15837
15838 * search.c (search_buffer): Fix case-fold-search of multibyte
15839 characters.
15840 (boyer_moore): Rename the last argument to char_high_bits.
15841
158422008-02-01 Kenichi Handa <handa@m17n.org>
15843
15844 * xdisp.c (display_string): Fix for the case of zero width glyph.
15845
15846 * xfns.c (x_set_font): Change the error message of the case that
15847 x_new_fontset returns Qt.
15848
15849 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15850 (Finternal_set_lisp_face_attribute): Use signal_error for the
15851 error of invalid fontset.
15852
15853 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15854 fontset, return Qt.
15855
158562008-02-01 Dave Love <fx@gnu.org>
15857
15858 * unexelf.c (unexec): Make .got handling not SGI-specific.
15859
15860 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15861
15862 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15863
15864 * keyboard.c (read_key_sequence): Fix type error.
15865
15866 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15867 type error.
15868
15869 * fontset.c (fontset_add): Return Lisp_Object.
15870
158712008-02-01 Dave Love <fx@gnu.org>
15872
15873 * charset.h (charset_ordered_list_tick): Declare extern.
15874
158752008-02-01 Kenichi Handa <handa@m17n.org>
15876
15877 The following changes (and some of 2008-02-01 changes of mine) are
15878 for handling syntax, category, and case conversion for unibyte
15879 characters by converting them to multibyte on the fly. With these
15880 changes, we don't have to setup syntax and case tables for unibyte
15881 characters in each language environment.
15882
15883 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15884 multibyte if necessary.
15885
15886 * bytecode.c (Fbyte_code): Likewise.
15887
15888 * character.h (LEADING_CODE_LATIN_1_MIN)
15889 (LEADING_CODE_LATIN_1_MAX): New macros.
15890 (unibyte_to_multibyte_table): Extern it.
15891 (unibyte_char_to_multibyte): New macro.
15892 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15893 (CHAR_LEADING_CODE): New macro.
15894 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15895
15896 * character.c (unibyte_to_multibyte_table): New variable.
15897 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15898 (multibyte_char_to_unibyte): If C is an eight-bit character,
15899 convert it to the corresponding byte value.
15900
15901 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15902 not 1, signals an error. Update the elements of
15903 unibyte_to_multibyte_table.
15904 (init_charset_once): Initialize unibyte_to_multibyte_table.
15905 (syms_of_charset): Define the charset `iso-8859-1'.
15906
15907 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15908 as is without converting it to unibyte. In a unibyte buffer,
15909 convert C to multibyte before checking the syntax.
15910
15911 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15912
15913 * minibuf.c (Fminibuffer_complete_word): Use the macro
15914 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15915
15916 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15917
15918 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15919 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15920 that is zero, convert an eight-bit char to multibyte.
15921 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15922 non-emacs case.
15923 (PATFETCH): Convert an eight-bit char to multibyte.
15924 (HANDLE_UNIBYTE_RANGE): New macro.
15925 (regex_compile): Setup the compiled pattern for multibyte chars
15926 even if the given regex string is unibyte. Use PATFETCH_RAW
15927 instead of PATFETCH in many places. To handle `charset'
15928 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15929 only for ASCII chars.
15930 (analyse_first) <exactn>: Simplify because the compiled pattern
15931 is multibyte.
15932 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15933 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15934 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15935 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15936 multibyte always 1.
15937 (re_search_2): In emacs, set the locale variable multibyte to 1,
15938 otherwise to 0. New local variable target_multibyte. Check it
15939 to decide the multibyteness of STR1 and STR2. If
15940 target_multibyte is zero, convert unibyte chars to multibyte
15941 before translating and checking fastmap.
15942 (TARGET_CHAR_AND_LENGTH): New macro.
15943 (re_match_2_internal): In emacs, set the locale variable multibyte
15944 to 1, otherwise to 0. New local variable target_multibyte. Check
15945 it to decide the multibyteness of STR1 and STR2. Use
15946 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15947 <charset, charset_not>: If multibyte is nonzero, check fastmap
15948 only for ASCII chars. Call bcmp_translate with
15949 target_multibyte, not with multibyte.
15950 <begline>: Declare the local variable C as `unsigned'.
15951 (bcmp_translate): Change the last arg name to target_multibyte.
15952
15953 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15954 the regexp pattern and the matching target. Set cp->buf.multibyte
15955 to the multibyteness of the regexp pattern. Set
15956 cp->but.target_multibyte to the multibyteness of the matching target.
15957 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15958 FETCH_STRING_CHAR_ADVANCE.
15959 (Freplace_match): Convert unibyte chars to multibyte.
15960
15961 * syntax.c (char_quoted, back_comment, scan_words)
15962 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15963 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15964 unibyte chars to multibyte.
15965 (skip_chars): Delete the arg syntaxp, and move the code for
15966 handling syntaxes to skip_syntaxes. Change callers.
15967 Fix the case that the multibyteness of STRING and the current
15968 buffer doesn't match.
15969 (skip_syntaxes): New function.
15970 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15971 SINGLE_BYTE_CHAR_P.
15972
159732008-02-01 Kenichi Handa <handa@m17n.org>
15974
15975 * xfaces.c (QCfontset): New variable.
15976 (LFACE_FONTSET): New macro.
15977 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15978 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15979 (Finternal_set_lisp_face_attribute)
15980 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15981 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15982 check also LFACE_FONTSET_INDEX.
15983 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15984 attrs[LFACE_FONT_INDEX].
15985 (syms_of_xfaces): Intern and staticpro QCfontset.
15986
15987 * dispextern.h (enum lface_attribute_index): New member
15988 LFACE_FONTSET_INDEX.
15989
15990 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15991
159922008-02-01 Kenichi Handa <handa@m17n.org>
15993
15994 * coding.c (coding_set_destination): Fix coding->destination for
15995 the case converting a region.
15996 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15997 (encode_coding_object): Fix coding->dst_pos and
15998 coding->dst_pos_byte for the case converting a region.
15999
16000 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16001
16002 * character.h (BYTE8_STRING): New macro.
16003
16004 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16005
160062008-02-01 Kenichi Handa <handa@m17n.org>
16007
16008 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16009 characters by octal form.
16010
16011 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16012
16013 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16014 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16015 _fetch_multibyte_char_len.
16016 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16017
16018 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16019
16020 * casefiddle.c (casify_object): Simplify. Handle the case that
16021 the case conversion change the byte length.
16022 (casify_region): Likewise.
16023
16024 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16025
16026 * character.c (_fetch_multibyte_char_len): Delete this variable.
16027 (syms_of_character): Setup Vprintable_chars.
16028
16029 * editfns.c (Fchar_equal): Fix for the unibyte case.
16030 (Finsert_byte): New function.
16031 (syms_of_editfns): Defsubr it.
16032
16033 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16034 of direct code 0x3ffff.
16035
16036 * search.c (Freplace_match): Fix for the unibyte case.
16037
160382008-02-01 Kenichi Handa <handa@m17n.org>
16039
16040 * lread.c (safe_to_load_p): Fix the logic.
16041
16042 * syntax.c (scan_words): Don't treat characters belonging to
16043 different scripts as constituting a word.
16044
16045 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16046
16047 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16048
16049 * emacs.c (main): In the case of --unibyte, instead of aborting on
16050 finding non-empty buffer, make it unibyte.
16051
160522008-02-01 Kenichi Handa <handa@m17n.org>
16053
16054 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16055 to create a fontset.
16056
160572008-02-01 Dave Love <fx@gnu.org>
16058
16059 * character.c (Funibyte_char_to_multibyte): Doc fix.
16060
16061 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16062
160632008-02-01 Kenichi Handa <handa@m17n.org>
16064
16065 * fontset.c (fontset_add): Make the type `int'.
16066 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16067
16068 * character.c (unibyte_char_to_multibyte)
16069 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16070 charset_unibyte, not charset_primary.
16071
16072 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16073
16074 * charset.c (charset_unibyte): Rename from charset_primary.
16075 (Funibyte_charset): Rename from Fprimary_charset.
16076 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16077 (syms_of_charset): Adjust for the above changes.
16078
16079 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16080 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16081 it->multibyte_p is zero.
16082
16083 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16084 Delete extern.
16085
160862008-02-01 Kenichi Handa <handa@m17n.org>
16087
16088 * coding.c (Fdefine_coding_system_internal): Fix category setting
16089 for a coding system of type iso-2022.
16090
160912008-02-01 Kenichi Handa <handa@m17n.org>
16092
16093 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16094
160952008-02-01 Kenichi Handa <handa@m17n.org>
16096
16097 * syntax.c (Vnext_word_boundary_function_table): New variable.
16098 (next-word-boundary-function-table): Declare it as a Lisp variable
16099 in syms_of_syntax.
16100 (scan_words): Call functions in Vnext_word_boundary_function_table
16101 if any.
16102
16103 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16104
16105 * fontset.c (fs_load_font): If fontp->charset is not negative,
16106 return fontp without setting its members.
16107
161082008-02-01 Dave Love <fx@gnu.org>
16109
16110 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16111
16112 * m/sparc.h (HAVE_ALLOCA): Delete.
16113
16114 * s/irix6-5.h: Don't include strings.h.
16115 (bcopy, bzero, bcmp): Don't undef.
16116
16117 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16118
16119 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16120 (TIOCSIGSEND): Don't test IRIX6.
16121 (bcopy, bzero, bcmp): Define conditionally.
16122
161232008-02-01 Kenichi Handa <handa@m17n.org>
16124
16125 * buffer.c (Qas, Qmake, Qto): New variables.
16126 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16127 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16128
16129 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16130 we are inserting a process output into a multibyte buffer.
16131
16132 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16133 multibyte_char_to_unibyte.
16134
16135 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16136 by the primary charset, make it eight-bit char.
16137 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16138
16139 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16140 (charset_8_bit__control, charset_8_bit_graphic)
16141 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16142 (define_charset_internal): New function.
16143 (syms_of_charset): Call define_charset_internal for pre-defined
16144 charsets.
16145
16146 * charset.h (charset_8_bit): Extern it.
16147
16148 * coding.c (make_conversion_work_buffer): Adjust for the change
16149 of Fset_buffer_multibyte.
16150 (encode_coding_raw_text): Increment p0 in the loop.
16151
16152 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16153
16154 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16155 for the change of Fset_buffer_multibyte.
16156
16157 * fns.c (Fstring_to_multibyte): New function.
16158 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16159
161602008-02-01 Dave Love <fx@gnu.org>
16161
16162 * xfns.c (x_put_x_image): Declare args.
16163
16164 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16165 (try_font_list): Declare an arg.
16166
16167 * xdisp.c (message2_nolog, set_message): Declare an arg.
16168
16169 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16170
16171 * syntax.c (scan_sexps_forward): Declare an arg.
16172
16173 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16174 Declare an arg.
16175
16176 * lisp.h (Fnew_fontset): Declare.
16177
16178 * keymap.c (push_key_description): Call CHARACTERP correctly.
16179
16180 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16181 (face_for_char): Delete unused vars.
16182 (Fset_fontset_font): Doc fix. Delete unused vars.
16183
16184 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16185
16186 * composite.c (update_compositions): Declare arg.
16187
16188 * cm.c (calccost, cmgoto): Declare args.
16189
16190 * charset.c: Remove `emacs' conditional. Doc fixes.
16191 (map_char_table_for_charset): Declare.
16192
16193 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16194
16195 * ccl.c: Remove `emacs' conditional.
16196
161972008-02-01 Kenichi Handa <handa@m17n.org>
16198
16199 The following changes are to allow specifying multiple font
16200 patterns for a character range (specified by script or charset).
16201
16202 * Makefile.in (abbrev.o): Depend on syntax.h.
16203 (xfaces.o): Depend on charset.h.
16204
16205 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16206 SINGLE_BYTE_CHAR_P.
16207
16208 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16209
16210 * character.h (Vchar_script_table): Extern it.
16211
16212 * character.c (Vscript_alist): Delete.
16213 (Vchar_script_table, Qchar_script_table): New variable.
16214 (syms_of_character): Declare Vchar_script_table as a lisp variable
16215 and initialize it.
16216
16217 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16218 have property char-table-extra-slots, make no extra slot.
16219
16220 * dispextern.h (struct face): Delete member `charset'.
16221 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16222 SINGLE_BYTE_CHAR_P.
16223 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16224 Add prototypes.
16225 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16226 (generate_ascii_font_name): Rename from generate_ascii_font.
16227
16228 * fontset.h (get_font_repertory_func): New prototype.
16229 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16230 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16231
16232 * fontset.c (Qprepend, Qappend): New variables.
16233 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16234 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16235 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16236 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16237 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16238 (load_font_get_repertory): New functions.
16239 (fontset_set): Delete.
16240 (fontset_face): New arg FACE. Return face ID, not face.
16241 Complete re-write to handle new fontset structure. Change caller.
16242 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16243 (face_for_char): Don't call lookup_face.
16244 (make_fontset_for_ascii_face): New arg FACE.
16245 (fs_load_font): New arg CHARSET_ID. Don't check
16246 Vfont_encoding_alist here.
16247 (find_font_encoding): New function.
16248 (list_fontsets): Use STRINGP, not ! NILP.
16249 (accumulate_script_ranges): New function.
16250 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16251 re-written to handle new fontset structure.
16252 (Ffontset_font): Return a copy of element.
16253 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16254 docstring of font-encoding-alist.
16255
16256 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16257 (Fset_fotset_font): Fix arguments to 5.
16258
16259 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16260
16261 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16262 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16263 (highlight_trailing_whitespace): Adjust for the change of
16264 lookup_named_face.
16265
16266 * xfaces.c: Include charset.h.
16267 (load_face_font): Delete argument C. Change caller.
16268 (generate_ascii_font_name): Rename from generate_ascii_font.
16269 (font_name_registry): New function.
16270 (cache_face): Store ascii faces before non-ascii faces in buckets.
16271 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16272 Lookup only ascii faces.
16273 (lookup_non_ascii_face): New function.
16274 (lookup_named_face): Delete argument C. Change caller.
16275 (lookup_derived_face): Delete argument C. Change caller.
16276 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16277 a string, just call font_list with it.
16278 (choose_face_font): Delete arguments FACE and C. New arg
16279 FONT_SPEC. Change caller.
16280 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16281 Change caller.
16282 (realize_non_ascii_face): New function.
16283 (realize_x_face): Call load_face_font here.
16284 (realize_tty_face): Delete argument C. Change caller.
16285 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16286 get a face ID.
16287 (dump_realized_face): Don't print charset of FACE.
16288
16289 * xfns.c (x_set_font): Always call x_new_fontset and
16290 store_frame_parameter.
16291 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16292 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16293
16294 * xterm.h (x_get_font_repertory): Extern it.
16295
16296 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16297 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16298 it->multibyte_p is zero.
16299 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16300 (x_new_fontset): If FONTSETNAME doesn't match any existing
16301 fontsets, create a new one.
16302 (x_get_font_repertory): New function.
16303
163042008-02-01 Kenichi Handa <handa@m17n.org>
16305
16306 * coding.c (Ffind_coding_systems_region_internal): Detect an
16307 ASCII only string correctly.
16308
16309 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16310 version is 0.
16311
163122008-02-01 Kenichi Handa <handa@m17n.org>
16313
16314 * lread.c: Include "coding.h".
16315 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16316 (load_each_byte, unread_char): New variables.
16317 (readchar_backlog): Delete.
16318 (readchar): Return a character unless load_each_byte is nonzero.
16319 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16320 cons. If unread_char is not -1, simply return it.
16321 (unreadchar): Handle the case that readcharfun is
16322 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16323 (read_multibyte): Delete.
16324 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16325 (read_emacs_mule_char): New functions.
16326 (Fload): Even if the file doesn't have the extension ".elc", if
16327 safe_to_load_p returns a positive version number, assume that the
16328 file contains bytecompiled code. If the version is less than 22,
16329 load the file while decoding multibyte sequences by emacs-mule.
16330 (readevalloop): Don't use readchar_backlog.
16331 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16332 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16333 (read_escape): Delete the arg BYTEREP.
16334 (read1): Set load_each_byte to 1 temporarily while handling
16335 #@NUMBER. Don't call read_multibyte.
16336 (read_vector): Call Fread with a cons. If readcharfun is
16337 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16338 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16339 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16340 and Qload_force_doc_strings.
16341
163422008-02-01 Kenichi Handa <handa@m17n.org>
16343
16344 * xdisp.c (face_before_or_after_it_pos): Call
16345 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16346
163472008-02-01 Kenichi Handa <handa@m17n.org>
16348
16349 * character.h (TRAILING_CODE_P): New macro.
16350 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16351 (string_char_with_unification): Fix prototype.
16352 (Vscript_alist): Extern it.
16353
16354 * character.c (Vscript_alist): New variable.
16355 (string_char_with_unification, str_as_unibyte)
16356 (string_escape_byte8): Add `const' to local variables.
16357 (syms_of_character): Declare script-alist as a Lisp variable.
16358
16359 * charset.h (Vcharset_ordered_list): Extern it.
16360 (charset_ordered_list_tick): Extern it.
16361 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16362 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16363 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16364 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16365 (Funify_charset): Adjust for the change of Funify_charset.
16366
16367 * charset.c (charset_ordered_list_tick): New variable.
16368 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16369 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16370 deunify intead of unify a charset.
16371 (string_xstring_p): Add `const' to local variables.
16372 (find_charsets_in_text): Add `const' to arguments and local variables.
16373 (encode_char): Adjust for the change of Funify_charset. Fix
16374 detecting of invalid code.
16375 (Fset_charset_priority): Increment charset_ordered_list_tick.
16376 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16377 and TO_CODE.
16378
16379 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16380 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16381 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16382 (decode_coding_ccl, consume_chars)
16383 (Ffind_coding_systems_region_internal)
16384 (Fcheck_coding_systems_region): Add `const' to local variables.
16385
16386 * print.c (print_object): Use octal form for printing the
16387 contents of a bool vector.
16388
163892008-02-01 Dave Love <fx@gnu.org>
16390
16391 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16392 <version == 20>: Refuse to load.
16393
163942008-02-01 Dave Love <fx@gnu.org>
16395
16396 * fns.c: Move coding.h.
16397 (Qcodeset, Qdays, Qmonths): New.
16398 (concat): Use CHARACTERP instead of INTEGERP.
16399 (Flocale_codeset): Delete.
16400 (Flanginfo): New function.
16401 (syms_of_fns): Change accordingly.
16402
16403 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16404
164052008-02-01 Dave Love <fx@gnu.org>
16406
16407 * casetab.c (init_casetab_once, init_casetab_once): Fix
16408 CHAR_TABLE_SET call.
16409
16410 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16411
16412 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16413
16414 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16415 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16416 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16417
16418 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16419
16420 * coding.c (ENCODE_DESIGNATION, decode_eol)
16421 (make_conversion_work_buffer, code_conversion_restore)
16422 (Fdefine_coding_system_internal): Convert Lisp types.
16423 (code_conversion_restore): Use EQ, not ==.
16424 (Fencode_coding_string): Fix code_convert_string call.
16425
16426 * coding.h (code_convert_region): Fix prototype.
16427
16428 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16429
16430 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16431 (Ffontset_info): Convert Lisp types.
16432
16433 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16434
16435 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16436
16437 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16438
16439 * chartab.c: Include "...h", not <...h> in some cases.
16440
16441 * callproc.c (Fcall_process): Remove unused variables.
16442
164432008-02-01 Dave Love <fx@gnu.org>
16444
16445 * coding.c (Fset_coding_system_priority): Allow null arg list.
16446
164472008-02-01 Dave Love <fx@gnu.org>
16448
16449 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16450 (Fself_insert_and_exit): Use CHARACTERP.
16451
16452 * callproc.c (Fcall_process): Remove unused vars.
16453
16454 * xterm.c (XTread_socket): Add extra dead keysyms.
16455
16456 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16457
16458 * dispextern.h: Remove prototypes for redraw_frame,
16459 redraw_garbaged_frames.
16460
16461 * cmds.c (Fself_insert_command): Use CHARACTERP.
16462
16463 * chartab.c (make_sub_char_table): Remove unused var.
16464 (Fset_char_table_default, Fmap_char_table): Doc fix.
16465
16466 * keymap.c (access_keymap): Remove generic char code.
16467 (push_key_description): Use CHARACTERP.
16468
164692008-02-01 Dave Love <fx@gnu.org>
16470
16471 * charset.c: Doc fixes.
16472 (Funify_charset): Extra checking.
16473
164742008-02-01 Dave Love <fx@gnu.org>
16475
16476 * lread.c: Remove some unused variables.
16477 (safe_to_load_p): If safe, return the magic number version byte.
16478 (Fload): Maybe use load-with-code-conversion.
16479
164802008-02-01 Kenichi Handa <handa@m17n.org>
16481
16482 * category.c (Fmodify_category_entry): Don't modify the contents
16483 of category_set for characters out of the range. Avoid
16484 unnecessary modification.
16485
16486 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16487 Vchar_unify_table. The default value of the table is now nil.
16488
16489 * character.c (syms_of_character): Setup Vchar_width_table for
16490 eight-bit-control and raw-byte chars.
16491
16492 * charset.h (enum define_charset_arg_index): Delete
16493 charset_arg_parents and add charset_arg_subset and
16494 charset_arg_superset.
16495 (enum charset_attr_index): Delete charset_parents and add
16496 charset_subset and charset_superset.
16497 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16498 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16499 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16500 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16501 (CHARSET_SUPERSET): New macros.
16502 (charset_work): Extern it.
16503 (ENCODE_CHAR): Use charset_work.
16504 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16505 (map_charset_chars): Extern it.
16506
16507 * charset.c (load_charset_map): Set the default value of encoder
16508 and deunifier char-tables to nil.
16509 (map_charset_chars): Change argument. Change callers. Use
16510 map_char_table_for_charset instead of map_char_table.
16511 (Fmap_charset_chars): New optional args from_code and to_code.
16512 (Fdefine_charset_internal): Adjust for the change of
16513 `define-charset' (:parents -> :subset or :superset).
16514 (charset_work): New variable.
16515 (encode_char, syms_of_charset): Adjust for the change of
16516 Fdefine_charset_internal.
16517 (Ffind_charset_string): Setup the vector `charsets' correctly.
16518
16519 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16520 the previous change.
16521 (char_table_ref_and_range): Adjust for the above change.
16522 (map_sub_char_table_for_charset): New function.
16523 (map_char_table_for_charset): New function.
16524
16525 * keymap.c (describe_vector): Handle a char-table directly here.
16526 (describe_char_table): Delete.
16527
16528 * lisp.h (map_charset_chars): Delete.
16529
165302008-02-01 Dave Love <fx@gnu.org>
16531
16532 * fns.c (count_combining): Comment out (unused).
16533 (Flocale_codeset): New.
16534 (syms_of_fns): Defsubr it.
16535
16536 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16537 (size_t): Remove.
16538
165392008-02-01 Dave Love <fx@gnu.org>
16540
16541 * Makefile.in (chartab.o): Depend on charset.h.
16542
165432008-02-01 Kenichi Handa <handa@m17n.org>
16544
16545 * character.c (syms_of_character): Set the default value of
16546 Vprintable_chars to Qnil.
16547
165482008-02-01 Dave Love <fx@gnu.org>
16549
16550 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16551
165522008-02-01 Kenichi Handa <handa@m17n.org>
16553
16554 * charset.c (load_charset_map): Handle the case that from < to
16555 correctly.
16556
16557 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16558 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16559 Pay attention to raw-8-bit chars.
16560
165612008-02-01 Kenichi Handa <handa@m17n.org>
16562
16563 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16564 It is not bytecompiled now.
16565
16566 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16567 (charset_jisx0208): New variables.
16568 (Fdefine_charset_internal): Setup them if appropriate.
16569 (init_charset_once): Initialize them to -1.
16570
16571 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16572 (charset_jisx0208): Extern them.
16573
16574 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16575 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16576 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16577 (setup_iso_safe_charsets): Fix arguments to Fassq.
16578 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16579 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16580 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16581 (encode_coding_iso_2022): Change the 1st arg to
16582 ENCODE_ISO_CHARACTER to a variable.
16583
165842008-02-01 Kenichi Handa <handa@m17n.org>
16585
16586 * charset.h (enum define_charset_arg_index): New enums
16587 charset_arg_min_code and charset_arg_max_code.
16588 (struct charset): New member char_index_offset.
16589
16590 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16591 Take charset->char_index_offset into account.
16592 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16593 args[charset_arg_max_code]. Setup charset.char_index_offset.
16594 (syms_of_charset): Fix args to Fdefine_charset_internal.
16595
165962008-02-01 Dave Love <fx@gnu.org>
16597
16598 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16599
166002008-02-01 Dave Love <fx@gnu.org>
16601
16602 * coding.c: Doc fixes.
16603 (Fcoding_system_aliases): Fix return value.
16604 (Qmac): Remove (duplicated) definition.
16605
166062008-02-01 Dave Love <fx@gnu.org>
16607
362654a6
JB
16608 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16609 New functions.
aac0c6e3
MR
16610
16611 * character.c (Fstring): Doc fix.
16612
16613 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16614
362654a6 16615 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16616 (font-encoding-alist): Doc fix.
16617
166182008-02-01 Dave Love <fx@gnu.org>
16619
16620 * term.c (costs_set): Declare static, non-initialized for pcc.
16621 (encode_terminal_code): Remove unused var.
16622
16623 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16624 for K&R.
16625
16626 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16627
16628 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16629 (suffixes): Move out of make_subsidiaries for K&R.
16630
16631 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16632
16633 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16634
166352008-02-01 Dave Love <fx@gnu.org>
16636
16637 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16638
16639 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16640
166412008-02-01 Yong Lu <lyongu@asia-infonet.com>
16642
16643 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16644
16645 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16646
166472008-02-01 Kenichi Handa <handa@m17n.org>
16648
16649 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16650 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16651
166522008-02-01 Kenichi Handa <handa@m17n.org>
16653
16654 * coding.c (decode_coding_charset): Adjust for the change of
16655 Fdefine_coding_system_internal.
16656 (Fdefine_coding_system_internal): For a coding system of
16657 `charset' type, store a list of charset IDs in
16658 `charset_attr_charset_valids' element of coding attributes.
16659
166602008-02-01 Kenichi Handa <handa@m17n.org>
16661
16662 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16663 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16664 caller. Handle 2-byte and 3-byte charsets correctly.
16665 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16666 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16667 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16668 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16669 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16670 sequence.
16671 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16672 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16673 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16674 and alt&rule composition.
16675 (decode_coding_iso_2022): Handle composition correctly.
16676 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16677
16678 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16679 re-defining a charset. If the charset has :emacs-mule-id, setup
16680 emacs_mule_bytes.
16681 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16682
166832008-02-01 Kenichi Handa <handa@m17n.org>
16684
16685 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16686 (encode_coding_big5, encode_coding_charset): If coding requires safe
16687 encoding, produce a character specified by
16688 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16689
166902008-02-01 Dave Love <fx@gnu.org>
16691
16692 * xterm.c (XSetIMValues): Declare.
16693
16694 * process.c: Conditionally include sys/wait.h, pty.h.
16695
16696 * print.c (print_object): Fix print format for 64-bit systems.
16697
16698 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16699
16700 * buffer.c (emacs_strerror): Declare.
16701
16702 * fontset.c (Fclear_face_cache): Declare.
16703 (accumulate_font_info): Comment-out (unused).
16704 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16705 variables.
16706
16707 * character.h (string_escape_byte8): Declare.
16708
16709 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16710 unused vars.
16711 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16712 (Fmap_charset_chars): Doc fix.
16713
16714 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16715 (Fset_coding_system_priority, Fset_coding_system_priority)
16716 (Fdefine_coding_system_internal): Doc fix.
16717
167182008-02-01 Dave Love <fx@gnu.org>
16719
16720 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16721
167222008-02-01 Kenichi Handa <handa@m17n.org>
16723
16724 * character.c (string_escape_byte8): Make multibyte string with
16725 correct size.
16726
16727 * charset.c (Fmake_char): Delete unnecessary code.
16728
167292008-02-01 Kenichi Handa <handa@m17n.org>
16730
16731 * xfns.c (x_encode_text): Allocate coding.destination here, and
16732 call encode_coding_object with dst_object Qnil.
16733
16734 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16735 multibyte form correctly.
16736
16737 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16738 against Vfont_encoding_alist.
16739
16740 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16741 handling of charset list.
16742 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16743 (decode_coding_object): Move point to coding->dst_pos before
16744 calling post-read-conversion function.
16745 (encode_coding_object): Give correct arguments to
16746 pre-write-conversion. Ignore the return value of
16747 pre-write-conversion function. Pay attention to the case that
16748 pre-write-conversion changes the current buffer. If dst_object is
16749 Qt, even if coding->src_bytes is zero, allocate at least one byte
16750 to coding->destination.
16751
16752 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16753
16754 * charset.c (Fmake_char): Make it more backward compatible.
16755 (Fmap_charset_chars): Fix docstring.
16756
167572008-02-01 Dave Love <fx@gnu.org>
16758
16759 * coding.c: Doc fixes.
16760 (Fdefine_coding_system_alias): Use names, not symbols, in
16761 coding-system-alist.
16762
167632008-02-01 Kenichi Handa <handa@m17n.org>
16764
16765 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16766 of calling free_realized_face.
16767
167682008-02-01 Yong Lu <lyongu@asia-infonet.com>
16769
16770 * charset.c (read_hex): Don't treat SPC as a comment starter.
16771 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16772 (Fdecode_char): Fix typo.
16773
167742008-02-01 Kenichi Handa <handa@m17n.org>
16775
16776 * charset.h (struct charset): New member `code_space_mask'.
16777
16778 * coding.c (coding_set_source): Delete the local variable beg_byte.
16779 (encode_coding_charset, Fdefine_coding_system_internal):
16780 Delete the local variable charset.
16781 (Fdefine_coding_system_internal): Setup
16782 attrs[coding_attr_charset_valids] correctly.
16783
16784 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16785 member to check if CODE is valid or not.
16786 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16787 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16788 is within the range of charset->min_code and carset->max_code.
16789
167902008-02-01 Dave Love <fx@gnu.org>
16791
16792 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16793
16794 * dispextern.h (generate_ascii_font): Fix return type.
16795
16796 * xfaces.c (generate_ascii_font): Fix arg declaration.
16797
16798 * coding.c (coding_inherit_eol_type)
16799 (Fset_terminal_coding_system_internal)
16800 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16801
168022008-02-01 Kenichi Handa <handa@m17n.org>
16803
16804 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16805 multiple charsets correctly.
16806
168072008-02-01 Kenichi Handa <handa@m17n.org>
16808
16809 * search.c (boyer_moore): Fix handling of multibyte character
16810 translation.
16811
16812 * xdisp.c (display_mode_element): When the variable `elt' is
16813 changed, update `this' and `lisp_string'.
16814
168152008-02-01 Kenichi Handa <handa@m17n.org>
16816
16817 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16818
16819 * callproc.c (Fcall_process): Be sure to give the current buffer
16820 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16821
16822 * charset.c (struct charset_map_entries): New struct.
16823 (load_charset_map): Rename from parse_charset_map. New args
16824 entries and n_entries. Change caller.
16825 (load_charset_map_from_file): Rename from load_charset_map.
16826 Change caller. New arg control_flag. Call load_charset_map at
16827 the tail.
16828 (load_charset_map_from_vector): New function.
16829 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16830 (encode_char): If the charset is compact, change a character index
16831 to a code point.
16832
16833 * coding.c (coding_alloc_by_making_gap): Check the case that the
16834 source and destination are the same correctly.
16835 (decode_coding_raw_text): Set coding->consumed_char and
16836 coding->consumed to 0.
16837 (produce_chars): If coding->chars_at_source is nonzero, update
16838 coding->consumed_char and coding->consumed before calling
16839 alloc_destination.
16840 (Fdefine_coding_system_alias): Register ALIAS in
16841 Vcoding_system_alist.
16842 (syms_of_coding): Define `no-conversion' coding system at the tail.
16843
16844 * fileio.c (Finsert_file_contents): Set coding_system instead of
16845 val. If the current buffer is multibyte, always call
16846 decode_coding_gap.
16847
16848 * xfaces.c (try_font_list): Give higher priority to fontset's
16849 family than face's family.
16850
168512008-02-01 Kenichi Handa <handa@m17n.org>
16852
16853 * callproc.c (Fcall_process): Be sure to give the current buffer
16854 to decode_coding_c_string.
16855
16856 * xfaces.c (try_font_list): Give a family specified in a fontset
16857 higher priority than a family specified in a face.
16858
168592008-02-01 Kenichi Handa <handa@m17n.org>
16860
16861 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16862 Fix arguments to insert_from_buffer.
16863
16864 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16865
168662008-02-01 Kenichi Handa <handa@m17n.org>
16867
16868 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16869 (decode_coding_gap): Set coding->dst_multibyte correctly.
16870
168712008-02-01 Kenichi Handa <handa@m17n.org>
16872
16873 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16874 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16875 (encode_coding_utf_16): Substitute coding->default_char for
16876 non-Unicode characters.
16877 (decode_coding): Don't call record_insert here.
16878 (setup_coding_system): Initialize `surrogate' of
16879 coding->spec.utf_16 to 0.
16880 (EMIT_ONE_BYTE): Fix for multibyte case.
16881
16882 * insdel.c (insert_from_gap): Call record_insert.
16883
168842008-02-01 Kenichi Handa <handa@m17n.org>
16885
16886 * casefiddle.c (casify_region): Fix multibyte case.
16887
16888 * character.c (c_string_width): Add return type `int'.
16889 (char_string_with_unification): Delete arg ADVANCED.
16890
16891 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16892 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16893 (CHAR_STRING_ADVANCE): Make it do-while statement.
16894
16895 * chartab.c (sub_char_table_set_range): Optimize for the case
16896 DEPTH == 3. Add workaround code for a GCC optimization bug.
16897
16898 * charset.c (parse_charset_map): Remove an unused variable.
16899
16900 * coding.c: Delete unused variables.
16901
16902 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16903 earlier. If inserted is zero and the coding system doesn't
16904 require flushing, don't call decode_coding_gap.
16905
16906 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16907
169082008-02-01 Kenichi Handa <handa@m17n.org>
16909
16910 The following changes are for using Unicode as an internal
16911 character model, and use UTF-8 format for buffer/string
16912 representation.
16913
16914 * .gdbinit (xchartable): Adjust for the change of char table structure.
16915 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16916
16917 * Makefile.in (obj): Add character.o and chartab.o.
16918 (lisp, shortlisp): Remove utf-8.elc.
16919 (*.o): For many files, change dependency on charset.h to
16920 character.h, and add dependency on character.h.
16921 (character.o, chartab.o): New targets.
16922
16923 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16924 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16925 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16926 of "charset.h".
16927
16928 * dired.c, filelock.c: Include "character.h".
16929
16930 * alloc.c: Include "character.h" instead of "charset.h".
16931 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16932 (syms_of_alloc): Remove defsubr for Smake_char_table.
16933
16934 * buffer.c: Include "character.h" instead of "charset.h", don't
16935 include "coding.h".
16936 (Fset_buffer_multibyte): Adjust for UTF-8.
16937
16938 * buffer.h: EXFUN Fbuffer_live_p.
16939
16940 * callproc.c: Include "character.h" instead of "charset.h".
16941 (Fcall_process): Big change for the new code-conversion APIs.
16942
16943 * casetab.c: Include "character.h" instead of "charset.h".
16944 (set_canon, set_identity, shuffle): Adjust for the new
16945 map_char_table spec.
16946 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16947 accessing the char table structure.
16948
16949 * chartab.c: New file that implements char table.
16950
16951 * category.c: Include "character.h".
16952 (copy_category_entry): New function.
16953 (copy_category_table): Call map_char_table and copy_category_entry.
16954 (Fmake_category_table): Initialize all top-level slots.
16955 (char_category_set): New function.
16956 (modify_lower_category_set): Delete.
16957 (Fmodify_category_entry): Call char_table_ref_and_range.
16958
16959 * category.h (CATEGORY_SET): Just call char_category_set.
16960
16961 * ccl.c: Include "character.h".
16962 (Qccl, Qcclp): New variables.
16963 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16964 it's less than 256.
16965 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16966 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16967 and DST type.
16968 (ccl_driver): Change types of argument, adjust code accordingly.
16969 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16970 ccl_driver.
16971 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16972
16973 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16974 New members src_multibyte, dst_multibyte, consumed, and produced.
16975 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16976 (CODING_SPEC_CCL_PROGRAM): New macro.
16977 (ccl_driver): Update prototype.
16978 (Qccl, Qcclp, Fccl_program_p): Extern them.
16979 (CHECK_CCL_PROGRAM): New macro.
16980
16981 * character.c, character.h, chartab.c: New files.
16982
16983 * charset.c: Mostly re-written. Move character and multibyte sequence
16984 handling codes to character.c.
16985
16986 * charset.h: Mostly re-written. Move character and multibyte sequence
16987 handling codes to character.h.
16988
16989 * coding.c, coding.h: Mostly re-written.
16990
16991 * composite.c: Include "character.h" instead of "charset.h".
16992 (CHAR_WIDTH): Move to character.h.
16993 (HASH_KEY, HASH_VALUE): Delete.
16994
16995 * composite.h (enum composition_method): Change order of enumeration
16996 symbols.
16997
16998 * data.c: Include "character.h" instead of "charset.h".
16999 (Faref): Call CHAR_TABLE_REF for a char table.
17000 (Faset): Call CHAR_TABLE_SET for a char table.
17001
17002 * dispextern.h (free_realized_face, check_face_attribytes)
17003 (generate_ascii_font): Extern them.
17004 (free_realized_multibyte_face): Delete extern.
17005
17006 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17007 table structure.
17008
17009 * editfns.c: Include "character.h" instead of "charset.h".
17010 (Fchar_to_string): Always call CHAR_STRING.
17011
17012 * emacs.c (main): Call init_charset_once, init_charset,
17013 syms_of_chartab, and syms_of_character.
17014
17015 * fileio.c: Include "character.h" instead of "charset.h".
17016 (Finsert_file_contents): Big change for the new code-conversion API.
17017 (choose_write_coding_system, Fwrite_region): Likewise.
17018 (build_annotations_2): Delete.
17019 (e_write): Big change for the new code-conversion API.
17020
17021 * fns.c: Include "character.h" instead of "charset.h".
17022 (copy_sub_char_table): Move to chartab.c.
17023 (Fcopy_sequence): Call copy_char_table for a char table.
17024 (concat): Delete codes calling count_multibyte.
17025 (string_char_to_byte, string_byte_to_char): Adjust for the new
17026 multibyte form.
17027 (internal_equal): Adjust for the change of char table structure.
17028 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17029 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17030 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17031 (char_table_translate, optimize_sub_char_table)
17032 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17033 chartab.c.
17034 (char_table_ref_and_index): Delete.
17035 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17036 (Fmd5): Call preferred_coding_system instead of accessing
17037 Vcoding_category_list. Adjust for the new code-conversion API.
17038 (syms_of_fns): Move defsubr for char table related functions to
17039 chartab.c.
17040
17041 * fontset.c: Mostly re-written.
17042
17043 * fontset.h (struct font_info): Change type of the member encoding_type.
17044 (enum FONT_SPEC_INDEX): New enum.
17045 (fontset_font_pattern, fs_load_font): Update prototype.
17046 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17047
17048 * indent.c: Include "character.h" instead of "charset.h".
17049 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17050
17051 * insdel.c: Include "character.h" instead of "charset.h".
17052 (copy_text): Don't refer to Vnonascii_translation_table.
17053 (insert_from_gap): New function.
17054
17055 * keyboard.c: Include "character.h" instead of "charset.h".
17056 (command_loop_1): Never call direct_output_forward_char before
17057 a non-ASCII character.
17058 (read_char): If Vkeyboard_translate_table is a char table, always
17059 translate a character.
17060
17061 * keymap.c: Include "character.h".
17062 (store_in_keymap): Handle the case that IDX is a cons.
17063 (Fdefine_key): Handle the case that KEY is a cons and the car part
17064 is also a cons (range).
17065 (push_key_description): Adjust for the new character code.
17066 (describe_vector): Call describe_char_table for a char table.
17067 (describe_char_table): New function.
17068
17069 * keymap.h (describe_char_table): Extern it.
17070
17071 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17072 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17073 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17074 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17075 Delete.
17076 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17077 structure.
17078 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17079 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17080 (CHARTAB_SIZE_BITS_3): New macros.
17081 (chartab_size): Extern it.
17082 (struct Lisp_Char_Table): Re-design.
17083 (struct Lisp_Sub_Char_Table): New structure.
17084 (HASH_KEY, HASH_VALUE): Move from fns.c.
17085 (CHARACTERBITS): Define as 22.
17086 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17087 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17088 (GC_SUB_CHAR_TABLE_P): New macro.
17089 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17090 (code_convert_string_norecord): Deleted extern.
17091 (init_character_once, syms_of_character, init_charset)
17092 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17093
17094 * lread.c: Include "character.h".
17095 (read_multibyte): New arg NBYTES.
17096 (read_escape): Change the meaning of returned *BYTEREP.
17097 (to_multibyte): Delete.
17098 (read1): Adjust the handling of char table and string.
17099
17100 * print.c: Include "character.h" instead of "charset.h".
17101 (print_string): Convert 8-bit raw bytes to octal form by
17102 string_escape_byte8.
17103 (print_object): Adjust for the new multibyte form. Print 8-bit
17104 raw bytes always in octal form. Handle sub char table correctly.
17105
17106 * process.c: Include "character.h" instead of "charset.h".
17107 (read_process_output, send_process): Adjust for the new
17108 code-conversion API.
17109
17110 * puresize.h (BASE_PURESIZE): Increase.
17111
17112 * regex.c: Include "character.h" instead of "charset.h".
17113 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17114 (regex_compile): Accept a range whose starting and ending
17115 character have different leading bytes.
17116 (analyse_first): Adjust for the above change.
17117
17118 * search.c: Include "character.h" instead of "charset.h".
17119 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17120 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17121
17122 * syntax.c: Include "character.h" instead of "charset.h".
17123 (syntax_parent_lookup): Delete.
17124 (Fmodify_syntax_entry): Accept a cons as CHAR.
17125 (skip_chars): Adjust for the new multibyte form.
17126 (init_syntax_once): Call char_table_set_range instead of directly
17127 accessing the structure of a char table.
17128
17129 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17130 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17131 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17132 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17133
17134 * term.c: Include "buffer.h" and "character.h".
17135 (encode_terminal_code, write_glyphs): Adjust for the new
17136 code-conversion API.
17137 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17138
17139 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17140
17141 * xdisp.c: Include "character.h".
17142 (get_next_display_element): Adjust for the new multibyte form.
17143 (disp_char_vector): Adjust for the new char table structure.
17144 (decode_mode_spec_coding): Adjust for the new structure of
17145 coding system.
17146 (decode_mode_spec): Adjust for the new code-conversion API.
17147
17148 * xfaces.c: Include "character.h" instead of "charset.h".
17149 (load_face_font): Adjust for the change of choose_face_font and
17150 FS_LOAD_FONT.
17151 (generate_ascii_font): New function.
17152 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17153 (set_font_frame_param): Adjust for the change of choose_face_font.
17154 (free_realized_face): Make it public.
17155 (free_realized_faces_for_fontset): Rename from
17156 free_realized_multibyte_face. Free also faces realized for ASCII.
17157 (choose_face_font): Change arguments. Adjust for the change of
17158 fontset_font_pattern and FS_LOAD_FONT.
17159
17160 * xfns.c: Include "character.h".
17161 (x_encode_text): Adjust for the new code-conversion API.
17162
17163 * xselect.c: Don't include "charset.h".
17164 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17165
17166 * xterm.c: Include "character.h".
17167 (x_encode_char): New argument CHARSET. Change caller.
17168 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17169 Call ENCODE_CHAR instead of SPLIT_CHAR.
17170 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17171 CHAR_WIDTH instead of CHARSET_WIDTH.
17172 (XTread_socket): Adjust for the new code-conversion API.
17173 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17174 (x_load_font): Adjust for the change of struct font.
17175
171762008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17177
17178 * xfaces.c (face_at_buffer_position): Remove unused vars.
17179
171802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17181
17182 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17183 Fix overflow checking.
17184
171852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17186
17187 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17188 Cancel previous change.
17189
171902008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17191
17192 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17193 ccl->eight_bit_control. Fix check for buffer overflow.
17194 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17195 (ccl_driver): Initialize extra_bytes to 0.
17196
171972008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17198
17199 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17200 return it ORed with ctrl_modifier.
17201
172022008-01-29 Miles Bader <miles@gnu.org>
17203
17204 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17205
172062008-01-28 Jason Rumney <jasonr@gnu.org>
17207
17208 * w32.c (stat): Don't double check for networked drive.
17209
172102008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17211
17212 * window.c (run_window_configuration_change_hook): New function.
17213 Code extracted from set_window_buffer. Set the selected frame.
17214 (set_window_buffer): Use it.
17215 * window.h (run_window_configuration_change_hook): Declare.
17216 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17217
17218 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17219
172202008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17221
17222 * Makefile.in: Remove references to unused macros.
17223
172242008-01-26 Eli Zaretskii <eliz@gnu.org>
17225
17226 * w32.c (g_b_init_get_sid_sub_authority)
17227 (g_b_init_get_sid_sub_authority_count): New static variables.
17228 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17229 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17230 (init_user_info): Use them to retrieve uid and gid.
17231 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17232 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17233 st_uid and st_gid of the file.
17234
172352008-01-26 Jason Rumney <jasonr@gnu.org>
17236
17237 * w32.c (logon_network_drive): New function.
17238 (stat): Use it.
17239
172402008-01-26 Chong Yidong <cyd@stupidchicken.com>
17241
17242 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17243 invisible text covered with an ellipsis.
17244
172452008-01-25 Richard Stallman <rms@gnu.org>
17246
17247 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17248 jump back to beginning. Move some other initializations after that.
17249 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17250 New variables.
17251 (syms_of_xdisp): Init them.
17252
17253 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17254
17255 * buffer.c (reset_buffer_local_variables):
17256 Implement `permanent-local-hook'.
17257 (Qpermanent_local_hook): New variable.
17258 (syms_of_buffer): Init and staticpro it.
17259
172602008-01-25 Michael Albinus <michael.albinus@gmx.de>
17261
17262 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17263
172642008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17265
17266 * fns.c (Fclrhash): Return TABLE.
17267
172682008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17269
17270 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17271 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17272 is set even without positional changes.
17273 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17274
17275 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17276
172772008-01-23 Jason Rumney <jasonr@gnu.org>
17278
17279 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17280
17281 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17282 the unicode range available in MULE by locale-coding-system.
17283 Improve dbcs lead byte detection. Set event timestamp and modifiers
17284 earlier.
17285
172862008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17287
17288 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17289 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17290 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17291 when used on child processes.
17292
172932008-01-21 Michael Albinus <michael.albinus@gmx.de>
17294
17295 * dbusbind.c (Fdbus_method_return_internal): Rename from
17296 Fdbus_method_return.
17297 (Fdbus_unregister_object): Move to dbus.el.
17298 (Fdbus_call_method, Fdbus_method_return_internal)
17299 (Fdbus_send_signal): Improve debug messages.
17300
173012008-01-20 Martin Rudalics <rudalics@gmx.at>
17302
17303 * undo.c (undo_inhibit_record_point): New variable.
17304 (syms_of_undo): Initialize it.
17305 (record_point): Don't record point when undo_inhibit_record_point
17306 is set.
17307
173082008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17309
17310 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17311
17312 * xdisp.c (Qauto_hscroll_mode): New var.
17313 (syms_of_xdisp): Initialize it.
17314 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17315 window's buffer.
17316 (hscroll_windows): Don't check automatic_hscrolling_p here.
17317
17318 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17319 vscroll if we're setting window-buffer to the value it already has.
17320
173212008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17322
17323 * m/intel386.h: Remove references to XENIX.
17324
173252008-01-17 Andreas Schwab <schwab@suse.de>
17326
17327 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17328 instead of HAVE_X86_64_LIB64_DIR.
17329 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17330
173312008-01-17 Glenn Morris <rgm@gnu.org>
17332
17333 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17334 to HAVE_X86_64_LIB64_DIR.
17335
173362008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17337
17338 * s/irix3-3.h:
17339 * s/irix4-0.h:
17340 * s/386-ix.h:
17341 * s/domain.h:
17342 * s/hpux9-x11r4.h:
17343 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17344
17345 * sysdep.c: Remove code containing references to symbols defined
17346 by unsupported systems.
17347
173482008-01-16 Glenn Morris <rgm@gnu.org>
17349
17350 * coding.c (select-safe-coding-system-function): Doc fix.
17351
173522008-01-15 Glenn Morris <rgm@gnu.org>
17353
17354 * config.in: Revert 2008-01-13 change: this is a generated file.
17355
173562008-01-13 Tom Tromey <tromey@redhat.com>
17357
17358 * lisp.h: Fix typo.
17359
173602008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17361
17362 * m/sequent-ptx.h:
17363 * m/sequent.h:
17364 * s/ptx.h:
17365 * s/ptx4-2.h:
17366 * s/ptx4.h: Remove files for systems no longer supported.
17367
17368 * callproc.c (Fcall_process): Fix previous change.
17369
173702008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17371
17372 * unexsunos4.c: Remove file, system not supported anymore.
17373
17374 * m/mips.h:
17375 * m/intel386.h:
17376 * callproc.c:
17377 * config.in:
17378 * ecrt0.c:
17379 * emacs.c:
17380 * fileio.c:
17381 * frame.c:
17382 * getpagesize.h:
17383 * keyboard.c:
17384 * lread.c:
17385 * process.c:
17386 * puresize.h:
17387 * sysdep.c:
17388 * systty.h:
17389 * syswait.h:
17390 * unexec.c:
17391 * xdisp.c:
17392 * alloc.c: Remove code containing references to symbols defined by
17393 unsupported systems.
17394
173952008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17396
17397 * coding.c (detect_coding_mask): Fix previous change.
17398
173992008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17400
17401 * coding.c (detect_coding_iso2022): New arg
17402 latin_extra_code_state. Allow Latin extra codes only
17403 when *latin_extra_code_state is nonzero.
17404 (detect_coding_mask): If there is a NULL byte, detect the encoding
17405 as UTF-16 or binary. If Latin extra codes exist, detect the
17406 encoding as ISO-2022 only when there's no other proper encoding is
17407 found.
17408
174092008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17410
17411 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17412 #ifdef MAC_OS.
17413
174142008-01-08 Richard Stallman <rms@gnu.org>
17415
17416 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17417
174182008-01-06 Nick Roberts <nickrob@snap.net.nz>
17419
17420 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17421 menu bar in parentheses.
17422
174232008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17424
17425 * m/7300.h:
17426 * m/acorn.h:
17427 * m/alliant-2800.h:
17428 * m/alliant.h:
17429 * m/alliant1.h:
17430 * m/alliant4.h:
17431 * m/altos.h:
17432 * m/amdahl.h:
17433 * m/apollo.h:
17434 * m/att3b.h:
17435 * m/aviion-intel.h:
17436 * m/aviion.h:
17437 * m/celerity.h:
17438 * m/clipper.h:
17439 * m/cnvrgnt.h:
17440 * m/convex.h:
17441 * m/cydra5.h:
17442 * m/delta88k.h:
17443 * m/dpx2.h:
17444 * m/dual.h:
17445 * m/elxsi.h:
17446 * m/f301.h:
17447 * m/gould-np1.h:
17448 * m/gould.h:
17449 * m/i860.h:
17450 * m/ibmps2-aix.h:
17451 * m/ibmrt-aix.h:
17452 * m/ibmrt.h:
17453 * m/irist.h:
17454 * m/is386.h:
17455 * m/isi-ov.h:
17456 * m/mega68.h:
17457 * m/mg1.h:
17458 * m/news-r6.h:
17459 * m/news-risc.h:
17460 * m/news.h:
17461 * m/nh3000.h:
17462 * m/nh4000.h:
17463 * m/ns16000.h:
17464 * m/ns32000.h:
17465 * m/nu.h:
17466 * m/orion.h:
17467 * m/orion105.h:
17468 * m/paragon.h:
17469 * m/pfa50.h:
17470 * m/plexus.h:
17471 * m/pyramid.h:
17472 * m/pyrmips.h:
17473 * m/sh3el.h:
17474 * m/sps7.h:
17475 * m/sr2k.h:
17476 * m/stride.h:
17477 * m/sun1.h:
17478 * m/sun2.h:
17479 * m/sun3-68881.h:
17480 * m/sun3-fpa.h:
17481 * m/sun3-soft.h:
17482 * m/sun3.h:
17483 * m/sun386.h:
17484 * m/symmetry.h:
17485 * m/tad68k.h:
17486 * m/tahoe.h:
17487 * m/targon31.h:
17488 * m/tek4300.h:
17489 * m/tekxd88.h:
17490 * m/tower32.h:
17491 * m/tower32v3.h:
17492 * m/ustation.h:
17493 * m/wicat.h:
17494 * m/xps100.h:
17495 * s/cxux.h:
17496 * s/cxux7.h:
17497 * s/dgux.h:
17498 * s/dgux4.h:
17499 * s/dgux5-4-3.h:
17500 * s/dgux5-4r2.h:
17501 * s/esix.h:
17502 * s/esix5r4.h:
17503 * s/hiuxmpp.h:
17504 * s/hiuxwe2.h:
17505 * s/iris3-5.h:
17506 * s/iris3-6.h:
17507 * s/isc2-2.h:
17508 * s/isc3-0.h:
17509 * s/isc4-0.h:
17510 * s/isc4-1.h:
17511 * s/newsos5.h:
17512 * s/newsos6.h:
17513 * s/osf1.h:
17514 * s/osf5-0.h:
17515 * s/riscix1-1.h:
17516 * s/riscix12.h:
17517 * s/sco4.h:
17518 * s/sco5.h:
17519 * s/sunos4-0.h:
17520 * s/sunos4-1.h:
17521 * s/sunos413.h:
17522 * s/sunos4shr.h:
17523 * s/umax.h:
17524 * s/unipl5-2.h:
17525 * s/xenix.h:
17526 * cxux-crt0.s:
17527 * unexapollo.c:
17528 * unexconvex.c:
17529 * unexenix.c:
17530 * unexsni.c: Remove files for systems no longer supported.
17531
17532 * m/intel386.h: Remove references to unsupported systems.
17533
17534 * w32.c (get_emacs_configuration): Remove reference to i860.
17535
17536 * sysdep.c: Remove dead code.
17537
175382008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17539
17540 * s/rtu.h:
17541 * m/masscomp.h: Remove files. Platform is obsolete.
17542
175432008-01-04 Michael Albinus <michael.albinus@gmx.de>
17544
17545 * dbusbind.c (Fdbus_method_return): New function.
17546 (xd_read_message): Add the serial number to the event.
17547 (Fdbus_register_method): Activate the function.
17548
175492008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17550
17551 * keyboard.c (read_key_sequence): Fix typo.
17552
175532008-01-03 Michael Albinus <michael.albinus@gmx.de>
17554
17555 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17556 (xd_signature, xd_append_arg): Handle element type detection for
17557 empty arrays.
17558 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17559 SDATA () calls; this must be solved more general.
17560 (Fdbus_register_signal): Use SBYTES instead of strlen.
17561
175622008-01-03 Magnus Henoch <magnus@zemdatav>
17563
17564 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17565 unsigned int for byte values (necessary for big-endian platform).
17566 (Fdbus_call_method): Handle the case of no returned arguments.
17567
175682007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17569
17570 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17571
175722007-12-31 Magnus Henoch <mange@freemail.hu>
17573
17574 * dbusbind.c (xd_signature): Signature of variant is just "v".
17575
175762007-12-30 Michael Albinus <michael.albinus@gmx.de>
17577
17578 * dbusbind.c: Fix several errors and compiler warnings.
17579 Reported by Tom Tromey <tromey@redhat.com>.
17580 (XD_ERROR, XD_DEBUG_MESSAGE)
17581 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17582 (xd_append_arg): Part for basic D-Bus types rewritten.
17583 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17584 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17585 appropriate.
17586 (xd_read_message): Return Qnil. Don't signal an error; it is not
17587 useful during event reading.
17588 (Fdbus_register_signal): Signal an error if the check for
17589 FUNCTIONP fails.
17590 (Fdbus_register_method): New function. The implementation is not
17591 complete, the call of the function signals an error therefore.
17592 (Fdbus_unregister_object): New function, renamed from
17593 Fdbus_unregister_signal. The initial check signals an error, if
17594 the object is not well formed.
17595
175962007-12-30 Richard Stallman <rms@gnu.org>
17597
17598 * textprop.c (get_char_property_and_overlay):
17599 Signal error if POSITION is out of range in a buffer.
17600
176012007-12-29 Martin Rudalics <rudalics@gmx.at>
17602
17603 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17604 because the original parameters are in pure storage now.
17605
176062007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17607
17608 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17609
176102007-12-22 Eli Zaretskii <eliz@gnu.org>
17611
17612 * callint.c (syms_of_callint) <command-history>: Add reference to
17613 history-length in the doc string.
17614
176152007-12-17 Jason Rumney <jasonr@gnu.org>
17616
17617 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17618 before passing as wParam.
17619
176202007-12-22 Michael Albinus <michael.albinus@gmx.de>
17621
17622 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17623 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17624 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17625 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17626 as number.
17627 (Fdbus_call_method): Fix docstring.
17628
176292007-12-21 Michael Albinus <michael.albinus@gmx.de>
17630
17631 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17632 New macros.
17633 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17634 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17635 Simplify.
17636 (xd_signature): New function.
17637 (xd_append_arg): Compute also signatures. Major rewrite.
17638 (xd_retrieve_arg): Make debug messages friendly.
17639 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17640 Check for signatures of arguments.
17641
176422007-12-19 Michael Albinus <michael.albinus@gmx.de>
17643
17644 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17645 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17646 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17647 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17648 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17649 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17650 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17651 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17652 (xd_retrieve_value): Remove. Functionality included in ...
17653 (xd_append_arg): New function.
17654 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17655
176562007-12-16 Michael Albinus <michael.albinus@gmx.de>
17657
17658 * dbusbind.c (top): Include <stdio.h>.
17659 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17660 dbus_message_new_method_call and dbus_message_new_signal.
17661 (Fdbus_register_signal): Rename unique_name to uname.
17662 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17663 non-existing unique name. Fix typos in matching rule. Return an
17664 object which is useful in Fdbus_unregister_signal.
17665 (Fdbus_unregister_signal): Reimplementation, in order to remove
17666 only the corresponding entry.
17667 (Vdbus_registered_functions_table): Change the order of entries.
17668 Apply these changes in xd_read_message and Fdbus_register_signal.
17669
176702007-12-16 Andreas Schwab <schwab@suse.de>
17671
17672 * fileio.c (Finsert_file_contents): Fix overflow check to not
17673 depend on undefined integer overflow.
17674
176752007-12-14 Jason Rumney <jasonr@gnu.org>
17676
17677 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17678 for characters above 127.
17679
176802007-12-13 Jason Rumney <jasonr@gnu.org>
17681
17682 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17683 before dereferencing array.
17684 (lookup_vk_code): Remove zero comparison.
17685
176862007-12-14 Michael Albinus <michael.albinus@gmx.de>
17687
17688 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17689 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17690 Use `unsigned int' instead of `uint'.
17691 (xd_read_message, Fdbus_register_signal): Split expressions into
17692 multiple lines before operators "&&" and "||", according to the
17693 GNU Coding Standards.
17694
176952007-12-14 Eli Zaretskii <eliz@gnu.org>
17696
17697 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17698
176992007-12-12 Juri Linkov <juri@jurta.org>
17700
17701 * buffer.c (Frename_buffer): In interactive spec replace
17702 `read-buffer' with `read-string' that uses `buffer-name-history'
17703 as history, and the current buffer's name as default.
17704
177052007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17706
17707 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17708 manipulating the backtrace manually.
17709 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17710 (struct backtrace, backtrace_list): Remove.
17711 (command_loop_1): Remove dead var `no_direct'.
17712
17713 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17714 preserve non-built-in buffer-local variables.
17715 (Fkill_all_local_variables): Don't re-create&re-set permanent
17716 buffer-local variables.
17717
177182007-12-09 Juri Linkov <juri@jurta.org>
17719
17720 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17721 Lisp code that uses `read-buffer' with current buffer as default.
17722
177232007-12-08 Michael Albinus <michael.albinus@gmx.de>
17724
17725 * dbusbind.c (xd_read_message): Generate an event for every
17726 registered handler. There might be several handlers registered
17727 for the same signal.
17728 (Fdbus_register_signal): Don't overwrite a registration for the
17729 same signal. Add a new registration if handlers are different.
17730 (Vdbus_registered_functions_table): Rework doc string.
17731
177322007-12-07 Michael Albinus <michael.albinus@gmx.de>
17733
17734 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17735 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17736 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17737 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17738 Unify argument lists.
17739 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17740 arguments and hash table keys. Use unique name for service.
17741 (Fdbus_unregister_signal): Remove checks.
17742 (Vdbus_registered_functions_table): Fix doc string.
17743
177442007-12-05 Magnus Henoch <mange@freemail.hu>
17745
17746 * process.c (make_process): Initialize pty_flag to 0.
17747
177482007-12-05 Jason Rumney <jasonr@gnu.org>
17749
17750 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17751 specified XBMs.
17752
177532007-12-05 Richard Stallman <rms@gnu.org>
17754
17755 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17756
177572007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17758
17759 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17760 New variable.
17761 (mac_try_close_socket) [MAC_OSX]: New function.
17762 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17763 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17764
17765 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17766 Use mac_try_close_socket.
17767
177682007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17769
17770 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17771 reloc_base.
17772 (copy_dysymtab): Compute relocation base here.
17773 (rebase_reloc_address) [__ppc64__]: New function.
17774 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17775 changed.
17776
177772007-12-05 Jason Rumney <jasonr@gnu.org>
17778
17779 * w32proc.c (sys_spawnve): Quote args with wildcards.
17780
177812007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17782
17783 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17784 __objc_* sections.
17785 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17786
177872007-12-05 Michael Albinus <michael.albinus@gmx.de>
17788
17789 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17790 Move check for Vdbus_registered_functions_table to
17791 xd_read_queued_messages.
17792 (xd_read_queued_messages): Protect xd_read_message calls by
17793 internal_condition_case_1.
17794
177952007-12-04 Michael Albinus <michael.albinus@gmx.de>
17796
17797 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17798 Qdbus_system_bus and Qdbus_session_bus, respectively.
17799 (Vdbus_intern_symbols): Remove.
17800 (Vdbus_registered_functions_table): New hash table.
17801 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17802 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17803 Rewrite in order to manage registered functions by hash table
17804 Vdbus_registered_functions_table.
17805
178062007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17807
17808 * xterm.c: Update URL to Window Manager Specification in comment.
17809
178102007-12-02 Michael Albinus <michael.albinus@gmx.de>
17811
17812 * config.in (HAVE_DBUS): Add.
17813
17814 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17815 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17816 (obj): Add $(DBUS_OBJ).
17817 (LIBES): Add $(DBUS_LIBS).
17818 (dbusbind.o): New target.
17819
17820 * dbusbind.c: New file.
17821
17822 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17823
17824 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17825 (Qdbus_event): New Lisp symbol.
17826 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17827 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17828 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17829
17830 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17831
178322007-12-01 Richard Stallman <rms@gnu.org>
17833
17834 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17835
178362007-11-30 Jason Rumney <jasonr@gnu.org>
17837
17838 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17839 (w32con_reset_terminal_modes): Clear screen buffer.
17840 (w32_face_attributes): Don't use color indexes that are out of range.
17841 Only reverse the default colors.
17842
17843 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17844 WINDOWSNT.
17845
17846 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17847
178482007-11-29 Jason Rumney <jasonr@gnu.org>
17849
17850 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17851 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17852 if the terminal colors are initialized.
17853 (unspecified_fg, unspecified_bg): Remove unused declarations.
17854
178552007-11-29 Andreas Schwab <schwab@suse.de>
17856
17857 * keyboard.c (apply_modifiers): Fix typo.
17858
178592007-11-29 Richard Stallman <rms@gnu.org>
17860
17861 * keymap.c (Fcurrent_local_map): Doc fix.
17862
178632007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17864
17865 * s/gnu-kfreebsd.h: New file.
17866
178672007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17868
17869 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17870 Don't cast redundantly.
17871
17872 * keyboard.c (KEY_TO_CHAR): New macro.
17873 (parse_modifiers, apply_modifiers): Accept integer arguments.
17874 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17875 for chars and symbol keys.
17876 After doing such remapping, apply function-key-map again.
17877
178782007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17879
17880 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17881 compiled anymore.
17882
178832007-11-26 Andreas Schwab <schwab@suse.de>
17884
17885 * process.c (list_processes_1): Fix indentation level of the
17886 command column.
17887
178882007-11-23 Andreas Schwab <schwab@suse.de>
17889
17890 * editfns.c (Fformat): Handle %c specially since it requires the
17891 argument to be of type int.
17892
178932007-11-23 Markus Triska <markus.triska@gmx.at>
17894
17895 * emacs.c (main): Call init_editfns before init_process, since
17896 init_process sets Vprocess_connection_type depending on OS release.
17897
178982007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17899
17900 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17901 (find_symbol_value): Use do_symval_forwarding.
17902
17903 * data.c (set_internal): Set the value in the `cons-cell' (for
17904 Buffer_Local_values) not only for frame-local variables.
17905
179062007-11-22 Andreas Schwab <schwab@suse.de>
17907
17908 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17909 values to sprintf.
17910 * keymap.c (Fsingle_key_description): Likewise.
17911 * print.c (print_object): Likewise.
17912
179132007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17914
17915 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17916 file for image is nil.
17917
179182007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17919
17920 * term.c: Include stdarg.h.
17921 (fatal): Implement using varargs.
17922 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17923
179242007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17925
17926 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17927 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17928 Update call to buffer_slot_type_mismatch.
17929 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17930 (buffer_slot_type_mismatch): Update.
17931 * buffer.c (buffer_local_types): Remove.
17932 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17933 (defvar_per_buffer): Set the type in the buffer_objfwd.
17934
179352007-11-21 Jason Rumney <jasonr@gnu.org>
17936
17937 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17938 CreateFileMapping returns NULL on failure.
17939
179402007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17941
17942 * search.c (Fset_match_data): Remove the `evaporate' feature.
17943 (unwind_set_match_data): Don't use the `evaporate' feature.
17944
179452007-11-21 Jason Rumney <jasonr@gnu.org>
17946
17947 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17948
17949 * w32console.c (w32con_write_glyphs): Remove unused variables.
17950
179512007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17952
17953 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17954
17955 * s/darwin.h (MULTI_KBOARD): Remove.
17956
17957 * macfns.c (x_create_tip_frame, Fx_create_frame)
17958 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17959
179602007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17961
17962 * buffer.c (Fbuffer_local_value): Remove redundant test.
17963 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17964 than in `current-buffer' to match the comment.
17965 Do the swap using swap_in_global_binding.
17966
17967 * data.c (store_symval_forwarding, set_internal):
17968 * eval.c (specbind): Remove dead code.
17969
17970 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17971 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17972 Since we do not want to see internal Lisp_*fwd objects here.
17973
179742007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17975
17976 * sysdep.c (init_system_name): Use getaddrinfo if available.
17977
17978 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17979 (x_scroll_bar_note_movement): start, end, with, height in struct
17980 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17981
179822007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17983
17984 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17985
179862007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17987
17988 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17989 This undoes Richard's change of 14-Oct-2002.
17990
17991 * alloc.c (allocate_other_vector):
17992 * lisp.h (allocate_other_vector): Remove.
17993
17994 * window.c (struct save_window_data): Move non-lisp data to the end
17995 and make it `int' rather than Lisp_Object.
17996 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17997 Done wrap/unwrap integer values.
17998 (Fset_window_configuration, compare_window_configurations):
17999 Update use of fields to their new types.
18000
18001 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18002 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18003 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18004 (SET_SCROLL_BAR_X_WINDOW): Remove.
18005 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18006 Access the new x_window field directly.
18007 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18008 Don't wrap/unwrap integers into Lisp_Objects.
18009 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18010 (x_scroll_bar_report_motion):
18011 Don't wrap/unwrap integers into Lisp_Objects.
18012 (x_term_init): Use SDATA.
18013 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18014 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18015 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18016 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18017 * xfns.c (x_set_background_color):
18018 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18019 Access the new x_window field directly.
18020
18021 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18022 (allocate_pseudovector): Make non-static.
18023
18024 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18025 (allocate_pseudovector): Declare.
18026 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18027
180282007-11-15 Andreas Schwab <schwab@suse.de>
18029
18030 * editfns.c (Fformat): Correctly format EMACS_INT values.
18031 Also take precision into account when formatting an integer.
18032
18033 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18034
180352007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18036
18037 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18038 (syms_of_keyboard): Defsubr it.
18039
18040 * data.c (swap_in_global_binding): Fix longstanding bug where
18041 store_symval_forwarding was not called with the right second argument,
18042 thus causing objfwd-ing from being dropped.
18043
180442007-11-14 Juanma Barranquero <lekktu@gmail.com>
18045
18046 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18047 (Fx_display_pixel_height, Fx_display_planes)
18048 (Fx_display_color_cells, Fx_server_max_request_size)
18049 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18050 (Fx_display_visual_class, Fx_display_save_under):
18051 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18052 (Fx_display_pixel_height, Fx_display_planes)
18053 (Fx_display_color_cells, Fx_server_max_request_size)
18054 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18055 (Fx_display_mm_height, Fx_display_mm_width)
18056 (Fx_display_backing_store, Fx_display_visual_class)
18057 (Fw32_select_font, Fx_display_save_under):
18058 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18059 (Fx_display_pixel_height, Fx_display_planes)
18060 (Fx_display_color_cells, Fx_server_max_request_size)
18061 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18062 (Fx_display_save_under): Fix typos in docstrings.
18063
180642007-11-14 Juanma Barranquero <lekktu@gmail.com>
18065
18066 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18067 corresponding to deleted entries; they are an implementation detail.
18068 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18069 Remove variables.
18070 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18071 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18072 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18073 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18074 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18075 (Fw32_define_rgb_color, Fw32_load_color_file)
18076 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18077 Fix typos in docstrings.
18078 (Fx_server_version): Reflow docstring.
18079 (Fw32_shell_execute): Doc fixes.
18080
180812007-11-13 Juanma Barranquero <lekktu@gmail.com>
18082
18083 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18084 if w32_parse_hot_key returned nil.
18085
180862007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18087
18088 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18089
180902007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18091
aac0c6e3
MR
18092 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18093
18094 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18095
18096 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18097 Remove W32_SCROLL_BAR_CLICK_EVENT.
18098
18099 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18100 Add MULTIMEDIA_KEY_EVENT.
18101
18102 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18103 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18104 (make_lispy_event) [WINDOWSNT]: Use it to translate
18105 MULTIMEDIA_KEY_EVENT.
18106
18107 * w32term.h (WM_APPCOMMAND): Define if not already.
18108 (GET_APPCOMMAND_LPARAM): Likewise.
18109
18110 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18111 WM_APPCOMMAND.
18112
18113 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18114 (syms_of_w32fns): Export and initialize it.
18115 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18116
181172007-11-09 Chong Yidong <cyd@stupidchicken.com>
18118
18119 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18120 twice.
18121
18122 * xdisp.c (handle_face_prop): Fix last change.
18123
181242007-11-09 Richard Stallman <rms@gnu.org>
18125
18126 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18127 not just for after-strings and before-strings.
18128 Call face_for_overlay_string and pass the overlay to it.
18129 (handle_display_prop): Determine whether property came from an overlay.
18130 Pass OVERLAY arg to handle_single_display_spec.
18131 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18132 (load_overlay_strings): Fill in it->string_overlays.
18133 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18134
18135 * xfaces.c (face_for_overlay_string): Function renamed from
18136 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18137
18138 * dispextern.h (struct it): New elt string_overlays.
18139 New elt from_overlay, also in stack.
18140 Rearrange a few elements.
18141 (face_for_overlay_string): Decl renamed from
18142 face_at_buffer_position_no_overlays, and add argument.
18143
181442007-11-09 Richard Stallman <rms@gnu.org>
18145
18146 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18147 to get the base face for an overlay string.
18148
18149 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18150
18151 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18152
18153 * xdisp.c (handle_stop): Move some code out of loop.
18154
181552007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18156
18157 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18158 Fix conversion from Lisp object to ATSUFontID.
18159
181602007-11-09 Jason Rumney <jasonr@gnu.org>
18161
18162 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18163
181642007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18165
18166 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18167 Don't assume regions are aligned to page boundary.
18168 (print_load_command_name): Add LC_UUID if defined.
18169
181702007-11-09 Richard Stallman <rms@gnu.org>
18171
18172 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18173
181742007-11-07 Jason Rumney <jasonr@gnu.org>
18175
18176 * s/windows95.h: Remove.
18177
181782007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18179
18180 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18181 abort with a message on unhandled store_type values.
18182
181832007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18184
18185 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18186 Remove HAVE_X11R5 and HAVE_X11R4.
18187
181882007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18189
18190 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18191
181922007-11-01 Johan Bockgård <bojohan@gnu.org>
18193
18194 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18195 Don't set s->stippled_p here, since it has already been set by
18196 x_set_glyph_string_gc from x_draw_glyph_string.
18197
181982007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18199
18200 * sunfns.c: Remove file.
18201
18202 * m/sun386.h:
18203 * m/sun2.h:
18204 * m/sparc.h: Remove Sun windows code.
18205
182062007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18207
18208 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18209 (init_keyboard): Set current_kboard's window-system to nil.
18210 (tty_read_avail_input): Typo.
18211 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18212
182132007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18214
18215 * s/usg5-4.h:
18216 * s/usg5-3.h:
18217 * s/ptx.h:
18218 * m/is386.h:
18219 * m/ibmps2-aix.h:
18220 * Makefile.in: Remove all mentions of X10.
18221
18222 * dispnew.c (syms_of_display): Don't mention version 10.
18223
182242007-10-28 Juanma Barranquero <lekktu@gmail.com>
18225
18226 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18227 ($(BLD)/abbrev.$(O)): Remove.
18228
182292007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18230
18231 Rewrite abbrev.c in Elisp.
18232 * image.c (Qcount): Don't declare as extern.
18233 (syms_of_image): Initialize and staticpro `Qcount'.
18234 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18235 * emacs.c (main): Don't call syms_of_abbrev.
18236 * Makefile.in (obj): Remove abbrev.o.
18237 (abbrev.o): Remove.
18238 * abbrev.c: Remove.
18239
182402007-10-26 Martin Rudalics <rudalics@gmx.at>
18241
18242 * window.c (window_min_size_2): Don't count header-line.
18243
182442007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18245
18246 * frame.h (struct frame): Move all bit fields after the first bit
18247 field to take advantage of the available space. Group all the
18248 chars together to reduce wasted space due to padding.
18249
182502007-10-26 Juanma Barranquero <lekktu@gmail.com>
18251
18252 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18253
18254 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18255 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18256 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18257 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18258 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18259 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18260 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18261 (last_marked, mark_object_loop_halt): Make static.
18262
18263 * frame.c (syms_of_frame) <delete-frame-functions>:
18264 Fix typo in docstring.
18265
182662007-10-25 Juanma Barranquero <lekktu@gmail.com>
18267
18268 * w32.c (init_environment): Fix tiny memory leak.
18269 (w32_get_resource): Remove unused variable `ok'.
18270
182712007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18272
18273 Make `window-system' into a keyboard-local variable (rather than
18274 frame-local as done originally by multi-tty).
18275
18276 * keyboard.h (struct kboard): Add Vwindow_system.
18277 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18278 (mark_kboards): Mark Vwindow_system.
18279
18280 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18281 (init_display): Don't set the obsolete `window-system' frame-param.
18282
18283 * xterm.c (x_term_init):
18284 * w32term.c (w32_create_terminal):
18285 * term.c (init_tty): Set Vwindow_system.
18286 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18287 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18288
18289 * xfns.c (Fx_create_frame, x_create_tip_frame):
18290 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18291 * macfns.c (Fx_create_frame):
18292 Don't set the obsolete `window-system' frame-param.
18293
18294 * frame.h (Qwindow_system): Remove.
18295 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18296 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18297
182982007-10-24 Richard Stallman <rms@gnu.org>
18299
18300 * frame.c (x_figure_window_size): For fullscreen case,
18301 set USPosition | PPosition without clobbering rest of window_prompting.
18302
18303 * keyboard.c (Fcurrent_idle_time): Doc fix.
18304
18305 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18306
183072007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18308
18309 * process.c (unwind_request_sigio): Only define if __ultrix__.
18310
18311 * callproc.c (child_setup): Remove spurious *.
18312
18313 * lisp.h (Fget_text_property): Declare.
18314 (have_menus_p): Declare it here rather than in sys-dep header files.
18315 * macterm.h (have_menus_p):
18316 * msdos.h (have_menus_p):
18317 * xterm.h (have_menus_p): Remove.
18318
18319 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18320 (Fmake_variable_frame_local): Just check the variable's const-ness
18321 rather than checking nil or t.
18322
183232007-10-22 Jason Rumney <jasonr@gnu.org>
18324
18325 * w32fns.c: Include math.h.
18326 (w32_abort): Declaration moved to nt/config.nt.
18327
18328 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18329 (abort): Redefinition moved to nt/config.nt.
18330
18331 * m/windowsnt.h: Remove.
18332
183332007-10-22 Juanma Barranquero <lekktu@gmail.com>
18334
18335 * emacs.c (Fdump_emacs): Fix typo in message.
18336 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18337 <installation-directory>: Reflow docstring.
18338
183392007-10-22 Juri Linkov <juri@jurta.org>
18340
18341 * minibuf.c: Allow minibuffer default to be a list of default values.
18342 With empty input use the first element of this list as returned default.
18343 (string_to_object)
18344 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18345 (read_minibuf): If defalt is cons, set histstring to its car.
18346 (Fread_string): If default_value is cons, set val to its car.
18347 (Fread_buffer): If def is cons, use its car.
18348 (Fcompleting_read): If defalt is cons, set val to its car.
18349
183502007-10-21 Michael Albinus <michael.albinus@gmx.de>
18351
18352 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18353
183542007-10-20 Juanma Barranquero <lekktu@gmail.com>
18355
18356 * doc.c (Fdocumentation): Check for advice in all cases.
18357
183582007-10-19 Chong Yidong <cyd@stupidchicken.com>
18359
18360 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18361
183622007-10-19 Richard Stallman <rms@gnu.org>
18363
18364 * doc.c (Fdocumentation): Check for and handle an advised function.
18365
183662007-10-19 Juanma Barranquero <lekktu@gmail.com>
18367
18368 * process.c (Fset_process_filter): Doc fix.
18369
183702007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18371
18372 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18373 which caused key-translation-map to applied repeatedly (thus breaking
18374 double-mode).
18375
183762007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18377
18378 * xselect.c (x_own_selection, x_handle_selection_clear)
18379 (x_clear_frame_selections):
18380 * w32menu.c (list_of_panes, list_of_items):
18381 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18382 * textprop.c (validate_plist, interval_has_all_properties)
18383 (interval_has_some_properties, interval_has_some_properties_list)
18384 (add_properties, text_property_list):
18385 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18386 * minibuf.c (Fassoc_string):
18387 * macselect.c (x_own_selection, x_clear_frame_selections)
18388 (Fx_disown_selection_internal):
18389 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18390 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18391
183922007-10-17 Chong Yidong <cyd@stupidchicken.com>
18393
18394 * process.c: Link to libs for calling res_init() if available.
18395 (Fmake_network_process): Call res_init() before getaddrinfo or
18396 gethostbyname, if possible.
18397
183982007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18399
18400 * lread.c (read1): Set pvectype for char_tables.
18401
18402 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18403 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18404 Add type checks.
18405 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18406
18407 * alloc.c (free_misc): Use XMISCTYPE.
18408 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18409
184102007-10-17 Glenn Morris <rgm@gnu.org>
18411
18412 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18413 (syms_of_minibuf): Add Qcompletion_ignore_case.
18414 * dired.c (Qcompletion_ignore_case): Change to external.
18415 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18416 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18417 (Fread_file_name): Use it rather than intern'ing.
18418
18419 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18420 (Fread_coding_system): Ignore case of user input.
18421
184222007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18423
18424 * xdisp.c (handle_display_prop): Ignore display specs after
18425 replacing one when string text is being replaced.
18426 (handle_single_display_spec): Pretend as if characters with display
18427 property haven't been consumed only when buffer text is being replaced.
18428
184292007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18430
18431 * xfns.c (Fx_create_frame, Fx_display_list):
18432 * window.c (window_fixed_size_p, enlarge_window)
18433 (shrink_window_lowest_first):
18434 * macterm.c (init_font_name_table):
18435 * macfns.c (Fx_create_frame, Fx_display_list):
18436 * lread.c (close_load_descs):
18437 * keyboard.c (read_char_x_menu_prompt):
18438 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18439 * coding.c (code_convert_region_unwind): Test the type of an object
18440 rather than just !NILP before extracting data from it.
18441
18442 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18443
18444 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18445 (XMISCANY): New macro.
18446 (XMISCTYPE): Use it.
18447 (struct Lisp_Misc_Any): New type.
18448 (union Lisp_Misc): Use it.
18449 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18450 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18451 (find_symbol_value, set_internal, default_value, Fset_default)
18452 (Fmake_variable_buffer_local, Fmake_local_variable)
18453 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18454 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18455 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18456 * alloc.c (allocate_buffer): Set the size and tag.
18457 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18458 Use XMISCANY.
18459 (die): Follow the GNU convention for error messages.
18460 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18461 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18462 tag any more.
18463 (set_buffer_internal_1):
18464 * frame.c (store_frame_param):
18465 * eval.c (specbind):
18466 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18467
18468 * doc.c (Fsnarf_documentation): Simplify.
18469
184702007-10-14 Juanma Barranquero <lekktu@gmail.com>
18471
18472 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18473 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18474
184752007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18476
18477 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18478
184792007-10-14 Juanma Barranquero <lekktu@gmail.com>
18480
18481 * eval.c (do_autoload): Don't save autoloads.
18482
18483 * data.c (Ffset): Save autoload of the function being set.
18484
184852007-10-07 John Paul Wallington <jpw@pobox.com>
18486
18487 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18488 parameter before setting up faces.
18489
184902007-10-13 Eli Zaretskii <eliz@gnu.org>
18491
18492 * ccl.c (Fregister_code_conversion_map):
18493 * keyboard.c (append_tool_bar_item): Reformat last change.
18494
18495 * lisp.h (eabs): Rename from `abs'. All callers changed.
18496
184972007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18498
18499 * buffer.c (add_overlay_mod_hooklist):
18500 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18501 * fontset.c (make_fontset):
18502 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18503 (append_tool_bar_item):
18504 * macmenu.c (grow_menu_items):
18505 * w32menu.c (grow_menu_items):
18506 * xmenu.c (grow_menu_items): Use larger_vector.
18507
185082007-10-13 Eli Zaretskii <eliz@gnu.org>
18509
18510 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18511 selected frame'' on MSDOS).
18512
185132007-10-12 Martin Rudalics <rudalics@gmx.at>
18514
18515 * frame.c (Qexplicit_name): New variable.
18516 (x_report_frame_params): Report it in parameter alist.
18517 (syms_of_frame): Intern and staticpro it.
18518
185192007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18520
18521 * macfns.c (x_create_tip_frame): Set terminal for frame.
18522
185232007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18524
18525 * frame.c (Qenvironment): Remove.
18526 (syms_of_frame) <Qenvironment>: Don't initialize.
18527 (Fdelete_frame): Don't treat the `environment' param specially.
18528 * frame.h (Qenvironment): Don't declare.
18529 * callproc.c (set_initial_environment): Don't set unused frame param.
18530
18531 * frame.c (Fframe_with_environment): Remove.
18532 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18533
18534 * lisp.h (Fframe_with_environment): Don't declare.
18535
185362007-10-10 Juanma Barranquero <lekktu@gmail.com>
18537
18538 * indent.c (indent_tabs_mode, last_known_column)
18539 (last_known_column_modified): Make static.
18540 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18541
185422007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18543
18544 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18545
185462007-10-09 Jason Rumney <jasonr@gnu.org>
18547
18548 * w32term.c (x_set_window_size): Disable code that attempts to tell
18549 Lisp code about a size change before it actually happens.
18550
185512007-10-09 Richard Stallman <rms@gnu.org>
18552
18553 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18554 return HANDLED_RETURN.
18555
185562007-10-08 Martin Rudalics <rudalics@gmx.at>
18557
18558 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18559 when there's an unread command event.
18560
18561 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18562 window autoselection act appropriately when leaving selected frame.
18563 (syms_of_frame): Initialize focus_follows_mouse.
18564 * frame.h (focus_follows_mouse): Extern it.
18565 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18566 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18567 * msdos.c (dos_rawgetc): Likewise.
18568 * w32term.c (w32_read_socket): Likewise.
18569 * xterm.c (handle_one_xevent): Likewise.
18570 * xdisp.c (syms_of_xdisp): In doc-string of
18571 mouse-autoselect-window mention focus-follows-mouse.
18572
185732007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18574
18575 * macterm.c (mac_load_query_font): Fix missing return value.
18576 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18577 Add BLOCK_INPUT.
18578
185792007-10-08 Richard Stallman <rms@gnu.org>
18580
18581 * xdisp.c (get_window_cursor_type): Implement documented behavior
18582 for cursor-in-non-selected-windows = t.
18583
185842007-10-08 Jason Rumney <jasonr@gnu.org>
18585
18586 * w32.c (w32_get_resource): Always close registry keys.
18587
185882007-10-08 Jason Rumney <jasonr@gnu.org>
18589
18590 * makefile.w32-in (LIBS): Add COMCTL32.
18591
18592 * w32fns.c (globals_of_w32fns): Init common controls.
18593
185942007-10-08 Richard Stallman <rms@gnu.org>
18595
18596 * image.c (our_memory_buffer): Rename from omfib_buffer.
18597
185982007-10-08 Richard Stallman <rms@gnu.org>
18599
18600 * buffer.c (Foverlays_at): Doc fix.
18601
186022007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18603
18604 * fns.c (Fplist_put): Preserve uneven tail data.
18605
186062007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18607
18608 * termhooks.h (enum event_kind): Remove trailing comma.
18609
18610 * frame.h (enum): Remove trailing comma.
18611
186122007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18613
18614 * w32proc.c (delete_child): Don't terminate threads of zombies.
18615
186162007-10-08 Martin Rudalics <rudalics@gmx.at>
18617
18618 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18619
18620 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18621 last-repeatable-command.
18622 (init_kboard): Initialize Vlast_repeatable_command.
18623 (command_loop_1): Set it to real_this_command unless that was
18624 bound to an input event.
18625 (mark_kboards): Mark it.
18626
186272007-10-08 Richard Stallman <rms@gnu.org>
18628
18629 * eval.c (condition-case): Doc fix.
18630
186312007-10-08 Masatake YAMATO <jet@gyve.org>
18632
18633 * xfaces.c (tty_supports_face_attributes_p): Fix code
18634 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18635 was copied and not edited.
18636
186372007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18638
18639 Add new `input-decode-map' keymap and use it for terminal
18640 escape sequences.
18641 * keyboard.h (struct kboard): Add Vinput_decode_map.
18642 Remove Vlocal_key_translation_map.
18643 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18644 (init_kboard): Init input-decode-map.
18645 Replace local-key-translation-map back with key-translation-map.
18646 (syms_of_keyboard): Declare input-decode-map.
18647 Remove local-key-translation-map. Update docstrings.
18648 (mark_kboards): Mark Vinput_decode_map.
18649 Don't mark Vlocal_key_translation_map.
18650 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18651 Replace local-key-translation-map back with key-translation-map.
18652 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18653 Bind in input-decode-map rather than function-key-map.
18654
18655 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18656 This was made redundant by the previous introduction of XSETPVECTYPE.
18657
186582007-10-09 Richard Stallman <rms@gnu.org>
18659
18660 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18661
186622007-09-29 Richard Stallman <rms@gnu.org>
18663
18664 * eval.c (internal_condition_case_2, internal_condition_case_1)
18665 (internal_condition_case): Reenable abort if x_catching_errors ()
18666 to see if that really happens and why.
18667
186682007-10-06 Andreas Schwab <schwab@suse.de>
18669
18670 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18671
186722007-10-04 Juanma Barranquero <lekktu@gmail.com>
18673
18674 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18675
186762007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18677
18678 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18679
186802007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18681
18682 * window.h (struct window):
18683 * window.c (struct save_window_data, struct saved_window):
18684 * termhooks.h (struct terminal):
18685 * process.h (struct Lisp_Process):
18686 * frame.h (struct frame):
18687 * buffer.h (struct buffer):
18688 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18689 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18690 The size field of (pseudo)vectors is now unsigned.
18691 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18692
18693 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18694 Turn `count' into an integer.
18695
18696 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18697 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18698 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18699 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18700 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18701
18702 * alloc.c (allocate_pseudovector): New fun.
18703 (ALLOCATE_PSEUDOVECTOR): New macro.
18704 (allocate_window, allocate_terminal, allocate_frame)
18705 (allocate_process): Use it.
18706 (mark_vectorlike): New function.
18707 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18708 (mark_terminals): Use it.
18709 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18710 (Fmake_byte_code): Use XSETPVECTYPE.
18711
18712 * frame.c (Fframe_parameters): Minor simplification.
18713
18714 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18715
18716 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18717
18718 * buffer.c (Fget_buffer_create, init_buffer_once):
18719 * lread.c (defsubr):
18720 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18721
18722 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18723 defined differently in the m/*.h files.
18724 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18725 (XSETPVECTYPE): New macro.
18726 (XSETPSEUDOVECTOR): Use it.
18727
18728 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18729 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18730
18731 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18732 * lread.c (defvar_per_buffer):
18733 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18734
18735 * window.c (candidate_window_p): Only consider as visible frames that
18736 are on the same terminal.
18737
18738 * m/ibms390x.h (MARKBIT): Remove unused macro.
18739
187402007-10-01 Juanma Barranquero <lekktu@gmail.com>
18741
18742 * lread.c (Fload): Fix typo in docstring.
18743
187442007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18745
18746 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18747 of a non-zero value can't yield zero.
18748
187492007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18750
18751 * term.c (term_clear_mouse_face, term_mouse_highlight)
18752 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18753
18754 * print.c (safe_debug_print): Use XHASH.
18755
18756 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18757 Lisp elements such as tags.
18758 (XHASH): New macro.
18759 (EQ): Use it.
18760 (SREF, SSET, STRING_COPYIN): Use SDATA.
18761 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18762
18763 * alloc.c (mark_terminal): Remove left-over declaration.
18764 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18765 (allocate_vectorlike): Remove type argument. Adjust callers.
18766 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18767 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18768
18769 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18770 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18771 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18772 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18773 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18774 Use them.
18775
18776 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18777 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18778 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18779
187802007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18781
18782 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18783 loaded by default.
18784
187852007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18786
18787 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18788 on this tty.
18789 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18790
18791 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18792 Update all users.
18793 (handle_one_term_event): Use Gpm_DrawPointer.
18794 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18795 Signal errors instead of returning nil. Always return nil.
18796 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18797 Make it a noop if gpm-mouse was not activated.
18798 (syms_of_term): Update names.
18799
188002007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18801
18802 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18803 (init_sys_modes): Check that gpm_tty is the current tty.
18804
18805 * alloc.c (allocate_terminal): Set the vector size to only count the
18806 lisp fields. Initialize those to nil.
18807 (mark_object): Don't treat terminals specially.
18808 (mark_terminal): Remove.
18809 (mark_terminals): Use mark_object instead.
18810
18811 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18812 the GC to the beginning.
18813
18814 * indent.h:
18815 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18816
18817 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18818
188192007-09-25 Jason Rumney <jasonr@gnu.org>
18820
18821 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18822
18823 * w32console.c (create_w32cons_output): Remove.
18824
18825 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18826
18827 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18828 (reset_sys_modes): Use reset_terminal_modes_hook.
18829
188302007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18831
18832 * eval.c (do_autoload): Don't output any message.
18833
188342007-09-24 Juri Linkov <juri@jurta.org>
18835
18836 * emacs.c (standard_args): Change priority of "--no-splash"
18837 from 40 to 3. Add "--no-desktop" with the same priority.
18838
188392007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18840
18841 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18842 and optimize the case where they are all 1.
18843
188442007-09-23 Johannes Weiner <hannes@saeurebad.de>
18845
18846 * lisp.h (abs): Define if not defined.
18847 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18848 Don't define `abs', since it's defined in lisp.h.
18849
188502007-09-22 Eli Zaretskii <eliz@gnu.org>
18851
18852 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18853 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18854 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18855 (init_tty): Use DEV_TTY instead of "/dev/tty".
18856 [WINDOWSNT]: No need to protect from NAME arg being null.
18857
188582007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18859
18860 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18861 up the tty state.
18862
188632007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18864
18865 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18866 (gpm_tty): Change its type.
18867 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18868 (gpm_tty): Change its type and initialize it.
18869 (Fterm_open_connection): Check the frame is indeed a tty.
18870 Use the new gpm_tty.
18871 (Fterm_close_connection): Use the new gpm_tty.
18872 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18873 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18874
188752007-09-21 Juanma Barranquero <lekktu@gmail.com>
18876
18877 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18878 underline_color, to draw strike-through.
18879
188802007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18881
18882 * lisp.h (allocate_terminal): Declare.
18883
18884 * window.c (candidate_window_p): Consider frames that are being placed
18885 by the user as somewhere between visible and iconified.
18886 (window_loop): Prefer windows on the current frame.
18887 (Fselect_window): Move the use of select-frame to the beginning so we
18888 can just delegate all the work (it'll call us back anyway).
18889
18890 * frame.c (Qdisplay_environment_variable):
18891 * frame.h (Qdisplay_environment_variable): Delete.
18892
18893 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18894 of the first arg, since that value may be a union.
18895
18896 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18897 parameter rather than Qdisplay_environment_variable. If all else
18898 fails, look for DISPLAY in initial-environment.
18899
189002007-09-21 Glenn Morris <rgm@gnu.org>
18901
18902 * Makefile.in (emacstool): Remove target.
18903 (lisp, shortlisp): Remove termdev.elc.
18904
189052007-09-21 Markus Triska <markus.triska@gmx.at>
18906
18907 * xterm.c (x_delete_display): Compile session management conditionally.
18908
189092007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18910
18911 * callproc.c (getenv_internal_1): New function.
18912 (getenv_internal): Use it.
18913 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18914
18915 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18916 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18917 (Fset_terminal_parameter): Work with dead terminals as well.
18918 (Fmodify_terminal_parameters): Remove.
18919
18920 * terminal.c (get_terminal): Handle terminals.
18921 Make sure the terminal returned is live.
18922 (create_terminal): Use allocate_terminal.
18923 (mark_terminals): Move to alloc.c.
18924 (delete_terminal): Use terminal->name as liveness status.
18925 NULL out fields after freeing their contents.
18926 Don't deallocate the object.
18927 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18928 rather than an int.
18929 (Fterminal_live_p): Accept non-integer arguments.
18930 (Fterminal_list): Return terminal objects rather than an ints.
18931
18932 * alloc.c (enum mem_type): New member for `terminal' objects.
18933 (allocate_terminal): New function.
18934 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18935 Handle terminals.
18936 (mark_terminal): New fun.
18937 (mark_terminals): Move from terminal.c.
18938
18939 * term.c (get_tty_terminal): Don't treat output_initial specially.
18940 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18941 (delete_tty): Use terminal->name as liveness status.
18942
18943 * termhooks.h (struct terminal): Make it into a pseudovector.
18944 Remove `deleted' replaced by checking `name's nullness.
18945
18946 * print.c (print_object): Handle terminals.
18947
18948 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18949 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18950
18951 * frame.c (make_terminal_frame):
18952 * keyboard.c (tty_read_avail_input):
18953 * w32term.c (x_delete_terminal):
18954 * xfns.c (Fx_create_frame, x_create_tip_frame):
18955 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18956
189572007-09-20 Glenn Morris <rgm@gnu.org>
18958
18959 * process.c (Fmake_network_process): Doc fix.
18960
189612007-09-19 Jason Rumney <jasonr@gnu.org>
18962
18963 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18964
189652007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18966
18967 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18968 Fix a C warning regarding variable constness.
18969
18970 * xterm.c (handle_one_xevent): Fix a C warning.
18971
189722007-09-18 Jason Rumney <jasonr@gnu.org>
18973
18974 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18975
189762007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18977
18978 * gtkutil.c (gdpy_def): New variable.
18979 (xg_initialize): Initialize gdpy_def.
18980 (xg_display_close): If no other display exists, set gdpy_def to a
18981 new connection.
18982
189832007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18984
18985 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18986 when we have no file name for the icon.
18987 (xg_tool_bar_expose_callback): Remove.
18988 (xg_create_tool_bar): Don't connect expose signal to
18989 xg_tool_bar_expose_callback.
18990 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18991
189922007-09-16 Andreas Schwab <schwab@suse.de>
18993
18994 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18995 values instead of zapping them.
18996
189972007-09-14 Glenn Morris <rgm@gnu.org>
18998
18999 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19000 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19001 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19002 scope and rename to omfib_buffer for clarity.
19003 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19004
190052007-09-14 Kenichi Handa <handa@m17n.org>
19006
19007 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19008
190092007-09-13 Jason Rumney <jasonr@gnu.org>
19010
19011 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19012
19013 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19014
19015 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19016 (mac_term_init): Call here instead, passing rif.
19017
190182007-09-13 Glenn Morris <rgm@gnu.org>
19019
19020 * s/hpux.h: No longer define `static' as nothing.
19021
190222007-09-13 Johan Bockgård <bojohan@gnu.org>
19023
19024 * callint.c (Fcall_interactively): Remove unused var `fun'.
19025
190262007-09-12 Romain Francoise <romain@orebokech.com>
19027
19028 * window.c (prefer_window_split_horizontally, display_buffer):
19029 Revert 2007-09-08 change.
19030
190312007-09-12 Glenn Morris <rgm@gnu.org>
19032
19033 * alloca.c: Remove file.
19034 * Makefile.in (alloca): Do not undef.
19035 (allocaobj, alloca.o): Remove.
19036 (otherobj): Remove allocaobj.
19037 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19038 * regex.c (C_ALLOCA): Remove all references and code that was only
19039 used when this was defined.
19040 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19041 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19042 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19043
19044 * Makefile.in (SOURCES, unlock, relock): Delete.
19045
19046 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19047 (menu_grab_callback): All uses changed.
19048
19049 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19050 (x_reply_selection_request): All uses changed.
19051
190522007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19053
19054 * lread.c (load_warn_old_style_backquotes): Change message to look
19055 better when it appears in the middle of byte-compiler messages.
19056
190572007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19058
19059 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19060
19061 * xterm.c (x_create_terminal): Add comment.
19062
19063 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19064
190652007-09-10 Richard Stallman <rms@gnu.org>
19066
19067 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19068
190692007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19070
19071 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19072 (DEFUN): Document `intspec', use it instead of `prompt'.
19073
19074 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19075
19076 * data.c (Finteractive_form): If the interactive specification starts
19077 with a `(', use it as a Lisp form.
19078
19079 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19080 name and file modes.
19081
19082 * callint.c (Fcall_interactively): Comment fixes.
19083
190842007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19085
19086 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19087 and compiled functions.
19088
190892007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19090
19091 * window.c (prefer_window_split_horizontally): New variable.
19092 (display_buffer): Consider splitting window horizontally depending
19093 on prefer_window_split_horizontally.
19094
190952007-09-08 Eli Zaretskii <eliz@gnu.org>
19096
19097 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19098
190992007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19100
19101 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19102
19103 * frame.c (x_set_frame_parameters): Check number is positive before
19104 using XFASTINT.
19105
19106 * window.c (freeze_window_start): Don't presume selected_window holds
19107 a window object.
19108 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19109
191102007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19111
19112 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19113
191142007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19115
19116 * window.c (Vsplit_window_preferred_function): New var.
19117 (Fdisplay_buffer): Use it.
19118 (syms_of_window): Export, and initialize it.
19119
191202007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19121
19122 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19123
191242007-09-06 Glenn Morris <rgm@gnu.org>
19125
19126 * gtkutil.c (menu_grab_callback) <cnt>:
19127 * xselect.c (x_reply_selection_request) <cnt>: Move static
19128 variable to file scope.
19129
191302007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19131
19132 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19133 consistent values of selected_frame and selected_window.
19134
191352007-09-04 Jason Rumney <jasonr@gnu.org>
19136
19137 * w32console.c (initialize_w32_display): Zero unused hooks.
19138
191392007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19140
19141 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19142 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19143
191442007-09-04 Jason Rumney <jasonr@gnu.org>
19145
19146 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19147 in w32console.c. Set up input. Remove XXX comments that have been
19148 confirmed as correct.
19149
19150 * s/ms-w32.h (MULTI_KBOARD): Define.
19151
19152 * w32console.c (one_and_only_w32cons): Remove.
19153 (initialize_w32_display): Take terminal argument.
19154
19155 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19156 initialize_w32_display.
19157 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19158
19159 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19160
19161 * keyboard.c (discard_mouse_events): Discard it.
19162 (make_lispy_event): Translate it to a lisp event.
19163 (lispy_wheel_names): Add wheel-left and right events.
19164 (syms_of_keyboard): Enlarge wheel_syms.
19165
19166 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19167 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19168
19169 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19170
19171 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19172 from WM_MOUSEHWHEEL.
19173 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19174
19175 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19176 terminal.
19177
19178 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19179 keyboard for the terminal.
19180
191812007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19182
19183 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19184 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19185 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19186 and resume-tty-function to resume-tty-hook.
19187 (Fsuspend_tty, Fresume_tty): Use new names.
19188
191892007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19190
19191 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19192 if it starts with "n:".
19193
191942007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19195
19196 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19197
191982007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19199
19200 * frame.h:
19201 * frame.c (Qterm_environment_variable): Remove.
19202 (syms_of_frame): Don't init and staticpro it.
19203
19204 * callproc.c (getenv_internal): Remove special case for $TERM.
19205
19206 * callproc.c (Vinitial_environment): New variable.
19207 (set_initial_environment): Initialize it.
19208 (syms_of_callproc): Declare it.
19209 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19210 TERM under which a process runs is never related to the TERM in which
19211 Emacs is running.
19212
192132007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19214
19215 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19216 * s/darwin.h: ... do it here.
19217
192182007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19219
19220 * lisp.h (set_initial_environment): Rename from set_global_environment.
19221
19222 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19223 removed by mistake on the multi-tty branch.
19224
19225 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19226 (Fmodify_frame_parameters): Return a value.
19227
19228 * image.c (png_load): Comment-out var only used in commented-out code.
19229
19230 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19231 before passing it to mark_object.
19232
19233 * xfaces.c (internal_resolve_face_name): Return a value.
19234 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19235
19236 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19237 (x_icon): Comment-out var only used in commented-out code.
19238
192392007-08-29 Romain Francoise <romain@orebokech.com>
19240
19241 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19242 QUIT hasn't been provided.
19243
192442007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19245
19246 * callproc.c (child_setup, getenv_internal): Use the
19247 display-environment-variable and term-environment-variable frame params.
19248 (set_initial_environment): Initialise Vprocess_environment.
19249
19250 * config.in: Disable multi-keyboard support on a mac.
19251
19252 * frame.c (Qterm_environment_variable)
19253 (Qdisplay_environment_variable): New variables.
19254 (syms_of_frame): Intern and staticpro them.
19255 (Fmake_terminal_frame): Disable output method test.
19256
19257 * frame.h: Declare them here.
19258
19259 * macfns.c (x_set_mouse_color): Get rif from the frame.
19260 (x_set_tool_bar_lines): Don't use updating_frame.
19261 (mac_window): Add 2 new parameters for consistency with other systems.
19262 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19263 frame parameters following what is done in X11 and w32. Don't use
19264 FRAME_MAC_DISPLAY_INFO.
19265 (Fx_open_connection, start_hourglass): Remove window-system check.
19266 (x_create_tip_frame): Get the keyboard from the terminal.
19267
19268 * macmenu.c: Reorder includes.
19269 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19270
19271 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19272 terminal parameter.
19273 (x_clear_frame): Add a frame parameter.
19274 (note_mouse_movement): Get rif from the frame.
19275 (mac_term_init): Initialize the terminal.
19276 (mac_initialize): Make static and move terminal initialization ...
19277 (mac_create_terminal): ... to this new function.
19278
19279 * macterm.h (struct mac_display_info): Add terminal.
19280 (mac_initialize): Delete declaration.
19281
19282 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19283
19284 * sysdep.c: Comment out text after #endif.
19285
19286 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19287 is defined. Better initialize ttys in windows. Use terminal
19288 specific mouse_position_hook.
19289
19290 * termhooks.h (union display_info): Add mac_display_info.
19291
19292 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19293 Set the default minibuffer frame, window_system and the rest of the
19294 frame parameters following what is done in X11.
19295
19296 * w32term.c (w32_initialize): Make static.
19297
19298 * xselect.c (x_handle_selection_clear): Only access
19299 terminal->kboard when MULTI_KBOARD is defined.
19300
19301 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19302 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19303
193042007-08-29 Jason Rumney <jasonr@gnu.org>
19305
19306 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19307 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19308
19309 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19310 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19311
19312 * keyboard.c (restore_kboard_configuration): Only define when
19313 MULTI_KBOARD defined.
19314
19315 * makefile.w32-in: Update dependancies from Makefile.in.
19316 (OBJ1): Add terminal.$(O)
19317
19318 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19319 Don't define function body.
19320 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19321
19322 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19323
19324 * w32.c (request_sigio, unrequest_sigio): Remove.
19325
19326 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19327 (w32con_clear_frame, w32con_clear_end_of_line)
19328 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19329 (w32con_delete_glyphs, w32con_set_terminal_window)
19330 (scroll_line, w32_sys_ring_bell): Add frame arg.
19331 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19332 Add terminal arg.
19333 (PICK_FRAME): Remove.
19334 (w32con_write_glyphs): Use frame specific terminal coding.
19335 (one_and_only_w32cons): New global variable.
19336 (initialize_w32_display): Use it for storing hooks.
19337 (create_w32cons_output): New function.
19338
19339 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19340 arg a frame.
19341
19342 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19343 Set window_system.
19344 (x_set_tool_bar_lines): Don't use updating_frame.
19345 (Fx_create_frame): Set terminal and ref count.
19346 (Fx_open_connection): Remove window-system check.
19347
19348 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19349
19350 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19351 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19352 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19353 Add frame arg.
19354 (x_delete_terminal, w32_create_terminal): New functions.
19355 (w32_term_init): Create a terminal.
19356 (w32_initialize): Move terminal specific initialization to
19357 w32_create_terminal.
19358
19359 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19360 (w32_clear_rect, w32_clear_area): Use background from frame.
19361 (w32_display_info): Add terminal.
19362 (w32_sys_ring_bell, x_delete_display): Declare here.
19363
19364 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19365
19366 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19367
193682007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19369
19370 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19371 Fix get_named_tty calls for the controlling tty.
19372
193732007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19374
19375 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19376
193772007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19378
19379 * term.c (tty_insert_glyphs): Add missing first parameter.
19380
193812007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19382
19383 * buffer.c (Fbuffer_list, Fbury_buffer):
19384 Take frame->buried_buffer_list into account.
19385
19386 * cm.c (current_tty): New variable, for cmputc().
19387 (cmputc): Use it.
19388 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19389 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19390 (cmgoto): Add tty parameter. Pass it on to calccost().
19391 Use emacs_tputs() instead of tputs().
19392
19393 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19394 tputs().
19395 (current_tty): New variable, for cmputc().
19396 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19397
19398 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19399 (internal_condition_case, internal_condition_case_1)
19400 (internal_condition_case_2): Don't abort when x_catching_errors.
19401
19402 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19403 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19404 prevent crashes caused by bogus longjmps in read_char.
19405
19406 * keymap.h (Fset_keymap_parent): Add EXFUN.
19407
19408 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19409 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19410 Remove redundant definition.
19411
19412 * macfns.c (x_set_mouse_color, x_make_gc):
19413 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19414
19415 * w32term.c (x_free_frame_resources):
19416 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19417 (w32_initialize): Use the accessor macros for terminal characteristics.
19418
19419 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19420 Use the accessor macros for terminal characteristics.
19421 * msdos.c (internal_terminal_init): Use the accessor macros for
19422 terminal characteristics.
19423 (ScreenVisualBell, internal_terminal_init):
19424 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19425
19426 * termopts.h (no_redraw_on_reenter): Declare.
19427
19428 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19429 (mark_terminals, mark_ttys): Declare.
19430 (Fgarbage_collect): Call them.
19431 (mark_object): Mark buried_buffer_list.
19432
19433 * prefix-args.c: Include stdlib.h for exit.
19434
19435 * syssignal.h: Add comment.
19436
19437 * indent.c: Include stdio.h.
19438
19439 * window.h (Vinitial_window_system): Declare.
19440 (Vwindow_system): Delete declaration.
19441
19442 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19443
19444 * image.c (lookup_image): Don't initialize `c' until the xasserts
19445 have been run.
19446
19447 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19448 FRAME_FOREGROUND_PIXEL.
19449
19450 * print.c (print_preprocess): Don't lose print_depth levels while
19451 iterating.
19452
19453 * widget.c (update_from_various_frame_slots):
19454 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19455
19456 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19457 frames.
19458 (window_internal_height): Remove bogus make_number call.
19459 (init_window_once): Call make_terminal_frame with two zero parameters.
19460
19461 * fileio.c (Fread_file_name): Update comment.
19462
19463 * callint.c (Fcall_interactively):
19464 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19465 Make sure it is correctly unwound.
19466
19467 * xsmfns.c (x_session_close): New function.
19468
19469 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19470 Delete declarations.
19471
19472 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19473 (x_output): Remove background_pixel and foreground_pixel fields.
19474 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19475 (x_delete_device, x_session_close): Declare.
19476
19477 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19478 (read_filtered_event): Call `read_char' with a local
19479 `wrong_kboard_jmpbuf'.
19480
19481 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19482 Don't call single_kboard_state. Use FRAME_RIF.
19483
19484 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19485 systems.
19486
19487 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19488 (Fframe_with_environment, Fset_input_meta_mode)
19489 (Fset_quit_char): EXFUN.
19490 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19491 (init_sys_modes, reset_sys_modes): Update prototypes.
19492 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19493
19494 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19495 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19496 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19497 Delete declarations.
19498 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19499 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19500 New declarations.
19501
19502 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19503 already does that during init_display(). Call syms_of_keymap
19504 before syms_of_keyboard. Call `syms_of_terminal'.
19505 Call set_initial_environment, not set_process_environment.
19506 (shut_down_emacs): Call reset_all_sys_modes() instead of
19507 reset_sys_modes().
19508
19509 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19510 (internal_resolve_face_name, resolve_face_name_error): New functions.
19511 (resolve_face_name): Protect against loops and errors thrown by Fget.
19512 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19513 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19514
19515 * scroll.c: Replace CURTTY() with local variables throughout the
19516 file (where applicable).
19517 (calculate_scrolling, calculate_direct_scrolling)
19518 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19519 characteristics.
19520
19521 * keymap.c (Vfunction_key_map): Remove.
19522 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19523 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19524 (Vkey_translation_map): Remove.
19525 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19526 (Fdescribe_buffer_bindings)
19527 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19528 Update for terminal-local key-translation-map.
19529
19530 * Makefile.in (callproc.o): Update dependencies.
19531 (lisp, shortlisp): Add termdev.elc.
19532 (obj): Add terminal.o.
19533 (terminal.o): Add dependencies.
19534 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19535 (data.o, fns.o): Add termhooks.h dependency.
19536 (SOME_MACHINE_LISP): Add dnd.elc.
19537 (minibuf.o): Fix typo.
19538 Update dependencies.
19539
19540 * data.c (do_symval_forwarding, store_symval_forwarding)
19541 (find_symbol_value): Use the selected frame's keyboard, not
19542 current_kboard.
19543
19544 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19545 Vwindow_system.
19546
19547 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19548 Fmenu_bar_open.
19549 (syms_of_xmenu): Update defsubr.
19550 (mouse_position_for_popup, Fx_popup_menu)
19551 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19552 (set_frame_menubar, free_frame_menubar)
b97439ce 19553 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19554 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19555 an X frame.
19556
19557 * xselect.c (x_own_selection): Abort if not an X frame.
19558 (some_frame_on_display): Check if it is an X frame.
19559 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19560
19561 * coding.c: Include frame.h and termhooks.h.
19562 (terminal_coding, keyboard_coding): Delete.
19563 (Fset_terminal_coding_system_internal)
19564 (Fset_keyboard_coding_system_internal)
19565 (Fkeyboard_coding_system)
19566 (Fterminal_coding_system): Add a terminal parameter.
19567 Get terminal_coding from the terminal.
19568 (init_coding_once): Don't call setup_coding_system here.
19569
19570 * dispextern.h (set_scroll_region, turn_off_insert)
19571 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19572 (tty_clear_end_of_line, tty_setup_colors)
19573 (delete_tty, updating_frame)
19574 (produce_special_glyphs, produce_glyphs, write_glyphs)
19575 (insert_glyphs): Remove.
19576 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19577 (tty_turn_off_highlight, get_tty_size): Add declaration.
19578 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19579
19580 * frame.h (enum output_method): Add output_initial.
19581 (struct x_output): Delete.
19582 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19583 Access foreground_pixel and background_pixel directly from the frame.
19584 (tty_display): Delete.
19585 (struct frame): Add buried_buffer_list, foreground_pixel,
19586 background_pixel and terminal. Delete kboard.
19587 (union output_data): Add tty.
19588 (FRAME_KBOARD): Get the kboard from the terminal.
19589 (FRAME_INITIAL_P): New macro.
19590 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19591 (Qterm_environment_variable, Qdisplay_environment_variable)
19592 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19593 New declarations.
19594
19595 * termchar.h (tty_output, tty_display_info): New structures.
19596 (tty_list): Declare.
19597 (FRAME_TTY, CURTTY): New macros.
19598 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19599 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19600 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19601 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19602
19603 * callproc.c: Include frame.h and termhooks.h, for terminal
19604 parameters.
19605 (add_env): New function.
19606 (child_setup): Use it.
19607 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19608 (getenv_internal): Fix get_terminal_param call.
19609 (Fgetenv_internal, egetenv): Update doc.
19610 (syms_of_callproc): Initialize Vprocess_environment to nil.
19611 Register and initialize them. Remove obsolete defvars. Update doc
19612 strings.
19613 (child_setup): Handle Vlocal_environment_variables.
19614 (getenv_internal): Add terminal parameter.
19615 Handle Vlocal_environment_variables.
19616 (Fgetenv_internal): Add terminal parameter.
19617 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19618 environment in a frame (not terminal) parameter. Update doc strings.
19619 (set_initial_environment): Rename from set_global_environment.
19620 Store Emacs environment in initial frame parameter.
19621
19622 * xdisp.c (redisplay_internal): Update references to
19623 `previous_terminal_frame'.
19624 (display_mode_line, Fformat_mode_line): Replace calls to
19625 `push_frame_kboard' with `push_kboard'.
19626 (get_glyph_string_clip_rects): Add extra parentheses and
19627 braces to prevent compiler warnings.
19628 (calc_pixel_width_or_height): Add xassert to check that the
19629 frame is alive. Don't call `lookup_image' on a termcap frame.
19630 (message2_nolog, message3_nolog, redisplay_internal)
19631 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19632 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19633 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19634 (Fx_display_pixel_width, Fx_display_pixel_height)
19635 (Fx_display_planes, Fx_display_color_cells)
19636 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19637 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19638 (Fx_display_backing_store, Fx_display_visual_class)
19639 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19640 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19641
19642 * xfns.c (x_set_foreground_color x_set_background_color)
19643 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19644 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19645 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19646 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19647 terminal that is being deleted.
19648 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19649 frame parameter, and make sure it overrides any user-supplied setting.
19650 (Fx_close_connection, Fx_synchronize): Unify argument names with
19651 the rest of the DEFUNs.
19652
19653 * dispnew.c (Fsend_string_to_terminal): Update call to
19654 `get_tty_terminal'.
19655 (Fredraw_frame, Fsend_string_to_terminal)
19656 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19657 FRAME_TERMCAP_P and FRAME_TTY.
19658 (window_change_signal): Don't believe width/height values that are
19659 impossibly small.
19660 (Vinitial_window_system): Rename from Vwindow_system.
19661 (termscript, Wcm, rif): Delete.
19662
19663 * termhooks.h (struct terminal): New struct containing the
19664 previously global text display hooks and new members NAME,
19665 DELETED and PARAM_ALIST.
19666 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19667 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19668 (FRAME_RIF): New macros.
19669 (get_terminal_param, get_device): New declarations.
19670 (termscript): Delete declaration.
19671
19672 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19673 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19674 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19675 FRAME_FOREGROUND_PIXEL.
19676 (x_fully_uncatch_errors): Disable definition.
19677 (x_scroll_bar_expose): Fix reference to foreground pixel.
19678 (XTread_socket): Disable loop on all X displays.
19679 (x_delete_terminal): Don't set terminal->deleted and let
19680 delete_terminal delete the frames on the terminal.
19681 (x_delete_display): Doc update to reflect changes in
19682 delete_terminal.
19683 (x_display_info) <terminal>: Move member earlier in the struct.
19684 (deleting_tty): Remove old variable.
19685 (Fsuspend_tty): Call clear_tty_hooks.
19686 (Fresume_tty, init_tty): Call set_tty_hooks.
19687 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19688 errors on X frames.
19689 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19690 (handle_one_xevent): Initialize `f' to NULL.
19691 (x_delete_terminal, x_create_terminal): New functions.
19692 (XTset_terminal_modes, XTreset_terminal_modes)
19693 (XTread_socket, x_connection_closed, x_term_init)
19694 (x_term_init, x_delete_display): Add terminal parameter.
19695 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19696 X connections.
19697
19698 * frame.c: Include termchar.h.
19699 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19700 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19701 (Qdisplay_environment_variable): New vars.
19702 (Fframep): Deal with output_initial.
19703 (Fframe-live-p): Doc fix.
19704 (Fwindow-system): New function.
19705 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19706 (make_terminal_frame): Don't create frames on a terminal that is
19707 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19708 (store_frame_param): Check for found_for_frame before calling XFRAME.
19709 (Fmake_terminal_frame): Handle NULL tty names correctly.
19710 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19711 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19712 frames to refer to a deleted frame in their 'environment parameter.
19713 (Fframe_with_environment): New function.
19714 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19715 (get_future_frame_param): New function.
19716 (Fmake_terminal_frame): Use it.
19717 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19718
19719 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19720 * sysdep.c (reset_sys_modes): Update for renames.
19721
19722 * keyboard.c (tty_read_avail_input): New function.
19723 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19724 (syms_of_keyboard): Defsubr them.
19725 (Fset_input_meta_mode, Fset_quit_char): New functions.
19726 (Fset_input_mode): Split to above functions.
19727 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19728 parameter. Use it in call to `read_char'.
19729 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19730 Set wrong_kboard_jmpbuf correctly in recursive calls.
19731 Use current_kboard to access Vkeyboard_translate_table.
19732 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19733 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19734 Update longjmp invocations. Remember the original current_kboard,
19735 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19736 changes it. Comment out unnecessary calls to
19737 `record_single_kboard_state' and `any_kboard_state'.
19738 Update recursive calls.
19739 (wrong_kboard_jmpbuf): Remove global variable.
19740 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19741 Handle deleted interrupted_kboards correctly; that is a legal
19742 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19743 and read_char calls. Abort if interrupted_kboard died in read_char.
19744 (any_kboard_state, single_kboard_state)
19745 (push_frame_kboard): Remove function.
19746 (pop_kboard): Switch out of single_kboard mode if the kboard has
19747 been deleted. Remove unused variable. Help debugging by not
19748 changing current_kboard unnecessarily. Set current_kboard to the
19749 kboard of the selected frame when the stored kboard object has
19750 been deleted before pop_kboard.
19751 (temporarily_switch_to_single_kboard): Change first parameter to a
19752 frame pointer. Throw an error when caller wants to change kboards
19753 while in single_kboard mode. Don't push_kboard if we weren't in
19754 single kboard state. Don't pop_kboard if we popped into any
19755 kboard state.
19756 (restore_kboard_configuration): Abort if pop_kboard changed the
19757 kboard in single_kboard mode. Call pop_kboard only after setting
19758 up single_kboard mode.
19759 (Frecursive_edit): Switch to single_kboard mode only in nested
19760 command loops.
19761 (cmd_error, command_loop, command_loop_1, timer_check):
19762 Comment out unnecessary call to `any_kboard_state' and
19763 `record_single_kboard_state'.
19764 (delete_kboard): Exit single_kboard mode if we have just deleted
19765 that kboard. Use FRAME_KBOARD.
19766 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19767 `fatal_error_signal'.
19768 (record_single_kboard_state): Don't push_kboard if we weren't in
19769 single kboard state. Don't pop_kboard if we popped into any
19770 kboard state.
19771 (push_frame_kboard): Rename to push_kboard.
19772 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19773 (read_avail_input): Read input from all terminals.
19774 (mark_kboards): Also mark Vkeyboard_translate_table.
19775 (kbd_buffer_store_event_hold): Simplify condition.
19776 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19777 (Vkeyboard_translate_table): Move to struct kboard.
19778 (init_kboard): Initialize Vkeyboard_translate_table.
19779 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19780 Vkeyboard_translate_table. Update doc strings. Update docs of
19781 local-function-key-map and function-key-map.
19782
19783 * terminal.c: New file.
19784
19785 * term.c: Include errno.h.
19786 (Vring_bell_function, device_list, initial_device)
19787 (next_device_id, ring_bell, update_begin, update_end)
19788 (set_terminal_window, cursor_to, raw_cursor_to)
19789 (clear_to_end, clear_frame, clear_end_of_line)
19790 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19791 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19792 (syms_of_term): Move their initialization to terminal.c.
19793 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19794 (Ftty_display_color_cells)
19795 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19796 (clear_tty_hooks, set_tty_hooks)
19797 (init_tty, maybe_fatal): New functions.
19798 (Ftty_type): Return nil if terminal is not on a tty instead of
19799 throwing an error. Doc update.
19800 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19801 Doc update. Initialize new subrs and variables.
19802 (delete_tty): Use terminal->deleted.
19803 (tty_set_terminal_modes): Rename from set_terminal_modes.
19804 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19805 (set_scroll_region): Rename to `tty_set_scroll_region'.
19806 (turn_on_insert): Rename to `tty_turn_on_insert'.
19807 (turn_off_insert): Rename to `tty_turn_off_insert'.
19808 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19809 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19810 (toggle_highligh): Rename to `tty_toggle_highlight'.
19811 (background_highlight): Rename to `tty_background_highlight'.
19812 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19813 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19814 (tty_set_scroll_region, tty_background_highlight)
19815 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19816 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19817 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19818 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19819 Add static modifier.
19820 (tty_reset_terminal_modes, tty_set_terminal_window)
19821 (tty_set_scroll_region, tty_background_highlight)
19822 (tty_highlight_if_desired, tty_cursor_to)
19823 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19824 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19825 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19826 renames.
19827
198282007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19829
19830 * keyboard.c: Qrtl is new.
19831 (parse_tool_bar_item): Handle :rtl keyword.
19832 (syms_of_keyboard): Intern :rtl keyword.
19833
19834 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19835
19836 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19837 so no Lisp code is executed.
19838 (file_for_image, find_rtl_image): New functions.
19839 (xg_get_image_for_pixmap): Use file_for_image.
19840 (update_frame_tool_bar): If direction is RTL, use RTL image if
19841 defined. Use Gtk stock images if defined.
19842
198432007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19844
19845 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19846 for nonexistent or zero-width glyph in composition glyph.
19847
198482007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19849
19850 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19851
19852 * xdisp.c (Finvisible_p): New function.
19853 (syms_of_xdisp): defsubr it.
19854
198552007-08-24 Juanma Barranquero <lekktu@gmail.com>
19856
19857 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19858 Doc fixes.
19859
198602007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19861
19862 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19863
198642007-08-24 Martin Rudalics <rudalics@gmx.at>
19865
19866 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19867 whether decoding has modified buffer contents.
19868
198692007-08-24 Jason Rumney <jasonr@gnu.org>
19870
19871 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19872 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19873 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19874 (init_svg_functions) [HAVE_NTGUI]: New function.
19875 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19876 (svg_load_image): Use them.
19877 (svg_load_image) [HAVE_NTGUI]: Implement background.
19878
198792007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19880
19881 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19882 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19883 (LIBX): Remove @RSVG_LIBS@.
19884 (LIBES): Add $(RSVG_LIBS).
19885
19886 * image.c (svg_load_image): Blend with specified background if exists.
19887 Use IMAGE_BACKGROUND. Add Mac OS Support.
19888
19889 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19890 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19891 Remove macros.
19892 [MAC_OSX] (socket_callback): Do nothing.
19893 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19894 ReceiveNextEvent.
19895 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19896 socket_callback.
19897 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19898
198992007-08-22 Glenn Morris <rgm@gnu.org>
19900
19901 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19902
199032007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19904
19905 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19906
19907 * image.c: Add support for SVG images. Some additional comments
19908 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19909 (svg_image_p): New function to test for SVG image.
19910 (svg_load): New function to load SVG image.
19911 (svg_load_image): New function, helper for svg_load.
19912 (Qsvg): New Lisp_object.
19913 (svg_keyword_index): New enum.
19914 (svg_format): New static `image_keyword' struct.
19915 (svg_type): New static `image_type' struct.
19916 (librsvg/rsvg.h): Include it.
19917
199182007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19919
19920 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19921
199222007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19923
19924 * lread.c (Qold_style_backquotes): New var.
19925 (syms_of_lread): Init and staticpro it.
19926 (load_warn_old_style_backquotes): New fun.
19927 (Fload): Use them to warn about old style backquotes.
19928 (end_of_file_error, Fload): Remove unused vars.
19929
19930 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19931
19932 * lread.c (Vold_style_backquotes): New var.
19933 (syms_of_lread): Init and export it to Elisp.
19934 (read1): Set it when we find an old-style (back)quote.
19935
199362007-08-22 Jason Rumney <jasonr@gnu.org>
19937
19938 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19939
199402007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19941
19942 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19943
199442007-08-19 Richard Stallman <rms@gnu.org>
19945
19946 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19947
199482007-08-19 Andreas Schwab <schwab@suse.de>
19949
19950 * alloc.c (pure): Round PURESIZE up.
19951
199522007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19953
19954 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19955 active frame.
19956
199572007-08-16 Richard Stallman <rms@gnu.org>
19958
19959 * eval.c (Fcommandp): Add parens to clarify.
19960
19961 * minibuf.c (Fall_completions): Use enum for type of table.
19962
19963 * emacs.c (USAGE2): Improve text.
19964
199652007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19966
19967 * term.c (tty_default_color_capabilities): Declare static
19968 variables in file scope, to avoid HPUX compiler problem.
19969
199702007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19971
19972 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19973 to gtk_toolbar_insert.
19974
199752007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19976
19977 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19978
19979 * insdel.c (reset_var_on_error): New fun.
19980 (signal_before_change, signal_after_change):
19981 Use it to reset (after|before)-change-functions to nil in case of error.
19982 Bind inhibit-modification-hooks to t.
19983 Don't bind (after|before)-change-functions to nil while they run.
19984
199852007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19986
19987 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19988 filling pixmap with stippled background.
19989
199902007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19991
19992 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19993 Don't use invisible frame as parent window for repositioning.
19994
199952007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19996
19997 * print.c (new_backquote_output): Rename from old_backquote_output.
19998 (print): Inverse its logic (according to its name) so as to match the
19999 behavior of new_backquote_flag in lread.c.
20000
200012007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20002
20003 * gmalloc.c (posix_memalign): New function.
20004
20005 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20006 ActivateControl/DeactivateControl here.
20007 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20008 frame-notice-user-settings is non-nil.
20009 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20010 for kEventParamFMFontStyle.
20011 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20012 mac_pass_command_to_system and mac_pass_control_to_system here.
20013 (XTread_socket): Call ActivateControl/DeactivateControl here.
20014 (XTread_socket) [TARGET_API_MAC_CARBON]:
20015 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20016 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20017 for window repositioning.
20018
200192007-08-08 Glenn Morris <rgm@gnu.org>
20020
20021 * Replace `iff' in doc-strings and comments.
20022
200232007-08-07 Chong Yidong <cyd@stupidchicken.com>
20024
20025 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20026
200272007-08-07 Martin Rudalics <rudalics@gmx.at>
20028
20029 * fileio.c (Finsert_file_contents): Run format-decode and
20030 after_insert_file_functions on entire buffer when REPLACE is
20031 non-nil and inhibit modification_hooks and point_motion_hooks.
20032 For consistency, run after_insert_file_functions iff something
20033 got inserted. Move signal_after_change and update_compositions
20034 after code running after_insert_file_functions. Make sure that
20035 undo_list doesn't record intermediate steps of the decoding process.
20036
200372007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20038
20039 * emacs.c (main)
20040 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20041 Call malloc_enable_thread on interactive startup.
20042
20043 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20044 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20045 [USE_PTHREAD]: Conditionalize with it.
20046 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20047 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20048 New functions.
20049
200502007-08-06 Chong Yidong <cyd@stupidchicken.com>
20051
20052 * xdisp.c (redisplay_window): When restoring original buffer
20053 position, make sure it is still valid.
20054
20055 * image.c (png_load): Ignore png-supplied background color.
20056
200572007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20058
20059 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20060 Use kCFAbsoluteTimeIntervalSince1970.
20061
20062 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20063 New variable.
20064 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20065 event loop should be quit.
20066 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20067 Quit dialog event loop if quit_dialog_event_loop is set.
20068
20069 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20070 (Selection): New typedef. Use instead of ScrapRef.
20071 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20072 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20073 (mac_clear_selection): Rename from clear_scrap.
20074 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20075 scrap_has_target_type. All uses changed.
20076 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20077 (mac_selection_has_target_p): New functions.
20078 (mac_put_selection_value): Rename from put_scrap_string.
20079 (mac_get_selection_value): Rename from get_scrap_string.
20080 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20081 (put_scrap_private_timestamp, scrap_has_target_type)
20082 (get_scrap_private_timestamp): Remove functions.
20083 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20084 (x_own_selection, x_get_local_selection):
20085 Use mac_valid_selection_value_p.
20086 (x_own_selection): Don't use put_scrap_private_timestamp.
20087 Record OWNERSHIP-INFO into Vselection_alist instead.
20088 (x_get_local_selection): Don't check type if request is local.
20089 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20090 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20091
200922007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20093
20094 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20095 add comment explaining why.
20096
200972007-08-03 Richard Stallman <rms@gnu.org>
20098
20099 * fileio.c (Fvisited_file_modtime): Use make_time.
20100
201012007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20102
20103 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20104 build.
20105
201062007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20107
20108 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20109
201102007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20111
20112 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20113
201142007-07-30 Richard Stallman <rms@gnu.org>
20115
20116 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20117
201182007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20119
20120 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20121
201222007-07-28 Nick Roberts <nickrob@snap.net.nz>
20123
20124 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20125 remote default-directory.
20126
20127 * buffer.c (mode-line-format): Update doc string.
20128
201292007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20130
20131 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20132 scroll bar gap.
20133 (x_scroll_bar_create): Set bar->fringe_extended_p.
20134 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20135 on frame edge. Check fringe background extension. Don't clear
20136 extended fringe background area.
20137
20138 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20139 (w32_fill_area): Enclose multiple statements with do ... while (0).
20140
20141 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20142 Extend fringe background to scroll bar gap.
20143 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20144 Set bar->fringe_extended_p.
20145 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20146 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20147 background extension. Don't clear extended fringe background area.
20148
20149 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20150 New member fringe_extended_p.
20151
201522007-07-25 Glenn Morris <rgm@gnu.org>
20153
20154 * Relicense all FSF files to GPLv3 or later.
20155
20156 * COPYING: Switch to GPLv3.
20157
201582007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20159
20160 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20161
20162 * data.c (Finteractive_form): Check for the presence of an
20163 `interactive-form' symbol property more thoroughly.
20164
20165 * data.c (Finteractive_form): Use an `interactive-form' property if
20166 present, analogous to the function-documentation property.
20167
201682007-07-24 Jason Rumney <jasonr@gnu.org>
20169
20170 * w32fns.c (x_real_positions): Get real position from OS instead of
20171 calculating it.
20172
201732007-07-23 Jason Rumney <jasonr@gnu.org>
20174
20175 * filelock.c (current_lock_owner): Allow for @ sign in username.
20176
201772007-07-22 Nick Roberts <nickrob@snap.net.nz>
20178
20179 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20180 remote default-directory.
20181
20182 * buffer.c (mode-line-format): Describe above case in doc string.
20183
201842007-07-20 Eli Zaretskii <eliz@gnu.org>
20185
20186 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20187 Define if not defined.
20188
201892007-07-18 Jason Rumney <jasonr@gnu.org>
20190
20191 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20192
201932007-07-18 Richard Stallman <rms@gnu.org>
20194
20195 * data.c (Fsetq_default): Doc fix.
20196
20197 * eval.c (Fsetq): Doc fix.
20198
201992007-07-18 Juanma Barranquero <lekktu@gmail.com>
20200
20201 * coding.c (Ffind_operation_coding_system):
20202 * eval.c (For, Fand): Doc fixes.
20203 Reported by Johan Bockgård.
20204
202052007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20206
20207 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20208
20209 * xterm.h: Declare x_ewmh_activate_frame.
20210
20211 * xterm.c (x_ewmh_activate_frame): New function.
20212 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20213
202142007-07-17 Martin Rudalics <rudalics@gmx.at>
20215
20216 * window.c (Fdisplay_buffer): If largest or LRU window is the
20217 only window, split it even if it is not eligible for splitting.
20218 This restores the original behavior broken by the 2007-07-15
20219 change.
20220
202212007-07-17 Glenn Morris <rgm@gnu.org>
20222
20223 * abbrev.c (abbrev_check_chars): New function.
20224 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20225 Call abbrev_check_chars to check abbrev characters are word
20226 constituents. Doc fix.
20227
202282007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20229
20230 * process.c (Fstart_process, Fmake_network_process)
20231 (read_process_output): Fix up last changes.
20232
202332007-07-16 Eli Zaretskii <eliz@gnu.org>
20234
20235 * makefile.w32-in (clean): Don't delete *~.
20236
202372007-07-16 Andreas Schwab <schwab@suse.de>
20238
20239 * window.c (Fdisplay_buffer): Use NILP.
20240 (Fset_window_scroll_bars): Likewise.
20241
202422007-07-15 Martin Rudalics <rudalics@gmx.at>
20243
20244 * window.c (window_min_size_2): New function.
20245 (window_min_size_1, size_window, Fdisplay_buffer)
20246 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20247 windows without mode- or header-lines when window-min-height is
20248 too small.
20249 (size_window): Reset nodelete_p after testing it, following an
20250 earlier note by Kim F. Storm.
20251 (display_buffer): Do not set split_height_threshold to twice the
20252 value of window_min_height to avoid changing the value of a
20253 customizable variable. Rather explicitly check whether the
20254 height of the window that shall be splitted is at least as large
20255 as split_height_threshold.
20256 (Fwindow_full_width_p): New defun.
20257 (syms_of_window): Defsubr it.
20258
20259 * window.h: Add EXFUN for Fwindow_full_width_p.
20260
202612007-07-14 Jason Rumney <jasonr@gnu.org>
20262
20263 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20264
202652007-07-14 Richard Stallman <rms@gnu.org>
20266
20267 * eval.c (maybe_call_debugger): New function.
20268 (find_handler_clause): Use maybe_call_debugger.
20269 Call it when the handler says `debug'.
20270 Eliminate DEBUGGER_VALUE_PTR.
20271 (Fsignal): Eliminate debugger_value.
20272 (Qdebug): New variable.
20273 (syms_of_eval): Initialize it.
20274
202752007-07-14 Juanma Barranquero <lekktu@gmail.com>
20276
20277 * eval.c (Fprogn):
20278 * keyboard.c (Ftrack_mouse):
20279 * print.c (Fwith_output_to_temp_buffer):
20280 * window.c (Fsave_window_excursion): Doc fix.
20281
202822007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20283
20284 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20285
202862007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20287
20288 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20289 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20290 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20291 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20292 Remove unused encoding_carryover.
20293 * process.c: Adjust all functions accordingly.
20294
202952007-07-12 Richard Stallman <rms@gnu.org>
20296
20297 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20298
202992007-07-11 Jason Rumney <jasonr@gnu.org>
20300
20301 * makefile.w32-in (LIBS): Include OLE32.
20302
20303 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20304 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20305
203062007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20307
20308 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20309 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20310 from a Lisp_Object into a bare pointer.
20311 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20312 Adjust the code correspondingly.
20313
20314 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20315
20316 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20317 (term_show_mouse_face): Remove unused var `j'.
20318 (handle_one_term_event): Remove unused vars `i' and `j'.
20319 Don't cast return value of ttyname since it's not necessary.
20320
203212007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20322
20323 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20324 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20325
20326 * fns.c (map_char_table): Use an array of int for `indices' rather than
20327 an array of Lisp_Objects (which are only ever integers anyway).
20328 (Fmap_char_table): Update caller.
20329 * lisp.h: Update prototype.
20330 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20331 * fontset.c (Ffontset_info):
20332 * casetab.c (set_case_table): Update callers.
20333
20334 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20335
20336 * keymap.c (struct accessible_keymaps_data)
20337 (struct where_is_internal_data): New structures.
20338 (accessible_keymaps_1, where_is_internal_1): Use them to change
20339 interface to adhere to the one used by map_keymap.
20340 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20341 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20342
20343 * keymap.h (map_keymap_function_t): More informative prototype.
20344
203452007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20346
20347 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20348 (looking_at_1): Don't change search_regs and last_thing_searched
20349 if `inhibit-changing-match-data' is non-nil.
20350 (string_match_1, search_buffer, set_search_regs): Likewise.
20351 (syms_of_search): Add Lisp level definition for
20352 `inhibit-changing-match-data' and set it to nil.
20353 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20354 start and end of the match, instead of using values in search_regs.
20355
203562007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20357
20358 * minibuf.c (Fcompleting_read): New value `confirm-only'
20359 for `require-match'.
20360
203612007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20362
20363 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20364 part of the 2007-06-27 change to syms_of_fileio.
20365
203662007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20367
20368 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20369 Check WINDOWP before using XWINDOW. Consolidate return statements.
20370
203712007-06-27 Richard Stallman <rms@gnu.org>
20372
20373 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20374
203752007-06-27 Juanma Barranquero <lekktu@gmail.com>
20376
20377 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20378
203792007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20380
20381 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20382 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20383 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20384 (_free_internal, memalign): Use them.
20385 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20386 Initialize to PTHREAD_MUTEX_INITIALIZER.
20387 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20388 (morecore_nolock): Rename from morecore. All uses changed.
20389 Use only nolock versions of internal allocation functions.
20390 (_malloc_internal_nolock, _realloc_internal_nolock)
20391 (_free_internal_nolock): New functions created from
20392 _malloc_internal, _realloc_internal, and _free_internal.
20393 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20394 Copy hook value to automatic variable before its use.
20395 (memalign): Copy hook value to automatic variable before its use.
20396
203972007-06-26 Kenichi Handa <handa@m17n.org>
20398
20399 * coding.c (Ffind_operation_coding_system): Docstring improved.
20400 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20401
204022007-06-25 David Kastrup <dak@gnu.org>
20403
20404 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20405 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20406 cater for additional parameter.
20407
20408 * keymap.h: Adjust number of parameters to `current-active-maps'.
20409
20410 * doc.c (Fsubstitute_command_keys): Adjust call of
20411 `current-active-maps'.
20412
204132007-06-25 David Kastrup <dak@gnu.org>
20414
20415 * callint.c (Fcall_interactively): Make the parsing of interactive
20416 specs somewhat more readable.
20417
204182007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20419
20420 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20421 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20422 if extended background has already been filled.
20423
204242007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20425
20426 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20427 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20428
20429 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20430 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20431 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20432 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20433 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20434 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20435 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20436 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20437 Run timers during dialog popup.
20438 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20439
204402007-06-21 Jason Rumney <jasonr@gnu.org>
20441
20442 * image.c (convert_mono_to_color_image): Swap fore and background.
20443
204442007-06-20 Jason Rumney <jasonr@gnu.org>
20445
20446 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20447 (w32_free_bdf_font): Unmap memory not handle.
20448
204492007-06-20 Sam Steingold <sds@gnu.org>
20450
20451 * gmalloc.c (__morecore): Fix the declaration to comply with the
20452 definition.
20453
204542007-06-20 Juanma Barranquero <lekktu@gmail.com>
20455
20456 * w32term.c (w32_delete_display): Remove leftover declaration.
20457 (w32_define_cursor, w32_initialize): Make static.
20458
20459 * w32.c (_wsa_errlist): Fix typo in error message.
20460 (init_environment): Ignore any environment variable from the
20461 registry having a null value.
20462
204632007-06-20 Glenn Morris <rgm@gnu.org>
20464
20465 * Makefile.in (LIBGIF): Default to -lgif.
20466
204672007-06-17 Jason Rumney <jasonr@gnu.org>
20468
20469 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20470 unicode strings.
20471
204722007-06-16 Juanma Barranquero <lekktu@gmail.com>
20473
20474 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20475 Fix typo in docstring.
20476
204772007-06-16 Eli Zaretskii <eliz@gnu.org>
20478
20479 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20480 and their keybindings.
20481
204822007-06-15 Chong Yidong <cyd@stupidchicken.com>
20483
20484 * composite.c (update_compositions): Fix last fix.
20485
204862007-06-14 Jason Rumney <jasonr@gnu.org>
20487
20488 * w32.c (get_process_times_fn): New function pointer.
20489 (globals_of_w32): Intialize it if present in kernel32.dll.
20490 (w32_get_internal_run_time): New function.
20491
20492 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20493
204942007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20495
20496 * composite.c (update_compositions): Check the validness of
20497 compositions.
20498
204992007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20500
20501 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20502 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20503
20504 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20505 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20506
20507 * macgui.h (USE_MAC_TOOLBAR): New define.
20508
20509 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20510 Return immediately unless popup is activated.
20511
20512 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20513 background to scroll bar gap.
20514 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20515 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20516 scroll bars on frame edge. Check fringe background extension.
20517 Don't clear extended fringe background area.
20518 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20519 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20520 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20521 [USE_MAC_TOOLBAR]: New macros.
20522 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20523 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20524 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20525 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20526 [USE_MAC_TOOLBAR]: New functions.
20527 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20528 manually if previous repositioning has failed.
20529 (mac_handle_keyboard_event): Use precomputed event kind.
20530 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20531 as tool bar item click. Handle mouse movement over tool bar items.
20532
20533 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20534 toolbar_win_gravity.
20535 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20536 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20537 Add externs.
20538
20539 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20540 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20541
205422007-06-14 Chong Yidong <cyd@stupidchicken.com>
20543
20544 * image.c (search_image_cache): Remove unused variable.
20545
205462007-06-13 Chong Yidong <cyd@stupidchicken.com>
20547
20548 * xfns.c, xmenu.c: Link to xaw3d if available.
20549
205502007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20551
20552 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20553 frame_foreground and frame_background.
20554
20555 * image.c (lookup_image): Save frame foreground and background colors.
20556 (search_image_cache): Check if saved and current frame colors match.
20557
205582007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20559
20560 * regex.c (regex_compile): Remove the `regnum' counter.
20561 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20562
205632007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20564
20565 * term.c: Include intervals.h to declare Fget_text_property.
20566
205672007-06-10 Jason Rumney <jasonr@gnu.org>
20568
20569 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20570
205712007-06-08 Juanma Barranquero <lekktu@gmail.com>
20572
20573 * callint.c (Fcall_interactively):
20574 * editfns.c (Fdelete_and_extract_region):
20575 * fileio.c (Fread_file_name):
20576 * fns.c (Fmapconcat):
20577 * keyboard.c (cmd_error_internal):
20578 * keymap.c (Fkey_description):
20579 * lread.c (openp):
20580 * minibuf.c (read_minibuf):
20581 * search.c (wordify):
20582 * sunfns.c (sel_read):
20583 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20584 * xfns.c (x_default_scroll_bar_color_parameter):
20585 * xmenu.c (menu_help_callback):
20586 * xselect.c (Fx_get_atom_name):
20587 * xterm.c (x_term_init): Use empty_unibyte_string.
20588
205892007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20590
20591 * alloc.c (init_strings): Initialize canonical empty strings.
20592 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20593 canonical empty string when the requested size is 0.
20594
20595 * emacs.c (empty_unibyte_string): Rename from empty_string.
20596 (empty_multibyte_string): New canonical empty string.
20597 (syms_of_emacs): Don't initialize empty_string.
20598
20599 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20600 string, if appropriate.
20601 (empty_unibyte_string, empty_multibyte_string): New externs.
20602 (empty_string): Remove extern.
20603
20604 * lread.c (syms_of_lread): Use empty_unibyte_string.
20605
206062007-06-07 Jason Rumney <jasonr@gnu.org>
20607
20608 * s/ms-w32.h: Don't define HAVE_TZNAME.
20609
20610 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20611
206122007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20613
20614 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20615
20616 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20617 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20618
20619 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20620 Don't call next handler.
20621 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20622 Remove argument. Install handler to application.
20623 (set_frame_menubar): Don't change deep_p.
20624 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20625 FRAME_OUTER_TO_INNER_DIFF_Y.
20626 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20627 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20628 [HAVE_DIALOGS]: New macros.
20629 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20630 Use them.
20631 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20632
20633 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20634 init_service_handler. All callers changed. Return OSStatus value.
20635
20636 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20637 All callers changed so as not to call SetPortWindowPort.
20638 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20639 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20640 mac_draw_string_common.
20641 (mac_draw_image_string_qd): Likewise.
20642 (mac_draw_string_common): Use them. Add INLINE.
20643 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20644 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20645 GetGlobalMouse.
20646 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20647 and FRAME_OUTER_TO_INNER_DIFF_Y.
20648 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20649 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20650 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20651 repositioning window to mac_handle_window_event.
20652 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20653 saving window location to mac_handle_window_event
20654 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20655 (install_menu_target_item_handler): Remove argument in extern.
20656 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20657 Also accept command events.
20658 (do_keystroke): New function created from XTread_socket.
20659 (init_command_handler): Remove functions.
20660 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20661 and save window location by kEventWindowShowing and kEventWindowHiding
20662 handlers here. Don't call next handler for window state change and
20663 focus events.
20664 (mac_handle_application_event, mac_handle_keyboard_event)
20665 [TARGET_API_MAC_CARBON]: New functions.
20666 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20667 kEventWindowShowing and kEventWindowHiding events. Move installation
20668 of mouse, font, text input and menu target item handlers to
20669 install_application_handler.
20670 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20671 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20672 New function.
20673 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20674 Register it.
20675 (XTread_socket) [TARGET_API_MAC_CARBON]:
20676 Consolidate SendEventToEventTarget calls.
20677 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20678 Move application activation handler to mac_handle_application_event.
20679 Move keyboard handler to mac_handle_keyboard_event.
20680 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20681 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20682 init_command_handler. Call install_application_handler.
20683
20684 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20685 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20686
206872007-06-07 Glenn Morris <rgm@gnu.org>
20688
20689 * emacs.c (main): Use `emacs-copyright' in --version output.
20690
206912007-06-06 Chong Yidong <cyd@stupidchicken.com>
20692
20693 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20694
206952007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20696
20697 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20698
20699 * macgui.h: Replace WindowPtr with WindowRef.
20700
20701 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20702 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20703 Replace ControlHandle with ControlRef.
20704 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20705
20706 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20707 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20708 Replace ControlHandle with ControlRef.
20709 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20710 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20711
20712 * macterm.h (struct scroll_bar): Rename member control_handle_low
20713 and control_handle_high to control_ref_low and control_ref_high.
20714 All uses changed.
20715 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20716 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20717 respectively. All uses changed.
20718 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20719 (install_window_handler, remove_window_handler): Replace WindowPtr
20720 with WindowRef in externs.
20721
207222007-06-05 Juanma Barranquero <lekktu@gmail.com>
20723
20724 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20725
207262007-06-03 Nick Roberts <nickrob@snap.net.nz>
20727
20728 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20729
20730 * frame.c (Fmouse_position, Fmouse_pixel_position):
20731 Condition on HAVE_GPM too.
20732
20733 * term.c (term_mouse_highlight): Remove unused variables.
20734 (Fterm_open_connection): Set gpm_zerobased to 1.
20735 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20736 Use zero based co-ordinates.
20737 (handle_one_term_event): Report a drag as mouse movement too.
20738
20739 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20740
207412007-06-03 Chong Yidong <cyd@stupidchicken.com>
20742
20743 * image.c (search_image_cache): New function. Require background
20744 color match if background color is unspecified in the image spec.
20745 (uncache_image, lookup_image): Use it.
20746
207472007-06-01 Juanma Barranquero <lekktu@gmail.com>
20748
20749 * window.c (Fshrink_window): Reflow docstring.
20750
207512007-06-02 Chong Yidong <cyd@stupidchicken.com>
20752
20753 * Version 22.1 released.
20754
207552007-06-01 Richard Stallman <rms@gnu.org>
20756
20757 * xfns.c (x_encode_text): Add GCPRO.
20758
207592007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20760
20761 * xfns.c (x_set_name_internal): Save encoded name before
20762 x_encode_text in case string data is relocated.
20763
207642007-05-31 Richard Stallman <rms@gnu.org>
20765
20766 * buffer.c (syms_of_buffer): Doc fix.
20767
207682007-05-30 Nick Roberts <nickrob@snap.net.nz>
20769
20770 * sysdep.c (init_sys_modes): Add rather than replace with
20771 O_NONBLOCK.
20772
20773 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20774 term_mouse_moveto.
20775
20776 * termhooks.h (term_mouse_moveto): New extern.
20777
20778 * term.c (mouse_face_window): Rename...
20779 (Qmouse_face_window): ...to this.
20780 (term_show_mouse_face, term_clear_mouse_face)
20781 (term_mouse_highlight): Use Qmouse_face_window.
20782 (term_mouse_moveto): New function.
20783 (term_mouse_position): Make it work.
20784 (syms_of_term): Uncomment assignment to mouse_position_hook.
20785 Staticpro Qmouse_face_window.
20786
207872007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20788
20789 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20790 around current_column call.
20791
207922007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20793
20794 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20795 * xdisp.c (next_element_from_buffer):
20796 * window.c (delete_window):
20797 * term.c (term_mouse_highlight):
20798 * msdos.c (getdefdir):
20799 * macterm.c (mac_create_bitmap_from_bitmap_data)
20800 (init_font_name_table):
20801 * fns.c (Fsxhash):
20802 * data.c (Fmake_local_variable):
20803 * ccl.c (ccl_driver): Likewise.
20804
208052007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20806
20807 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20808 Call mac_wakeup_from_rne on window size change.
20809
208102007-05-25 Chong Yidong <cyd@stupidchicken.com>
20811
20812 * image.c (uncache_image): Fix typo.
20813
208142007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20815
20816 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20817
208182007-05-22 Richard Stallman <rms@gnu.org>
20819
20820 * xterm.c (x_connection_closed): Remove NO_RETURN.
20821
208222007-05-22 Martin Rudalics <rudalics@gmx.at>
20823
20824 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20825
208262007-05-21 Chong Yidong <cyd@stupidchicken.com>
20827
20828 * image.c (uncache_image): New function.
20829 (Fimage_refresh): New function.
20830
208312007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20832
20833 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20834
208352007-05-20 Nick Roberts <nickrob@snap.net.nz>
20836
20837 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20838 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20839
208402007-05-20 Nick Roberts <nickrob@snap.net.nz>
20841
20842 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20843 conditional on [HAVE_GPM_H].
20844
208452007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20846
20847 * syntax.c (skip_chars): Update syntax-table only after we checked that
20848 the new location is valid.
20849
208502007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20851
20852 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20853 mac_get_window_bounds.
20854
208552007-05-20 Nick Roberts <nickrob@snap.net.nz>
20856
20857 * Makefile.in (LIBGPM): Allow it to be set from configure.
20858 If set then link Emacs with it.
20859
20860 * config.in: Regenerate.
20861
20862 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20863 New externs.
20864
20865 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20866 Include gpm.h.
20867 (handle_one_term_event, term_gpm): New externs.
20868
20869 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20870 and allow it to be interrupted by SIGIO.
20871
20872 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20873 (wait_reading_process_output): Wait on gpm_fd too.
20874 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20875 (add_gpm_wait_descriptor_called_flag): New variable.
20876 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20877
20878 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20879 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20880 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20881 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20882 (make_lispy_event): Add case GPM_CLICK_EVENT.
20883 (read_avail_input): Handle mouse input.
20884
20885 * term.c (write_glyphs_with_face): New function.
20886 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20887 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20888 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20889 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20890 (last_mouse_x, last_mouse_y): New variables.
20891 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20892 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20893 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20894 (Fterm_close_connection): New functions.
20895 (term_init): Initialise mouse_face_window.
20896
208972007-05-19 Chong Yidong <cyd@stupidchicken.com>
20898
20899 * xdisp.c (redisplay_window): If first window line is a
20900 continuation line, recompute the new window start instead of
20901 recentering.
20902
209032007-05-18 Glenn Morris <rgm@gnu.org>
20904
20905 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20906 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20907
209082007-05-17 Glenn Morris <rgm@gnu.org>
20909
20910 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20911
209122007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20913
20914 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20915 dead key repeat and up events.
20916
209172007-05-14 Chong Yidong <cyd@stupidchicken.com>
20918
20919 * image.c (pbm_load): Check image size for monochrome pbm.
20920
209212007-05-13 Chong Yidong <cyd@stupidchicken.com>
20922
20923 * xterm.c (XTread_socket): Revert last change.
20924
209252007-05-12 Chong Yidong <cyd@stupidchicken.com>
20926
20927 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20928
20929 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20930
209312007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20932
20933 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20934 mixup (YAILOM).
20935
209362007-05-07 Andreas Schwab <schwab@suse.de>
20937
20938 * keymap.c (Flookup_key): Fix typo in last change.
20939
209402007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20941
20942 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20943 mapping for unibyte strings.
20944
209452007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20946
20947 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20948 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20949
209502007-04-29 Richard Stallman <rms@gnu.org>
20951
20952 * insdel.c (replace_range): For undo, record insertion first.
20953
209542007-04-29 Andreas Schwab <schwab@suse.de>
20955
20956 * lisp.h (VECSIZE): Use OFFSETOF.
20957
209582007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20959
20960 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20961 disabled lines.
20962
209632007-04-28 Richard Stallman <rms@gnu.org>
20964
20965 * lread.c (read_escape): In a string, \s is always space.
20966
209672007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20968
20969 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20970
20971 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20972 submenu for menu bar items.
20973
20974See ChangeLog.10 for earlier changes.
20975
20976;; Local Variables:
20977;; coding: utf-8
20978;; add-log-time-zone-rule: t
aac0c6e3
MR
20979;; End:
20980
76b6f707 20981 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20982
20983 This file is part of GNU Emacs.
20984
20985 GNU Emacs is free software: you can redistribute it and/or modify
20986 it under the terms of the GNU General Public License as published by
20987 the Free Software Foundation, either version 3 of the License, or
20988 (at your option) any later version.
20989
20990 GNU Emacs is distributed in the hope that it will be useful,
20991 but WITHOUT ANY WARRANTY; without even the implied warranty of
20992 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20993 GNU General Public License for more details.
20994
20995 You should have received a copy of the GNU General Public License
20996 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20997
20998;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40