Fix display of composed characters from L2R scripts in bidi buffers.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
8785b888
EZ
12010-04-23 Eli Zaretskii <eliz@gnu.org>
2
3 * xdisp.c (pop_it): When the stack is popped after displaying
4 from a string, bidi-iterate to exit from the text portion covered
5 by the `display' property or overlay. (Bug#5988, bug#5920)
b893a150
EZ
6 (set_iterator_to_next, next_element_from_composition): Fix display
7 of composed characters from L2R scripts in bidi buffers.
8 (Bug#5977)
8785b888 9
feeb1604
DN
102010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
11
809fcaba
DN
12 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
13 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
14
ed710380
DN
15 Simplify STARTFILES definition.
16 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
17 relying on Makefile.in to define it.
18 * s/cygwin.h (START_FILES): Likewise.
19 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
20
feeb1604
DN
21 Clean up Solaris code.
22 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
23 (LIB_MOTIF): Remove, configure takes care of this.
24 (NOT_USING_MOTIF): Remove, unused.
25 * xrdb.c: Remove #if 0-ed #include.
26 (SYSV): Remove conditional for old SysV.
27 * sysdep.c (closedir): Remove conditional code for Solaris,
28 Solaris has closedir.
29
a0d0b563
JD
302010-04-22 Jan Djärv <jan.h.d@swipnet.se>
31
32 * xsettings.c (read_and_apply_settings): Check if current_font is
33 NULL before strcmp (Bug#6001).
34
56bae7c7
DN
352010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
36
37 Clean up HP-UX files.
38 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
39 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
40 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
41 * s/hpux10-20.h: ... to the only user, here.
42
372b7a95
EZ
432010-04-21 Eli Zaretskii <eliz@gnu.org>
44
45 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
46 use buffer-local values of paragraph-start and paragraph-separate.
47 <paragraph_start_re, paragraph_separate_re>: Rename from
48 fallback_paragraph_start_re and fallback_paragraph_separate_re.
49 (Bug#5992)
50
f904c0f9
JD
512010-04-21 Jan Djärv <jan.h.d@swipnet.se>
52
53 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
54 current_tool_bar_style are new.
55 (store_config_changed_event): Rename from store_font_changed_event.
56 (XSETTINGS_TOOL_BAR_STYLE): New define.
57 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
58 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
59 HAVE_XFT.
60 (something_changedCB): store_font_changed_event is now
61 store_config_changed_event
62 (parse_settings): Rename from parse_xft_settings. Read
63 non-xft xsettings outside #ifdef HAVE_XFT.
64 (read_settings): Renamed from read_xft_settings.
65 (apply_xft_settings): Take current settings as parameter. Do not
66 call read_(xft)_settings.
67 (read_and_apply_settings): New function.
68 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
69 read_and_apply_settings if there are settings to be read.
70 (init_xsettings): Renamed from init_xfd_settings.
71 Call read_and_apply_settings unconditionally.
72 (xsettings_initialize): Call init_xsettings.
73 (Ftool_bar_get_system_style): New function.
74 (syms_of_xsettings): Define Qmonospace_font_name and
75 Qtool_bar_style. Initialize current_tool_bar_style to nil.
76 defsubr Stool_bar_get_system_style. Fprovide on
77 dynamic-setting.
31a01b90 78 Move misplaced HAVE_GCONF
f904c0f9
JD
79
80 * xsettings.h (Ftool_bar_get_system_style): Declare.
81
82 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
83 Qtext, Qboth, Qboth_horiz are new.
84 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
85 Vtool_bar_style, tool_bar_max_label_size.
86
87 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
88
89 * keyboard.c: QClabel is new.
90 (parse_tool_bar_item): Take out QClabel from tool bar items.
91 Try to construct a label if ther is no QClabel.
92 (syms_of_keyboard): Intern :label as QClabel.
93
94 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
95 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
96 New.
97
98 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
99 dynamic-setting.el.
100
101 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
102 (xg_make_tool_item, xg_show_toolbar_item): New function.
103 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
104 Call xg_make_tool_item to make a tool bar item.
105 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
106
107 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
108 into account for toolbars.
109
c632dfda
JD
1102010-04-21 Jan Djärv <jan.h.d@swipnet.se>
111
112 * data.c (make_blv): Declarations before code (Bug#5993).
113
10efe302
GM
1142010-04-21 Glenn Morris <rgm@gnu.org>
115
116 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
117 Define using autoconf, not cpp.
118 (LIBXSM): New variable, set by autoconf.
119 (LIBXT): Use $LIBXSM.
120
4285ac5a
DN
1212010-04-21 Dan Nicolaescu <local_user@dannlt>
122
3ec759e7
DN
123 Remove NOMULTIPLEJOBS, unused.
124 * s/template.h (NOMULTIPLEJOBS):
125 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
126
4285ac5a
DN
127 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
128 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
129 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
130 detects -znocombreloc and passes it to the linker
131 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
132
2807228d
GM
1332010-04-21 Glenn Morris <rgm@gnu.org>
134
135 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
136
574c05e2
KK
1372010-04-21 Karel Klíč <kklic@redhat.com>
138
139 * Makefile.in (LIBSELINUX_LIBS): New.
140 (LIBES): Add $LIBSELINUX_LIBS.
141 * eval.c, lisp.h (call7): New function.
142 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
143 (Ffile_selinux_context, Fset_file_selinux_context):
144 New functions.
145 (Fcopy_file): New parameter preserve-selinux-context.
146 (Frename_file): Preserve selinux context when renaming by copy-file.
147
91eac4bb
JB
1482010-04-21 Juanma Barranquero <lekktu@gmail.com>
149 Eli Zaretskii <eliz@gnu.org>
150
50426a04
JB
151 Don't depend on cm.c or termcap.c on Windows, use stubs.
152 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
153 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
154 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
155 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
156 (sys_tputs, sys_tgetstr): New stubs.
157 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
158 (tputs, tgetstr): New; define to sys_*.
91eac4bb 159
938efb77
JB
1602010-04-20 Juanma Barranquero <lekktu@gmail.com>
161
162 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
163
b4bf28b7
SM
1642010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
165
8b1e1112
SM
166 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
167 Just signal a warning rather than an error when inside a let.
168 (Fmake_variable_frame_local): Add the same test.
169
933ac235
SM
170 * font.c (syms_of_font): Make the style table vars read-only.
171
b4bf28b7
SM
172 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
173 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
174
175 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
176
93d68d0c
EZ
1772010-04-20 Eli Zaretskii <eliz@gnu.org>
178
179 Fix R2L paragraph display on TTY.
180
181 * xdisp.c (unproduce_glyphs): New function.
182 (display_line): Use it when produced glyphs are discarded from R2L
183 glyph rows.
184 (append_composite_glyph): In R2L rows, prepend the glyph rather
185 than appending it.
186
187 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
188 rather than append it. Set up the resolved_level and bidi_type
189 attributes of the appended glyph.
283ccc18
EZ
190 (produce_special_glyphs): Mirror the backslash continuation
191 character in R2L lines.
93d68d0c 192
283ccc18 193 Implement display of R2L paragraphs in GUI sessions.
26cdf528 194
283ccc18
EZ
195 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
196 append_stretch_glyph.
197 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
198 off-by-one error in computing x at end of text in the row.
199 (append_stretch_glyph): In reversed row, prepend the glyph rather
200 than append it. Set resolved_level and bidi_type of the glyph.
201 (extend_face_to_end_of_line): If the row is reversed, prepend a
202 stretch glyph whose width is such that the rightmost glyph will be
203 drawn at the right margin of the window. Fix off-by-one error on
204 TTY frames in testing whether a line needs face extension. Fix
205 face extension at ZV. If this is the last glyph row, use
206 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
207 region face.
208 (set_cursor_from_row, display_line): Use
26cdf528
EZ
209 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
210 row->continuation_lines_width.
283ccc18
EZ
211 (next_element_from_buffer): Don't call bidi_paragraph_init if we
212 are at ZV. Fixes a crash when reseated to ZV by
213 try_window_reusing_current_matrix.
45903529
EZ
214 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
215 which happens with R2L glyph rows. Fixes a crash when inserting a
216 character at end of an R2L line.
283ccc18
EZ
217 (set_cursor_from_row): Don't be fooled by truncated rows: don't
218 treat them as having zero-width characters. Improve comments.
219 Don't reverse pos_before and pos_after for reversed glyph rows.
220 Set cursor.x to negative value when the cursor might be on the
221 left fringe.
222 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
223 left fringe, not the right one.
f951a506
EZ
224 (notice_overwritten_cursor, draw_phys_cursor_glyph)
225 (erase_phys_cursor): For reversed cursor_row, support cursor on
226 the left fringe.
227
283ccc18
EZ
228 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
229 of continuation indicators on the fringes.
230 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
231 left fringe.
232
f951a506
EZ
233 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
234 draw cursor on the left fringe.
235
236 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
237 cursor on the left fringe.
238
f951a506
EZ
239 * dispnew.c (update_text_area): Handle reversed desired rows when
240 the cursor is on the left fringe.
241 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
242 below, not by 0, for when the cursor is on the left fringe.
243
3bb49aaf
JD
2442010-04-20 Jan Djärv <jan.h.d@swipnet.se>
245
246 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
247 widget is a scrollbar.
248
c0be27fd
KH
2492010-04-20 Kenichi Handa <handa@m17n.org>
250
251 * charset.c (char_charset): Consider Vcharset_non_preferred_head
252 only when the arg CHARSET_LIST is nil.
253
ce5b453a
SM
2542010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
255
256 Make variable forwarding explicit rather the using special values.
257 Basically, this makes the structure of buffer-local values and object
258 forwarding explicit in the type of Lisp_Symbols rather than use
259 special Lisp_Objects for that. This tends to lead to slightly more
260 verbose code, but is more C-like, simpler, and makes it easier to make
261 sure we handled all cases, among other things by letting the compiler
262 help us check it.
263 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
264 Removing forwarding objects.
265 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
266 (struct Lisp_Symbol): Make the various forms of variable-forwarding
267 explicit rather than hiding them inside Lisp_Object "values".
268 (XFWDTYPE): New macro.
269 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
270 (XBUFFER_LOCAL_VALUE): Remove.
271 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
272 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
273 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
274 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
275 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
276 Remove the Lisp_Misc_* header.
277 (struct Lisp_Buffer_Local_Value): Redefine.
278 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
279 (struct Lisp_Misc_Any): Add filler to get the right size.
280 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
281 Lisp_Intfwd.
282 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
283 (DEFVAR_KBOARD): Allocate a forwarding object.
284 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
285 (let_shadows_global_binding_p): New function.
286 (union Lisp_Val_Fwd): New type.
287 (make_blv): New function.
288 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
289 (store_symval_forwarding, swap_in_global_binding, Fboundp)
290 (swap_in_symval_forwarding, find_symbol_value, Fset)
291 (let_shadows_buffer_binding_p, set_internal, default_value)
292 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
293 (Fkill_local_variable, Fmake_variable_frame_local)
294 (Flocal_variable_p, Flocal_variable_if_set_p)
295 (Fvariable_binding_locus):
296 * xdisp.c (select_frame_for_redisplay):
297 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
298 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
299 * frame.c (store_frame_param):
300 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
301 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
302 value structure.
303 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
304 (clone_per_buffer_values): Only adjust markers into the current buffer.
305 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
306 (Fbuffer_local_value, set_buffer_internal_1)
307 (swap_out_buffer_local_variables):
308 Adapt to the new symbol value structure.
309 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
310 (defvar_per_buffer): Take a new arg for the fwd object.
311 (buffer_lisp_local_variables): Return a proper alist (different fix
312 for bug#4138).
313 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
314 (Fgarbage_collect): Don't handle buffer_defaults specially.
315 (mark_object): Handle new symbol value structure rather than the old
316 special Lisp_Misc_* objects.
317 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
318 * term.c (set_tty_color_mode):
319 * bidi.c (bidi_initialize): Don't access the ->value field directly.
320 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
321 a buffer_local_flags.
322 * print.c (print_object): Get rid of impossible forwarding objects.
323
fd3998ff
EZ
3242010-04-19 Eli Zaretskii <eliz@gnu.org>
325
326 * bidi.c (bidi_get_type, bidi_get_category)
327 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
328 (bidi_type_of_next_char, bidi_level_of_next_char):
329 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 330
e42cd1a7
JB
3312010-04-19 Juanma Barranquero <lekktu@gmail.com>
332
333 * dired.c (Ffile_attributes): Fix typo in docstring.
334
6e104790 3352010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
336
337 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
338 NSInteger (Bug#5811).
339
6e104790 3402010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
341
342 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
343 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
344
6e104790 3452010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
346
347 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
348
6e104790
SM
3492010-04-19 Chong Yidong <cyd@stupidchicken.com>
350
351 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
352 terminal frames (Bug#5837).
353
37dcfea0
EZ
3542010-04-19 Eli Zaretskii <eliz@gnu.org>
355
d1da276f
EZ
356 * .gdbinit (xsubchartable): New command.
357
37dcfea0
EZ
3582010-04-19 Eli Zaretskii <eliz@gnu.org>
359
360 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 361 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
362 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
363 and
364 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
365
e9515805
SM
3662010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
367
368 * alloc.c (Fpurecopy): Hash-cons if requested.
369 (syms_of_alloc): Update purify-flag docstring.
370
22aa44a8
JD
3712010-04-18 Jan Djärv <jan.h.d@swipnet.se>
372
373 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
374 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
375
ebb5722e
EZ
3762010-04-17 Eli Zaretskii <eliz@gnu.org>
377
378 Fix a crash when an NSM character is inserted at BEGV.
379
380 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
381 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
382 NEUTRAL_B or UNKNOWN_BT.
383
0f4442ef
EZ
3842010-04-16 Eli Zaretskii <eliz@gnu.org>
385
386 * xdisp.c (set_cursor_from_row): Don't consider possibility of
387 other rows with cursor unless they are different from this row and
388 this row is part of a continued line. (Bug#5943)
389
7d4e45f8
DN
3902010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
391
392 * s/freebsd.h: Restore osreldate.h include.
393 Suggested by Naohiro Aota.
394
5ba5ec85
J
3952010-04-16 Jan Djärv <jan.h.d@swipnet.se>
396
397 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
398
20af301d
CY
3992010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
400
401 * s/cygwin.h: Avoid linking against static libgcc.
402
a4b000fb
JL
4032010-04-15 Juri Linkov <juri@jurta.org>
404
405 * window.c: Add Qscroll_command.
406 Remove Vscroll_preserve_screen_position_commands.
407 (window_scroll_pixel_based, window_scroll_line_based): Check the
408 `scroll-command' property on the last command instead of searching
409 the last command in Vscroll_preserve_screen_position_commands.
410 (syms_of_window): Initialize and staticpro `Qscroll_command'.
411 Put Qscroll_command property on Qscroll_up and Qscroll_down.
412 (scroll-preserve-screen-position): Doc fix.
413 (Vscroll_preserve_screen_position_commands): Remove variable.
414
bc319ba4
DN
4152010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
416
6bb24457
DN
417 * xdisp.c (message): Do not use NO_ARG_ARRAY.
418
19d4c244
DN
4192010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
420
421 Reduce cpp use in Makefile.in.
422 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
423 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
424 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
425 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
426 (CRT0_COMPILE): Remove, inline it in the only user.
427
32129746
JL
4282010-04-14 Juri Linkov <juri@jurta.org>
429
430 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
431 `scroll-up-command' and `M-v' from `scroll-down' to
432 `scroll-down-command'.
433
9013a7f8
JL
4342010-04-14 Juri Linkov <juri@jurta.org>
435
436 * window.c (Vscroll_preserve_screen_position_commands): New variable
437 with the default value as the list of Qscroll_down and Qscroll_up.
438 (window_scroll_pixel_based, window_scroll_line_based): Search the
439 last command in the list Vscroll_preserve_screen_position_commands
440 instead of comparing with Qscroll_up and Qscroll_down.
441
4bef8d26
JD
4422010-04-13 Jan Djärv <jan.h.d@swipnet.se>
443
92848133
JD
444 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
445 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
446 does that.
447
4bef8d26
JD
448 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
449 to zero.
450
58b963f7
SM
4512010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
452
84164a0d
SM
453 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
454
2b0a91e7
SM
455 Try to solve the problem of spurious EOF chars in long lines of text
456 sent to interactive subprocesses.
457 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
458 (system_process_attributes): Remove unused var `ttotal'.
459 * process.c (send_process): Don't bother breaking long line with EOF
460 chars when talking to ttys any more.
461 (wait_reading_process_output): Output a warning when called in such
462 a way that it could block without being interruptible.
463
58b963f7
SM
464 Try to detect file modification within the same second.
465 * buffer.h (struct buffer): New field modtime_size.
466 * buffer.c (reset_buffer): Initialize it.
467 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
468 (Fverify_visited_file_modtime): Check it.
469 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
470 (Fset_visited_file_modtime): Set (or clear) it.
471
01f5787b
SM
4722010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
473
474 * process.c (status_notify): Remove unused var `ro'.
475
83725342
JD
4762010-04-12 Jan Djärv <jan.h.d@swipnet.se>
477
478 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
479 more than one visual (Bug#5938).
480
b9465836
DN
4812010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
482
50426a04
JB
483 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
484 Undefine.
b9465836 485
8d9c8ece
DN
4862010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
487
b1f52161
DN
488 Remove C_SWITCH_SYSTEM_TEMACS.
489 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
490 (malloc, realloc, free): Use emacs, not temacs for conditional
491 definition.
492
493 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
494 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
495
8d9c8ece
DN
496 Use autoconf, not cpp for some variables.
497 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
498 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
499 (ALL_CFLAGS): Use them as make variables.
500 (really-lwlib, really-oldXMenu): Do not pass them.
501
1ecb2d3f
JD
5022010-04-11 Jan Djärv <jan.h.d@swipnet.se>
503
504 * xmenu.c (apply_systemfont_to_dialog): New.
505 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
506
3a4fa2f2
SM
5072010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
508
97e53006
SM
509 * process.c (exec_sentinel): Preserve current-buffer.
510
3a4fa2f2
SM
511 * process.c (read_process_output): Move the save-current-buffer to
512 apply to both the filter and the non-filter branches.
513
88df7221
DN
5142010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
515
516 * s/msdos.h (UNEXEC): New definition.
517
5634ff85
YM
5182010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
519
6eff5c3d
YM
520 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
521 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
522
523 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
524 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
525 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
526 TRY_WINDOW_CHECK_MARGINS.
527
528 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
529 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
530 width only when it is for padding.
5634ff85 531
b13aef54
J
5322010-04-09 Jan Djärv <jan.h.d@swipnet.se>
533
534 * xfns.c (Fx_show_tip): Call try_window in a loop until
535 fonts_changed_p is zero (Bug#2423).
536
21d28484
EZ
5372010-04-08 Eli Zaretskii <eliz@gnu.org>
538
539 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
540 the end of TEXT_AREA. (Bug#5856)
541
0269ef77
JD
5422010-04-08 Jan Djärv <jan.h.d@swipnet.se>
543
544 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
545 HAVE_GCONF.
546
5930fe97
EZ
5472010-04-08 Eli Zaretskii <eliz@gnu.org>
548
549 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
550 prev.orig_type, for resolving type of NSM. (Bug#5858)
551
99852628
JD
5522010-04-08 Jan Djärv <jan.h.d@swipnet.se>
553
554 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
555 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
556 in current_font.
557 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
558 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
559 New functions.
560 (syms_of_xsettings): Initialize current_font.
561 defsubr Sfont_get_system_normal_font.
99852628
JD
562
563 * xsettings.h (Ffont_get_system_normal_font,
564 xsettings_get_system_normal_font): Declare.
565
566 * xfns.c (extern xlwmenu_default_font): Remove.
567 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
568 to xlwmenu.c.
569
570 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
571 menu items in UTF-8.
572
573 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
574 (apply_systemfont_to_menu): New function.
575 (set_frame_menubar, create_and_show_popup_menu): Call
576 apply_systemfont_to_menu.
577
7fc874c4
J
5782010-04-07 Jan Djärv <jan.h.d@swipnet.se>
579
580 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
581 FRAME_LINE_TO_PIXEL_Y.
582
583 * xterm.c (x_set_window_size_1): Don't add border_width/height to
584 pixelwidth/height.
585
863bf481
DN
5862010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
587
5e5a3b92
DN
588 Simplify code for HP machines.
589 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
590 for GNU_LINUX, not needed.
591 (UNEXEC, NEED_BSDTTY): Move definitions...
592 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
593
863bf481
DN
594 * m/iris4d.h (UNEXEC): Move definition ...
595 * s/irix6-5.h (UNEXEC): ... here.
596
3e6bec3b
JD
5972010-04-04 Jan Djärv <jan.h.d@swipnet.se>
598
599 * xfns.c (set_machine_and_pid_properties): New function.
600 (Fx_create_frame): Call set_machine_and_pid_properties.
601
2912322b
SM
6022010-04-03 Eli Zaretskii <eliz@gnu.org>
603
1502b819
EZ
604 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
605 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
606 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
607
2912322b
SM
608 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
609 in this function. (Bug#5703)
610
6112010-04-03 Chong Yidong <cyd@stupidchicken.com>
612
613 * nsterm.h: Fix last change.
614
c435b432
DN
6152010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
616
a568f507
DN
617 * m/intel386.h (NO_REMAP): Move definition ...
618 * s/msdos.h (NO_REMAP): ... here.
619
4cd9f6c2
DN
620 * m/vax.h (CRT0_DUMMIES): Remove, unused.
621
c435b432
DN
622 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
623 used on those platforms.
624
42a2c622
DN
6252010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
626
627 Remove extern errno declarations.
628 * xterm.c:
629 * xrdb.c:
630 * w32term.c:
631 * unexec.c:
632 * unexaix.c:
633 * sysdep.c:
634 * process.c:
635 * lread.c:
636 * keyboard.c:
637 * floatfns.c:
638 * filelock.c:
639 * fileio.c:
640 * emacs.c (main):
641 * ecrt0.c:
642 * dispnew.c:
643 * callproc.c:
644 * buffer.c: Remove errno extern declarations.
645 * s/netbsd.h (NEED_ERRNO): Remove.
646
8224f93d
DN
6472010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
648
649 Remove all uses of LIBX11_SYSTEM.
650 * Makefile.in (LIBX11_SYSTEM): Remove.
651 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
652 instead.
653
814062c7
EZ
6542010-04-01 Eli Zaretskii <eliz@gnu.org>
655
ed68db4d
EZ
656 Remove support for DJGPP v1.x (bug#5813).
657
658 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
659 * s/msdos.h:
660 * unexec.c (make_hdr, copy_text_and_data):
661 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 662 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
663 (IT_set_terminal_modes, __write, _rename, gethostname)
664 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
665 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
666 the value of __DJGPP__.
ed68db4d
EZ
667 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
668 compatibility code.
8224f93d
DN
669 * lread.c:
670 * gmalloc.c (memalign):
671 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
672 * emacs.c (main):
673 * dosfns.c (init_dosfns):
ed68db4d
EZ
674 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
675
52f4d8d5
EZ
6762010-04-01 Eli Zaretskii <eliz@gnu.org>
677
814062c7
EZ
678 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
679 string with `cursor' property comes from an `after-string'
680 overlay. (Bug#5816)
681
0dc2e11d
GM
6822010-04-01 Glenn Morris <rgm@gnu.org>
683
684 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
685 Define as Makefile variables.
686 (LIBX): Use above variables rather than directly using autoconf.
687
1d29df59
DN
6882010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
689
690 Clean up BSD_SYSTEM use.
691 * xterm.c:
692 * process.c:
693 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
694 for including <sys/ioctl.h>.
695 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
696 code is only used for MSDOS.
697
1546c559
JL
6982010-03-31 Juri Linkov <juri@jurta.org>
699
700 * image.c: Add `Qextension_data'.
701 (syms_of_image): Initialize and staticpro `Qextension_data'.
702 (Fimage_metadata): Rename from `Fimage_extension_data'.
703 (gif_load): Put GIF extension data to the property
704 `Qextension_data'.
705
b8a1d5a1
CY
7062010-04-05 Chong Yidong <cyd@stupidchicken.com>
707
708 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
709 terminal frames (Bug#5837).
710
6521c534
CY
7112010-03-31 Chong Yidong <cyd@stupidchicken.com>
712
713 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
714 * nsterm.h: Fix prototype.
715
52c30783
EZ
7162010-03-31 Eli Zaretskii <eliz@gnu.org>
717
718 * xdisp.c (highlight_trailing_whitespace): Support highlight of
719 trailing whitespace in right-to-left rows.
720
855a0da7
SM
7212010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
722
723 Get rid of the direct_output optimizations.
724 * keyboard.c (nonundocount): Remove extern declaration.
725 (command_loop_1): Remove brittle optimisation for cheap and
726 common operations.
727 * xdisp.c (redisplay_internal): Don't bother checking
728 redisplay_performed_directly_p any more.
729 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
730 any more.
731 * dispnew.c (redisplay_performed_directly_p)
732 (direct_output_for_insert, direct_output_forward_char):
733 * dispextern.h (redisplay_performed_directly_p)
734 (direct_output_for_insert, direct_output_forward_char): Remove.
735 * cmds.c (nonundocount): Make it static.
736
85738751 7372010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
738
739 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
740
85738751 7412010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
742
743 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
744 invisible (Bug#5766).
745
85738751 7462010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 747
855a0da7
SM
748 * xdisp.c (x_consider_frame_title, update_window_cursor):
749 Remove HAVE_NS conditionals.
194d44e7 750 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
751
752 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
753 filename for the title.
754 (ns_set_doc_edited): Do nothing if the selected window is a
755 minibuffer window.
756
757 * nsterm.h: Add prototypes for ns_set_name_as_filename and
758 ns_set_doc_edited.
759
760 * nsterm.m: Remove unneeded prototype.
761
85738751 7622010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
763
764 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
765 in the DOC file. (Bug#5336)
766
85738751 7672010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
768
769 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
770
75d1428c
SM
7712010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
772
773 * window.c (keys_of_window): Remove redundant/overridden bindings.
774
82043cfb
EZ
7752010-03-30 Eli Zaretskii <eliz@gnu.org>
776
777 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
778 Restore original behavior when the iterator is not bidi_p.
779
b5dd0ae7
DN
7802010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
781
782 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
783
bd924a5d
EZ
7842010-03-30 Eli Zaretskii <eliz@gnu.org>
785
786 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
787 are outside the range of cached character positions.
788
3580374b
JB
7892010-03-30 Juanma Barranquero <lekktu@gmail.com>
790
791 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
792
a7b02820
EZ
7932010-03-30 Eli Zaretskii <eliz@gnu.org>
794
795 Initial support for bidirectional editing.
796
797 * Makefile.in (obj): Include bidi.o.
798 (bidi.o): New target.
799
800 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
801 ($(BLD)/bidi.$(O)): New target.
802
803 * bidi.c: New file.
804
805 * buffer.h (struct buffer): New members bidi_display_reordering
806 and bidi_paragraph_direction.
807
808 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
809 and bidi_paragraph_direction.
810 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
811 and bidi-paragraph-direction.
812 (Fbuffer_swap_text): Swap the values of
813 bidi_display_reordering and bidi_paragraph_direction.
814
815 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
816 (bidi_type_t, bidi_dir_t): New types.
817 (bidi_saved_info, bidi_stack, bidi_it): New structures.
818 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
819 prev_stop, base_level_stop, and eol_pos.
820 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
821 (IT_STACK_SIZE): Enlarge to 5.
822 (struct glyph_row): New member reversed_p.
823 <string_buffer_position>: Update prototype.
824 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
825 glyph_row if bidi_it.paragraph_dir == R2L.
826 (struct glyph): New members resolved_level and bidi_type.
827
828 * dispnew.c (direct_output_forward_char): Give up if we need bidi
829 processing or buffer's direction is right-to-left.
830 (prepare_desired_row): Preserve the reversed_p flag.
831 (row_equal_p): Compare the reversed_p attributes as well.
832
833 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
834 bidi_init_it and set it->paragraph_embedding from the current
835 buffer's value of bidi_paragraph_direction.
836 (reseat_1): Initialize bidi_it.first_elt.
837 (set_iterator_to_next, next_element_from_buffer): Use the value of
838 paragraph_embedding to determine the paragraph direction.
839 (set_iterator_to_next): Under bidi reordering, call
840 bidi_get_next_char_visually. Call bidi_paragraph_init if the
841 new_paragraph flag is set in the bidi iterator.
842 (next_element_from_buffer): If bidi_it.first_elt is set,
843 initialize paragraph direction and find the first character to
844 display in the visual order. If reseated to a middle of a line,
845 prime the bidi iterator starting at the line's beginning. Handle
846 the situation where we overstepped stop_charpos due to
847 non-linearity of the bidi iteration. Likewise for when we back up
848 beyond the previous stop_charpos. When moving across stop_charpos,
849 record it in prev_stop.
850 (display_line): Set row->end and it->start for the next row to the
851 next character in logical order. Always extend reversed_p rows to
852 the end of line, even if they end at ZV. Copy the reversed_p flag
853 to the next glyph row. Keep calling set_cursor_from_row for
854 bidi-reordered rows even if we already have a possible candidate
855 for cursor position. Set row_end after all the row's glyphs have
856 been produced, by looping over the glyphs. Record the position
857 after EOL in it->eol_pos, and use it to set end_pos of the last
858 row produced for a continued line.
859 <Qright_to_left, Qleft_to_right>: New variables.
860 (syms_of_xdisp): Initialize and staticpro them.
861 (string_buffer_position_lim): New function.
862 (string_buffer_position): Most of code moved to
863 string_buffer_position_lim. Last argument and return value are
864 now EMACS_INT; all callers changed.
865 (set_cursor_from_row): Rewritten to support bidirectional text and
866 reversed glyph rows.
867 (text_outside_line_unchanged_p, try_window_id): Disable
868 optimizations if we are reordering bidirectional text and the
869 paragraph direction can be affected by the change.
870 (append_glyph, append_composite_glyph)
871 (produce_image_glyph, append_stretch_glyph): Set the
872 resolved_level and bidi_type members of each glyph.
873 (append_glyph): If the glyph row is reversed, prepend the glyph
874 rather than appending it.
875 (handle_stop_backwards): New function.
876 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
877 (reseat): call handle_stop_backwards to recompute prev_stop and
878 base_level_stop for the new position.
879 (handle_invisible_prop): Under bidi iteration, skip invisible text
880 using bidi_get_next_char_visually. If we are `reseat'ed, init the
881 paragraph direction. Update IT->prev_stop after skipping
882 invisible text.
883 (move_it_in_display_line_to): New variables prev_method
884 and prev_pos. Compare for strict equality in
885 BUFFER_POS_REACHED_P.
886 (try_cursor_movement): Examine all the candidate rows that occlude
887 point, to return the best match. If rows are bidi-reordered
888 and point moved backwards, back up to the row that is not a
889 continuation line, and start looking for a suitable row from
890 there.
891
892 * term.c (append_glyph): Reverse glyphs by pre-pending them,
893 rather than appending, if the glyph_row's reversed_p flag is set.
894 Set the resolved_level and bidi_type members of each glyph.
895
896 * .gdbinit (pbiditype): New command.
897 (pgx): Use it to display bidi level and type of the glyph.
898 (pitx): Display some bidi information about the iterator.
899 (prowlims, pmtxrows): New commands.
900
32a8894e
DN
9012010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
902
903 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
904 * s/usg5-4.h (LIBS_DEBUG):
905 * s/irix6-5.h (C_DEBUG_SWITCH):
906 * s/gnu-linux.h (LIBS_DEBUG):
907 * s/darwin.h (LIBS_DEBUG):
908 * s/bsd-common.h (LIBS_DEBUG):
909 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
910 * m/iris4d.h (LIBS_DEBUG):
911 * m/hp800.h (LIBS_DEBUG): Remove definitions.
912
913 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
914 (LIBS_DEBUG): Remove definition.
915
649dbf36
CY
9162010-03-27 Chong Yidong <cyd@stupidchicken.com>
917
918 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
919 Windows.
920
cad4261f
YM
9212010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
922
923 * process.c (Fmake_network_process): Don't call turn_on_atimers around
924 `connect' (Bug#5723).
925
cd591dbc
HE
9262010-03-25 Helmut Eller <eller.helmut@gmail.com>
927
928 * process.c (Fmake_network_process): Call `select' for interrupted
929 `connect' rather than creating new socket (Bug#5173).
930
e867cb5d 9312010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
932
933 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
934
935 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
936
937 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
938
e867cb5d 9392010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
940
941 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
942 XLoadQueryFont.
943
e867cb5d 9442010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
945
946 * coding.c (decode_coding_ccl): Fix previous change for the
947 multibyte case.
fb608df3
KH
948 (encode_coding_ccl): Don't setup ccl program here. Fix for the
949 case that the output buffer is fullfilled.
950 (encode_coding): Setup ccl program here.
fbdc1721 951
e867cb5d 9522010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
953
954 * editfns.c (Fformat): Account for string precision when computing
955 field width (Bug#5710).
956
5845f0ed
DN
9572010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
958
814fb708
DN
959 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
960
5845f0ed
DN
961 Simplify LIBS_MACHINE definitions.
962 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
963 * m/iris4d.h (LIBS_MACHINE): Likewise.
964 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
965 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 966 * s/netbsd.h: Remove commented out code.
5845f0ed 967
b7064064
DN
9682010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
969
df7734b2
DN
970 Remove dead code dealing with POSIX_SIGNALS.
971 * atimer.c (set_alarm): Remove dead code, all USG systems define
972 POSIX_SIGNALS.
973 * data.c (arith_error): Likewise.
974 * keyboard.c (input_available_signal, handle_user_signal)
975 (interrupt_signal): Likewise.
976 * process.c (sigchld_handler): Likewise.
977 (create_process): Remove if 0 code. Remove HPUX conditional when
978 !defined (POSIX_SIGNALS), it cannot be true.
979 * syssignal.h: Remove USG5_4 and USG conditionals when
980 !POSIX_SIGNALS, they cannot be true.
981
b7064064
DN
982 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
983 NO_SOCK_SIGIO, not used anymore.
984
55da5ee3
DN
9852010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
986
0be96e3a
DN
987 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
988 support vax on BSDs.
989
55da5ee3
DN
990 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
991 * s/aix4-2.h (ORDINARY_LINK): ... here.
992
c0282183
AS
9932010-03-21 Andreas Schwab <schwab@linux-m68k.org>
994
82c3d67a
AS
995 * Makefile.in (abs_builddir): Define.
996 (bootstrap_exe): Use it.
997 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 998
3613edce
SM
9992010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1000
1001 * Makefile.in (bootstrap_exe): Use an absolute name.
1002
7f110ddc
DN
10032010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1004
22e87574
DN
1005 Remove support for old GNU/Linux using libc version 5.
1006 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1007 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1008
05a670e6
DN
1009 Consolidate redundant definitions in s/bsd-common.h.
1010 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1011 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1012 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1013 doing it in all files that include this one.
1014 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1015 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1016 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1017 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1018 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1019 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1020 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1021 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1022 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1023
2968f561
DN
1024 Consolidate redundant definitions.
1025 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1026 it's undefined in all files that include this one.
1027 (POSIX_SIGNALS): Define here instead of doing it in all files that
1028 include this one.
1029 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1030 (POSIX_SIGNALS): Do not define.
1031 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1032 (POSIX_SIGNALS): Do not define.
1033 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1034 (POSIX_SIGNALS): Do not define.
1035
15d25dc0
DN
1036 Remove support for old UNIX System V systems.
1037 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1038 * s/usg-5-4-2.h: Remove.
1039
07e339e4
DN
1040 Remove support for Solaris on PPC and for old versions.
1041 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1042 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1043 that cancel each other.
1044 * s/sol2-3.h:
1045 * s/sol2-4.h:
1046 * s/sol2-5.h: Remove.
1047 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1048 (NO_REMAP): Remove, unused.
1049 (UNEXEC): Move definition ...
1050 * s/aix4-2.h (UNEXEC): ... here.
1051
7f110ddc
DN
1052 * s/openbsd.h: Remove support for non-ELF and for systems that do
1053 not support shared libraries.
1054 * s/netbsd.h:
1055 * s/freebsd.h: Likewise.
1056
605f35cd
DN
10572010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1058
1059 Remove non-working support for lynxos 3.0.
1060 * s/lynxos.h: Remove file.
1061
1062 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1063 COFF_BSD_SYMBOLS, nothing defines it anymore.
1064
aed71cf4
DN
10652010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1066
1067 Remove obsolete uses of HAVE_SHM.
1068 * emacs.c (standard_args):
1069 (Fdump_emacs):
1070 (syms_of_emacs): Remove code depending on HAVE_SHM.
1071
1072 * alloc.c: Remove HAVE_SHM dependent definition.
1073
1074 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1075
aded53ff
GM
10762010-03-18 Glenn Morris <rgm@gnu.org>
1077
17284745
GM
1078 * emacs.c (USAGE4): Hard-code bug address.
1079 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1080 (bug_reporting_address): Remove.
1081 (main): Don't call bug_reporting_address.
1082
aded53ff
GM
1083 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1084 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1085
303500aa
CY
10862010-03-15 Chong Yidong <cyd@stupidchicken.com>
1087
1088 * xfns.c (Fx_create_frame):
1089 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1090 on left.
1091
cef3058f
CY
10922010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1093
1094 * editfns.c (Fformat): Account for string precision when computing
1095 field width (Bug#5710).
1096
a647d59d
CY
10972010-03-12 Chong Yidong <cyd@stupidchicken.com>
1098
4fa42018
CY
1099 * xfns.c (Fx_create_frame): Set default to Qright.
1100
a647d59d
CY
1101 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1102 all window systems.
1103
6da23aaa
EZ
11042010-03-12 Eli Zaretskii <eliz@gnu.org>
1105
a96f6398 1106 These changes remove termcap.c from the build on Posix platforms.
83d02def 1107 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
1108 (MSDOS_OBJ): ...to here.
1109 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1110 now identical to when LIBS_TERMCAP is defined.
1111
1112 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1113
1114 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1115
a96f6398 1116 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 1117
288f9fc0
CY
11182010-03-10 Chong Yidong <cyd@stupidchicken.com>
1119
1120 * Branch for 23.2.
1121
d48cd3f4
SM
11222010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1123
1124 Cleanup setup of gl_state in various parts of the code.
1125 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1126 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1127 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1128 (skip_chars):
1129 * regex.c (regex_compile): Use it.
1130 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1131 it's now set in regex_compile when/if we need it.
1132
618db430
SM
11332010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1134
c0335e02
SM
1135 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1136 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1137 (QUIT): Use it to consolidate code and remove redundancy.
1138 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1139
254c06a8
SM
1140 * regex.c (regex_compile): Setup gl_state as well.
1141
618db430
SM
1142 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1143 (in_classes): Use CONSP before XCAR/XCDR.
1144
233f0c9f
CY
11452010-03-03 Chong Yidong <cyd@stupidchicken.com>
1146
1147 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1148 definitions, so that keyboard macros are correctly handled
1149 (Bug#5481).
1150
75f80e63
EZ
11512010-03-02 Eli Zaretskii <eliz@gnu.org>
1152
1153 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1154 text that could be relocated inside the call to emacs_mule_char.
1155 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1156 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1157
dcfb9bc4
KH
11582010-03-02 Kenichi Handa <handa@m17n.org>
1159
fc9a17bc
KH
1160 * character.c (parse_str_as_multibyte): Fix handling of the
1161 multibyte form of raw-bytes.
1162 (str_as_multibyte): Likewise.
1163
dcfb9bc4
KH
1164 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1165 form of raw-bytes.
1166
412c01b6
CY
11672010-02-28 Chong Yidong <cyd@stupidchicken.com>
1168
1169 * charset.c (load_charset_map_from_file)
1170 (load_charset_map_from_vector): Zero out allocated
1171 charset_map_entries before using them.
1172
df7e1ea0
AS
11732010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1174
1175 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1176
fe69a722
CY
11772010-02-27 Chong Yidong <cyd@stupidchicken.com>
1178
4ed28cf4
CY
1179 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1180 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1181
7379cfce
KH
11822010-02-26 Kenichi Handa <handa@m17n.org>
1183
f88cc4d6
KH
1184 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1185
7379cfce
KH
1186 * xdisp.c (reseat_to_string): Fix previous change.
1187
cf2fdcfb
CY
11882010-02-26 David Reitter <david.reitter@gmail.com>
1189
1190 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1191 Lisp_Object (Bug#4736).
1192
cc6c7c75
KH
11932010-02-25 Kenichi Handa <handa@m17n.org>
1194
1195 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1196
32e737d7
JD
11972010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1198
1199 * xterm.c (XTflash): Move declarations before statements.
1200
1201 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1202 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1203 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1204 (xg_create_tool_bar): Remove unused variables.
1205 (x_wm_set_size_hint): Move declarations before statements.
1206 (xg_create_frame_widgets): Remove variable grav,
1207
676cae9f
CY
12082010-02-21 Chong Yidong <cyd@stupidchicken.com>
1209
1210 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1211
886cc2b8
SM
12122010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1213
1214 * term.c (fatal): Add a final \n if needed (bug#5596).
1215
ddb2d8e2
CY
12162010-02-18 Chong Yidong <cyd@stupidchicken.com>
1217
1218 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1219
2a4f8d3d
GM
12202010-02-18 Glenn Morris <rgm@gnu.org>
1221
1222 * callint.c (Finteractive): Doc fix.
1223
ebaf11b6
KH
12242010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1225
886cc2b8
SM
1226 * coding.c (record_conversion_result):
1227 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1228 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1229 memory allocation error.
1230
d0396581
KH
12312010-02-17 Kenichi Handa <handa@m17n.org>
1232
886cc2b8
SM
1233 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1234 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1235 (decode_coding): Setup ccl program here. Keep looping when the
1236 decoder stopped because the output buffer is
1237 fullfilled (bug#5534).
1238
1239 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1240
98599f74
JD
12412010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1242
471e4f04 1243 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1244 bug #5571.
886cc2b8 1245 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1246 overdrawn.
98599f74 1247
182659ae
JD
12482010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1249
1250 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1251 doing_interact here.
1252 (ice_connection_closed): New function.
1253 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1254 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1255 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1256 returns I/O error.
1257 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1258 bug #5512.
1259
9be32c4e 12602010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1261
1262 * nsfont.m (nsfont_open): The system's value for the font descent
1263 is negative, so round it down to avoid clipping.
1264
a2f3eb19
CY
12652010-02-06 Chong Yidong <cyd@stupidchicken.com>
1266
1267 * charset.c (load_charset_map_from_file)
1268 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1269 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1270
3088147c
CY
12712010-02-05 Chong Yidong <cyd@stupidchicken.com>
1272
1273 * charset.c (load_charset_map_from_file): Allocate large
1274 charset_map_entries structure on the heap rather than the stack.
1275 (Bug#5526).
1276
b57d9029
KH
12772010-01-31 Kenichi Handa <handa@m17n.org>
1278
1279 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1280 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1281
c67d885b
CY
12822010-01-31 Chong Yidong <cyd@stupidchicken.com>
1283
1284 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1285 <deactivated@gmail.com> (Bug#3605).
1286
8fab2362
CY
12872010-01-31 David De La Harpe Golden <david@harpegolden.net>
1288
1289 * fileio.c (Frename_file): Correctly rename symlinks to
1290 directories (Bug#5496).
1291
cb2a62f2
CY
12922010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1293
1294 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1295
944c7a26
AS
12962010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1297
1298 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1299
c024ac08
CY
13002010-01-29 Chong Yidong <cyd@stupidchicken.com>
1301
1302 * frame.c (DEFAULT_ROWS): Change default to 35.
1303
1304 * xfns.c (x_default_font_parameter): Change default XFT font to
1305 monospace-10 (Bug#3643).
1306
af93af83
EZ
13072010-01-29 Eli Zaretskii <eliz@gnu.org>
1308
1309 * w32inevt.c (key_event): Remove unnecessary comparison of
1310 event->uChar.AsciiChar with 128.
1311
ca0eb708
CY
13122010-01-28 Chong Yidong <cyd@stupidchicken.com>
1313
b242dbfc
CY
1314 * fileio.c (Frename_file): Fix last change (Bug#5487).
1315
ca0eb708
CY
1316 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1317
1318 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1319
45d45af5
JD
13202010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1321
1322 * xfns.c (Fx_create_frame): Remove window size matching code from
1323 2010-01-15.
1324 (x_get_current_desktop, x_get_desktop_workarea): Remove
1325
7e233730
JR
13262010-01-27 Jason Rumney <jasonr@gnu.org>
1327
1328 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1329 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1330
86e893e3
KH
13312010-01-27 Kenichi Handa <handa@m17n.org>
1332
1333 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1334 pattern string (Bug#4209).
86e893e3 1335
8719abec
CY
13362010-01-27 David De La Harpe Golden <david@harpegolden.net>
1337
1338 * fileio.c (Frename_file): Call copy-directory and
1339 delete-directory for directories, in order to handle cross-device
1340 renaming (Bug#3353).
1341
844794c8
JD
13422010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1343
aa3e13b5 1344 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1345 sizes 24 and 10. Bug #3643.
844794c8 1346
bd4b5750
SM
13472010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1348
8dc1adf6 1349 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1350 * keymap.c (shadow_lookup): Add `remap' arg.
1351 (describe_map, describe_vector): Update calls to shadow_lookup.
1352 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1353 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
1354 perform remapping during shadow_lookup check of remapped_sequences.
1355
285d07e2
CY
13562010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1357
1358 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1359 png_check_sig, which has been removed in libpng 1.4.
1360
c6d09b8d
CY
13612010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1362
1363 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1364 lacks this header file).
1365
3d782998
YM
13662010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1367
1368 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1369 as in Emacs 22.
1370
2aff7c53
YM
13712010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1372
1373 * lisp.h (make_pure_string): String pointer arg now points to const.
1374
1375 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1376 args now point to const.
1377
74327f7a
EZ
13782010-01-22 Eli Zaretskii <eliz@gnu.org>
1379
1380 * lread.c (Fload): Don't treat files without .elc extension as
1381 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1382 them. (bug#5303)
1383
4d1e6632
KH
13842010-01-20 Kenichi Handa <handa@m17n.org>
1385
1386 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
1387 treat the source as actual byte sequence.
1388
1fdede8f
AM
13892010-01-19 Alan Mackenzie <acm@muc.de>
1390
1391 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 1392 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
1393 `signal_after_change_p' to `coherent_change_p', and make the
1394 invocation of `modify_region' conditional on it.
1395
67477f30
JD
13962010-01-19 Jan Djärv <jan.h.d@swipnet.se>
1397
1398 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
1399 for debug purpose.
1400 (syms_of_xsettings): Declare xft-settings.
1401
244b023e
CY
14022010-01-18 Chong Yidong <cyd@stupidchicken.com>
1403
1404 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
1405
617364fe
CY
14062010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1407
1408 * xterm.c (event_handler_gdk): Block input (Bug#5037).
1409
4fe22cdf
CY
14102010-01-16 Chong Yidong <cyd@stupidchicken.com>
1411
1412 * emacs.c (standard_args): Adjust arg priorities to reflect how
1413 they are processed in startup.el.
1414
e118d2be
AS
14152010-01-16 Andreas Schwab <schwab@linux-m68k.org>
1416
1417 * Makefile.in (lisp, shortlisp): Update.
1418
523ae620
SM
14192010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1420
1421 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
1422 code, link the new kboard into all_kboard before running Lisp code,
1423 and protect the new terminal with GCPRO (Bug#5365).
1424 (x_term_init): Remove unused var `atom'.
1425 (x_delete_display, x_delete_terminal): Remove unused var `i'.
1426
f0d13888
JD
14272010-01-15 Jan Djärv <jan.h.d@swipnet.se>
1428
1429 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
1430 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
1431 to find out usable size of the desktop. Don't make frames larger than
ac146f82 1432 this. Bug #3643.
f0d13888 1433
cc320f07
KH
14342010-01-15 Kenichi Handa <handa@m17n.org>
1435
1436 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
1437
7ffdf101
CY
14382010-01-15 Chong Yidong <cyd@stupidchicken.com>
1439
1440 * nsterm.m (Qnone): Define.
1441
1442 * nsfns.m (Qnone): Move definition to nsterm.m.
1443
d12bd917
KH
14442010-01-14 Kenichi Handa <handa@m17n.org>
1445
1446 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
1447 systems.
1448
d9a7c140
KH
14492010-01-14 Kenichi Handa <handa@m17n.org>
1450
1451 Make auto-composition work on all buffers even if they are
1452 fundamental mode.
1453
1454 * composite.c (Vauto_composition_mode): New variable.
1455 (composition_compute_stop_pos): Check Vauto_composition_mode
1456 instead of Vauto_composition_function.
1457 (composition_adjust_point, Ffind_composition_internal): Likewise.
1458 (syms_of_composite): Declare Lisp variable
1459 "auto-composition-mode" here.
1460
63286bb2
CY
14612010-01-13 Chong Yidong <cyd@stupidchicken.com>
1462
1463 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
1464 during call to vendor-specific-keysyms (Bug#5365).
1465
c2623ee7
YM
14662010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1467
1468 * keyboard.c (input_available_signal) [SYNC_INPUT]:
1469 Call SIGNAL_THREAD_CHECK (Bug#5333).
1470
1471 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
1472 Call SIGNAL_THREAD_CHECK.
1473
0b5397c2
SM
14742010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
1475
1476 Try to fix bug#5314. This is probably not the final word, tho.
1477 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
1478 recent-auto-save-p as a side-effect.
1479 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
1480 * buffer.c (Fkill_buffer, reset_buffer):
1481 * editfns.c (Fsubst_char_in_region):
1482 * fileio.c (Finsert_file_contents, Fdo_auto_save)
1483 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
1484
dc954cb2
KH
14852010-01-13 Kenichi Handa <handa@m17n.org>
1486
1487 Display buffer name, etc. in mode line by composing correctly.
1488
1489 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
1490 STRING is not nil.
0b5397c2 1491 (display_mode_element): Adjust for the change of
dc954cb2
KH
1492 decode_mode_spec and display_line.
1493 (decode_mode_spec): Change arg MULTIBYTE to STRING.
1494 (display_string): Handle the case that STRING is non-null and
1495 LISP_STRING is not nil.
1496
0b5397c2
SM
1497 * xterm.c (x_draw_composite_glyph_string_foreground):
1498 Pay attention to s->face->overstrike.
dc954cb2
KH
1499
1500 * composite.c (composition_reseat_it): Don't check PT if STRING is
1501 non nil.
1502
4a00eaca
YM
15032010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1504
1505 * keyboard.c (read_char): Don't apply previous change when current
1506 buffer is unchanged by command execution.
1507
60abb287
JD
15082010-01-12 Jan Djärv <jan.h.d@swipnet.se>
1509
1510 * keyboard.c (read_char): Return after executing from special map.
1511
893db5bc
GM
15122010-01-12 Glenn Morris <rgm@gnu.org>
1513
1514 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
1515 bug-gnu-emacs rather than emacs-pretest-bug.
1516
4d03ece0
CY
15172010-01-11 Chong Yidong <cyd@stupidchicken.com>
1518
1519 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
1520 initializing the Lisp variables that depend on them.
1521
1df47e38
YM
15222010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1523
1524 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
1525 Clear areas that will not be updated after change of menu bar lines.
1526 Clear the menu bar window's current matrix when the window gets empty.
1527
2f1c6384
CY
15282010-01-09 Chong Yidong <cyd@stupidchicken.com>
1529
e398c61c
CY
1530 * intervals.h, textprop.c (extend_property_ranges): Return value
1531 and args changed. Discard properties that begin at or after the
1532 new end (Bug#5306).
1533
1534 * editfns.c (Fformat): Caller changed.
1535
e5a29a10
CY
1536 * nsterm.m (ns_set_default_prefs): Delete function.
1537 (syms_of_nsterm): Initialize ns_command_modifier,
1538 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
1539 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
1540
2f1c6384
CY
1541 * xdisp.c (pos_visible_p): Check for invisible text at the correct
1542 position (Bug#4040).
1543
d427a9fa
EZ
15442010-01-09 Eli Zaretskii <eliz@gnu.org>
1545
1546 * editfns.c (Ffloat_time): Doc fix.
1547
21b9df2f
JD
15482010-01-09 Jan Djärv <jan.h.d@swipnet.se>
1549
1550 * xfns.c (Fx_create_frame): Don't create frame larger than display
1551 by default bug#3643.
1552
4b00d3b1
YM
15532010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1554
1555 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
1556 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
1557 windows above internal border.
1558
1559 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
1560 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
1561 windows above internal border.
1562
1563 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
1564 tool bar windows specially.
1565
1566 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
1567
1568 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
1569 specially.
1570 (XTflash): Take account of menu bar height.
1571
1572 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
1573 specially.
1574
5075d853
JD
15752010-01-08 Jan Djärv <jan.h.d@swipnet.se>
1576
ac146f82 1577 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
1578 also be true before we can return early (bug #5339).
1579
474217c8
CY
15802010-01-06 David Reitter <david.reitter@gmail.com>
1581
1582 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
1583 (Fns_display_usable_bounds): Rewrite, computing bounds properly
1584 (Bug#3233).
1585
c0e6d47d
JD
15862010-01-06 Jan Djärv <jan.h.d@swipnet.se>
1587
d0cf45b7
JD
1588 * font.c (font_open_entity): Enable chache and call cached_font_ok
1589 for the driver if defined.
1590 (QCuser_spec): New symbol.
1591 (font_spec_from_name): Save name as user-spec.
1592 (font_load_for_lface): Keep user-spec instead of name.
1593 (font_open_by_name): Save name as user-spec.
1594 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 1595 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
1596
1597 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
1598 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
1599 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
1600
1601 * font.h (struct font_driver): Add cached_font_ok.
1602
c0e6d47d
JD
1603 * xterm.c (x_clear_frame): Queue draw for scroll bars.
1604
7c583cd8
JD
16052010-01-05 Jan Djärv <jan.h.d@swipnet.se>
1606
1607 * xterm.c (x_new_font): Move code for setting rows/cols before
1608 resizing ...
ac146f82 1609 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
1610
1611 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
1612 (xg_frame_resized, xg_frame_set_char_size):
1613 Call xg_clear_under_internal_border.
7c583cd8 1614 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 1615
03f77f0a
CY
16162010-01-05 Chong Yidong <cyd@stupidchicken.com>
1617
1618 * keyboard.c (read_key_sequence): Catch keyboard switch after
1619 making a new tty frame (Bug#5095).
1620
2a1ef5be
KH
16212010-01-05 Kenichi Handa <handa@m17n.org>
1622
1623 * fontset.c (fontset_find_font): Fix getting the frame pointer.
1624
e3eb1dae
SM
16252010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1626
1627 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
1628 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
1629 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
1630
777013f2
MA
16312010-01-03 Michael Albinus <michael.albinus@gmx.de>
1632
1633 * dbusbind.c (xd_add_watch): Improve debug message.
1634 (xd_remove_watch): Improve debug message. If DATA is the session
1635 bus, unset D-Bus session environment.
1636 (Fdbus_init_bus): Pass the bus as argument to
1637 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 1638
8932b1c2
CY
16392010-01-01 Chong Yidong <cyd@stupidchicken.com>
1640
87231e2c
CY
1641 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
1642
4801c5fa
CY
1643 * lread.c (syms_of_lread): Make it clearer that these are the
1644 names of loaded files (Bug#5068).
1645
8932b1c2
CY
1646 * eval.c (run_hook_with_args): Handle the case where the global
1647 value has the obsolete single-function form (Bug#5026).
1648
11e3c684
CY
16492009-12-27 Chong Yidong <cyd@stupidchicken.com>
1650
1651 * minibuf.c (Fall_completions): Minor optimization.
1652
5b28ce35
EZ
16532009-12-26 Eli Zaretskii <eliz@gnu.org>
1654
5ce6e4f4
JB
1655 * .gdbinit (pgx): Fix display of composite glyphs.
1656 Display cmp.from and cmp.to as well.
1657 (pitx): Fix last change.
5b28ce35 1658
bcffff46
KH
16592009-12-25 Kenichi Handa <handa@m17n.org>
1660
1661 * composite.h (composition_adjust_point): Update prototype.
1662
1663 * composite.c (composition_reseat_it): Don't make a composition
1664 spanning over point.
1665 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
1666 composable characters.
1667 (composition_adjust_point): New arg NEW_PT. Callers changed.
1668
1669 * keyboard.c (command_loop_1): Force redisplay if the last point
1670 was within a composition.
1671 (adjust_point_for_property): Don't adjust point for automatic
1672 composition when called after buffer modification.
1673
3f670e9a
EZ
16742009-12-19 Eli Zaretskii <eliz@gnu.org>
1675
5ce6e4f4
JB
1676 * .gdbinit (pitx): Don't use enum names, use their values.
1677 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
1678 (pgx): Don't use enum names, use their values.
1679 (pitmethod): New helper command.
1680 (pitx): Use it to display iteration method.
1681 (pgrowit): New command.
1682
ad903955
EZ
1683 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
1684
3f670e9a
EZ
1685 Update dependencies in Makefile.in.
1686
1687 * Makefile.in (alloc.o): Depend on termhooks.h.
1688 (atimer.o): Depend on blockinput.h.
1689 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
1690 and frame.h.
1691 (callint.o): Depend on systime.h, coding.h, and composite.h.
1692 (callproc.o): Depend on buffer.h.
1693 (casefiddle.o): Don't depend on charset.h.
1694 (casetab.o): Depend on character.h.
1695 (ccl.o): Depend on composite.h.
1696 (chartab.o): Depend on ccl.h.
1697 (cm.o): Depend on dispextern.h.
1698 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
1699 (coding.o): Don't depend on $(INTERVALS_H).
1700 (composite.o): Don't depend on dispextern.h explicitly (it's in
1701 $(INTERVALS_H)). Depend on ccl.h.
1702 (data.o): Depend on systime.h, coding.h, composite.h,
1703 dispextern.h, font.h, and ccl.h.
1704 (dired.o): Depend on composite.h.
1705 (dispnew.o): Depend on coding.h. Don't depend explicitly on
1706 composite.h (it's in $(INTERVALS_H)).
1707 (doc.o): Depend on systime.h, coding.h, and composite.h.
1708 (editfns.o): Don't depend explicitly on dispextern.h.
1709 (emacs.o): Depend on frame.h and coding.h.
1710 (eval.o): Depend on coding.h, composite.h, and xterm.h.
1711 (fileio.o): Depend on frame.h and commands.h. Don't depend
1712 explicitly on dispextern.h.
1713 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
1714 composite.h.
1715 (fns.o): Don't depend on termhooks.h.
1716 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
1717 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
1718 coding.h, $(INTERVALS_H), window.h, xterm.h.
1719 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
1720 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
1721 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
1722 fontset.h, ccl.h, and ftfont.h.
1723 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1724 (gtkutil.o): Depend on dispextern.h and composite.h.
1725 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
1726 termhooks.h, and ccl.h.
1727 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
1728 (intervals.o): Depend on systime.h and coding.h.
1729 (keyboard.o): Depend on composite.h and coding.h.
1730 (keymap.o): Depend on coding.h and frame.h.
1731 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
1732 (macros.o): Depend on systime.h, coding.h, and composite.h.
1733 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
1734 and atimer.h.
1735 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
1736 dispextern.h explicitly.
0b5397c2
SM
1737 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
1738 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
1739 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
1740 (regex.o): Don't depend on charset.h.
1741 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
1742 (search.o): Don't depend explicitly on composite.h.
1743 (sound.o): Depend on atimer.h and systime.h.
1744 (syntax.o): Don't depend explicitly on composite.h.
1745 (sysdep.o): Depend on coding.h and composite.h.
1746 (term.o): Depend on xterm.h and buffer.h.
1747 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
1748 (textprop.o): Don't depend on dispextern.h explicitly.
1749 (undo.o): Depend on dispextern.h.
1750 (window.o): Depend on coding.h and termhooks.h. Don't depend on
1751 dispextern.h and composite.h explicitly.
1752 (xdisp.o): Depend on ccl.h.
1753 (xfaces.o): Depend on coding.h and ccl.h.
1754 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
1755 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
1756 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
1757 ftfont.h.
1758 (xgselect.o): New dependency.
1759 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
1760 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
1761 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
1762 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
1763 (xsmfns.o): Depend on frame.h and dispextern.h.
1764 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
1765 sysselect.h.
1766
7a6f7fea
AS
17672009-12-19 Andreas Schwab <schwab@linux-m68k.org>
1768
1769 * font.c (Fclear_font_cache): Pass correct cache argument to
1770 font_clear_cache.
1771
f4c21026
AS
17722009-12-16 Andreas Schwab <schwab@linux-m68k.org>
1773
1774 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
1775 twice.
1776
f7ab0997
CY
17772009-12-15 Chong Yidong <cyd@stupidchicken.com>
1778
1779 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
1780 calling file-remote-p. Reported by Jim Meyering.
1781
fa8e045a
MA
17822009-12-15 Michael Albinus <michael.albinus@gmx.de>
1783
1784 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 1785 avoid compiler warnings. (Bug #5217)
fa8e045a 1786
a63dba42
KH
17872009-12-14 Kenichi Handa <handa@m17n.org>
1788
1789 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
1790 in 8-bit encoding.
1791
5ce6e4f4 17922009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
1793
1794 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
1795 tooltip windows.
1796
223e5fc6
JD
17972009-12-13 Jan Djärv <jan.h.d@swipnet.se>
1798
36acb2a7
JD
1799 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
1800 Xatom_net_window_type.
1801
1802 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
1803 Xatom_net_window_type.
1804
b8f00677
JD
1805 * xterm.c (my_log_handler): New function.
1806 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 1807 so we can filter out buggy messages. (Bug #5120).
b8f00677 1808
e5f0bc9a
JD
1809 * xterm.c (xg_scroll_callback): Parameter list changed,
1810 use parameter GtkScrollType to determine scroll/line/page.
1811 Only allow dragging if a button < 4 is grabbed (bug #5177).
1812 (xg_end_scroll_callback): New function.
1813 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
1814 xg_create_scroll_bar.
1815
1816 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
1817 (scroll_end_callback): Remove.
1818 (xg_create_scroll_bar): Add parameter end_callback, bind it to
1819 button-release-event. Replace value-changed event with change-value,
1820 bug #5177,
1821 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
1822 bug #5177.
1823
1824 * gtkutil.h (XG_LAST_SB_DATA): Remove.
1825 (xg_create_scroll_bar): Add GCallback end_callback.
1826
223e5fc6
JD
1827 * xftfont.c (QClcdfilter): New variable.
1828 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
1829 (syms_of_xftfont): Initialize QClcdfilter.
1830
3c055b77
JD
18312009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1832
1833 * xsettings.c (struct xsettings): Add member seen.
1834 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 1835 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
1836 (apply_xft_settings): Only update Xft settings with what member seen
1837 indicates as new.
1838
05fe33ff
EZ
18392009-12-12 Eli Zaretskii <eliz@gnu.org>
1840
1841 * dispextern.h (struct text_pos): Use EMACS_INT;
1842 (struct glyph): Use EMACS_INT for charpos.
1843 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
1844 region_beg_charpos, region_end_charpos,
1845 redisplay_end_trigger_charpos, and also for
1846 iterator_stack_entry.end_charpos and
1847 iterator_stack_entry.stop_charpos.
1848
e8d7886a
JD
18492009-12-12 Jan Djärv <jan.h.d@swipnet.se>
1850
5ce6e4f4 1851 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
1852 (xg_create_scroll_bar): Call scroll_end_callback on button release
1853 event (bug #5177).
1854 (xg_event_is_for_scrollbar): != replaced with ==.
1855
d0db2ec8
KH
18562009-12-12 Kenichi Handa <handa@m17n.org>
1857
1858 * ftfont.c (struct ftfont_info): New member matrix.
1859 (ftfont_open): Setup xftfont_info->matrix.
1860 (MFLTFontFT): New member matrix.
1861 (FLOOR, CEIL, ROUND): New macros.
1862 (ftfont_get_metrics): Handle matrix transformation.
1863 (ftfont_shape_by_flt): New arg matrix. Callers changed.
1864
1865 * xftfont.c (struct xftfont_info): New member matrix.
1866 (xftfont_open): Setup xftfont_info->matrix.
1867
18682009-12-10 Kenichi Handa <handa@m17n.org>
1869
1870 * xdisp.c (append_space_for_newline): Consider face-remapping.
1871
2cc7b62f
AS
18722009-12-09 Andreas Schwab <schwab@linux-m68k.org>
1873
b87dd913
AS
1874 * xsettings.c: Include "keyboard.h".
1875
eba5eb94
AS
1876 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
1877
2cc7b62f
AS
1878 Fix implicit function declarations.
1879 * cmds.c: Include "frame.h".
1880 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
1881 * frame.h: Move declaration of delete_frame outside of
1882 HAVE_WINDOW_SYSTEM.
1883
a4ef73c8
CY
18842009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
1885
1886 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
1887
1888 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
1889 GTK builds.
1890
944a300c
AS
18912009-12-07 Andreas Schwab <schwab@linux-m68k.org>
1892
1893 * unexelf.c (unexec): Don't search for .data twice.
1894
022eef62
CY
18952009-12-05 Chong Yidong <cyd@stupidchicken.com>
1896
426ac949
CY
1897 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
1898 if push failed.
1899 (handle_line_prefix): Set avoid_cursor_p here. Check return value
1900 of push_display_prop (Bug#5000).
1901
022eef62
CY
1902 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
1903 value of font_list_entities (Bug#5085).
1904
be95bee9
JB
19052009-12-04 Juanma Barranquero <lekktu@gmail.com>
1906
1907 Fix `string-to-number' to deal consistently with integers and floats.
1908 * lread.c (isfloat_string): New argument ignore_trailing to accept all
1909 trailing characters, not just whitespace.
1910 (read1): Pass new arg 0 to keep old behavior.
1911 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
1912 trailing chars, as it is already done for integers. Doc fixes.
1913 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
1914
24c2d7ce
EZ
19152009-12-04 Eli Zaretskii <eliz@gnu.org>
1916
0b5397c2
SM
1917 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
1918 Delete unused enumeration value.
24c2d7ce 1919
7e694795
EZ
19202009-12-03 Eli Zaretskii <eliz@gnu.org>
1921
1922 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
1923
84b31826
SM
19242009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
1925
1926 * process.c (Fmake_network_process): Fix up the tests for
1927 "connectionless socket", so they DTRT for seqpacket sockets as well.
1928
f00c449b
SM
19292009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
1930
1931 * process.c (Qseqpacket): New symbol.
1932 (HAVE_SEQPACKET): New macro.
1933 (Fmake_network_process): Accept new :type `seqpacket'.
1934 (init_process): Add `seqpacket' feature when applicable.
1935 (syms_of_process): Initialize Qseqpacket.
1936
8096a0ff
YM
19372009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1938
1939 * font.c (font_load_for_lface, font_open_by_name): Don't store name
1940 if entity is Qnil.
1941
3e0de07f
SM
19422009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
1943
1944 * print.c (print_preprocess): Preprocess the key_and_value table of
1945 hashtables, even tho they're "hidden" (bug#5082).
1946
abeafb2a
JD
19472009-11-29 Jan Djärv <jan.h.d@swipnet.se>
1948
1949 * frame.c (frame_make_pointer_invisible)
1950 (frame_make_pointer_visible): Declare f before statements.
1951
4bf47195
EZ
19522009-11-28 Eli Zaretskii <eliz@gnu.org>
1953
1954 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
1955 omitted dependencies on lisp.h.
1956
c525b3f2
JD
19572009-11-27 Jan Djärv <jan.h.d@swipnet.se>
1958
ece2d4ed
JD
1959 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
1960 is NULL.
1961
1962 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
1963
1964 * frame.c (frame_make_pointer_invisible)
3e0de07f 1965 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
1966 frame.
1967
c525b3f2
JD
1968 * search.c (simple_search): Remove warning by making *p const.
1969
2f00e299
DN
19702009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
1971
1972 * xdisp.c (power_letter): Remove duplicate const.
1973
084b049b
JD
19742009-11-25 Jan Djärv <jan.h.d@swipnet.se>
1975
a1fadc6f
JD
1976 * term.c (delete_tty): Remove check for last terminal (bug#4970).
1977
5ce6e4f4 1978 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
1979 defaults (bug #5025).
1980
28259cac
SM
19812009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
1982
1983 * insdel.c (adjust_markers_for_delete): Move it in the
1984 right direction! (bug#4803)
1985
e8e14166
YM
19862009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1987
1988 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
1989
1990 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
1991
86677b58
GM
19922009-11-24 Glenn Morris <rgm@gnu.org>
1993
1994 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
1995
581e51e8
JD
19962009-11-23 Jan Djärv <jan.h.d@swipnet.se>
1997
cfc86c7a
JD
1998 * Makefile.in: Must create deps for ecrt0.o in its rule.
1999
581e51e8
JD
2000 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2001 because that is what Gtk+ font dialog understands.
2002
2003 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2004 of Fcopy_sequence.
2005 (font_open_by_name): Put name given into QCname for font-object returned.
2006
2007 * frame.c (x_set_font): Save original font name as frame parameter
2008 font-parameter.
2009
2010 * xsettings.c (set_default_xft_settings): New function.
2011 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2012 is found.
2013
8b264ecb
AS
20142009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2015
2016 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2017 searching backwards through multibyte buffer.
2018
872870b2
JD
20192009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2020
2021 * xterm.c: #include xgselect.h.
2022 (x_initialize): Call xgselect_initialize.
2023
2024 * xsettings.c (something_changedCB): C++ comments => C comments.
2025 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2026 does that now.
2027
2028 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2029 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2030 (scroll_bar_button_cb): Remove.
5ce6e4f4 2031 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
2032 event.
2033 (xg_create_scroll_bar): Don't bind button-press-event and
2034 button-release-event.
2035
2036 * process.c: Include xgselect.h if defined (USE_GTK) ||
2037 defined (HAVE_GCONF).
2038 (wait_reading_process_output): Call xg_select for the same condition.
2039
2040 * xgselect.c (xg_select): New function to better integrate with
2041 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2042
2043 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2044
2045 * Makefile.in (XOBJ): Add xgselect.o.
2046
62a6e103
AS
20472009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2048
0b5397c2
SM
2049 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2050 Remove ignored second argument. All callers changed.
62a6e103
AS
2051 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2052 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2053 * xdisp.c (string_char_and_length): Likewise.
2054
b0ca0f33
DN
20552009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2056
2057 * xterm.c (x_new_font):
2058 * print.c (print_object):
2059 * cmds.c (Fself_insert_command): Move declarations before statements.
2060
dd5a6279
CY
20612009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2062
2063 * s/cygwin.h: Remove unneeded linker flags.
2064
4a8e097d
JD
20652009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2066
0d1d0d26
JD
2067 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2068
2069 * xsettings.h: Declare xsettings_get_system_font.
2070
2071 * xsettings.c (xsettings_get_system_font): New function.
2072 (init_gconf): No use initiating gconf unless we have Xft also.
2073 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2074 HAVE_GCONF.
2075
4a8e097d
JD
2076 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2077 add a blank entry so it doesn't collapse into nothing.
2078
8ab1650e
SM
20792009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2080
2081 * lread.c (Funintern): Comment out last change.
2082
82c602f0
RS
20832009-11-19 Richard Stallman <rms@gnu.org>
2084
2085 * lread.c (Funintern): Error if symbol is t or nil.
2086
87e32266
SM
20872009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2088
2089 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2090 representation of Lisp integers.
2091 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2092
1b9ac145
AS
20932009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2094
2095 * lisp.h: Remove declaration of Ffont_get_system_font.
2096 * xfns.c: Move include of "xsettings.h".
2097 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2098
dfb3c4c6
JD
20992009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2100
87e32266
SM
2101 * xsettings.c (something_changedCB, Ffont_get_system_font):
2102 Check use_system_font.
dfb3c4c6
JD
2103 (syms_of_xsettings): DEFVAR font-use-system-font.
2104
9370c1d8
AS
21052009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2106
25fe851a
AS
2107 * xfns.c (x_default_font_parameter): Remove dead assignment.
2108
9370c1d8
AS
2109 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2110
637fa988
JD
21112009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2112
87e32266 2113 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 2114 not have FC_LCD_*. #define them if not there.
a6eb20d8 2115
87e32266 2116 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 2117
637fa988
JD
2118 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2119
2120 * xterm.c (handle_one_xevent): Call xft_settings_event for
2121 ClientMessage, PropertyNotify and DestroyNotify.
2122 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2123 Call xsettings_initialize.
2124
2125 * xftfont.c (xftfont_fix_match): New function.
2126 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2127 Call xftfont_fix_match after XftFontMatch.
2128
2129 * xfont.c (xfont_driver): Initialize all members.
2130
87e32266
SM
2131 * xfns.c (x_default_font_parameter):
2132 Try font from Ffont_get_system_font.
637fa988
JD
2133 Do not get font from x_default_parameter if we got one from
2134 Ffont_get_system_font.
87e32266 2135 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
2136
2137 * w32font.c (w32font_driver): Initialize all members.
2138
2139 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2140
2141 * lisp.h: Declare syms_of_xsettings.
2142
87e32266
SM
2143 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2144 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
2145
2146 * ftfont.c (ftfont_filter_properties): New function.
2147
2148 * frame.c (x_set_font): Remove unused variable lval.
2149
87e32266 2150 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
2151
2152 * font.c (font_put_extra): Don't return if val is nil, it means
2153 boolean option is off.
2154 (font_parse_fcname): Collect all extra properties in extra_props
2155 and call filter_properties for all drivers with extra_props and
2156 font as parameter.
87e32266
SM
2157 (font_open_entity): Do not use cache, it does not pick up new
2158 fontconfig settings like hinting.
637fa988
JD
2159 (font_load_for_lface): If spec had a name in it, store it in entity.
2160
2161 * emacs.c (main): Call syms_of_xsettings
2162
2163 * config.in: HAVE_GCONF is new.
2164
2165 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2166 xsettings.o is new.
2167
5a942932
KH
21682009-11-17 Kenichi Handa <handa@m17n.org>
2169
2170 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2171 back to the default font in case that no suitable font is found.
2172
b7c7a4d1
SM
21732009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2174
2175 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2176 Suggested by Chad Brown <yandros@mit.edu>.
2177 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2178
072f1e39
JD
21792009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2180
2181 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2182
5d1e70a2
AS
21832009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2184
87e32266 2185 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2186
a53cfbe5
JD
21872009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2188
473a99b7
JD
2189 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2190 has a parent.
2191
a53cfbe5 2192 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2193 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2194
2195 * config.in: Generated (AUTO_DEPEND).
2196
f04bb9b2
MA
21972009-11-13 Michael Albinus <michael.albinus@gmx.de>
2198
b7c7a4d1 2199 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2200 Vdbus_registered_functions_table, because it contains also
2201 properties. Fix docstring.
b7c7a4d1 2202 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2203
8f11f7ec
SM
22042009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2205
2206 * alloc.c (mark_object): Don't reprocess marked strings.
2207 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2208 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2209
8a605fe8
KH
22102009-11-13 Kenichi Handa <handa@m17n.org>
2211
8f11f7ec 2212 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2213 semantics of Vword_combining_categories.
2214 (Vword_combining_categories): Describe the slight change of the
2215 semantics.
2216
241c4680
EZ
22172009-11-13 Eli Zaretskii <eliz@gnu.org>
2218
2219 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2220
2221 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2222
5d58e44c
SM
22232009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2224
2225 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2226
5e13f9d3
JB
22272009-11-12 Juanma Barranquero <lekktu@gmail.com>
2228
2229 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2230
cf54c754
DR
22312009-11-11 David Reitter <david.reitter@gmail.com>
2232
2233 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2234 variables to fix 2009-11-09 change.
2235
a4ada374
DN
22362009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2237
91433552
DN
2238 * process.c (ifflag_def): Make flag_sym constant.
2239 (Fnetwork_interface_info): Use a constant pointer.
2240 (ifflag_table):
2241 * xfns.c (cursor_bits):
2242 * xdisp.c (power_letter):
2243 * termcap.c (speeds, esctab):
2244 * sysdep.c (baud_convert):
2245 * keyboard.c (lispy_accent_codes, modifier_names):
2246 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2247 (jpeg_format, tiff_format, gif_format, svg_format)
2248 (interlace_start, interlace_increment, gs_format):
2249 * gtkutil.c (separator_names):
2250 * fringe.c (swap_nibble):
2251 * fns.c (base64_value_to_char, base64_char_to_value):
2252 * fileio.c (make_temp_name_tbl):
2253 * coding.c (suffixes): Make constant.
2254
f4265f6c
DN
2255 * frame.c (make_initial_frame):
2256 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2257 build_string.
2258 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2259
04420943
DN
2260 * s/freebsd.h:
2261 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2262
0a5d24ae
DN
2263 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2264 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2265
a4ada374
DN
2266 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2267 * xterm.c (syms_of_xterm):
2268 * xfaces.c (syms_of_xfaces):
2269 * xdisp.c (syms_of_xdisp):
2270 * lread.c (syms_of_lread):
2271 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2272 build_string.
91433552 2273
a4ada374
DN
2274 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2275
af98fc7f
SM
22762009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2277
8ab1650e 2278 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2279
e90292a9
JD
22802009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2281
2282 * keyboard.h: Declare timer_check.
2283
2284 * keyboard.c (timer_check_2): New function that does what the old
2285 timer_check did.
2286 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2287 returned, i.e. don't return -1 with timers pending.
2288
2289 * process.c: Remove extern declaration of timer_check.
2290
2291 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2292 even if timer_check returned -1.
2293
af98fc7f
SM
2294 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2295 xg_dialog_data.
e90292a9
JD
2296 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2297 the event loop.
2298 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2299 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2300 Destroy the dialog after xg_dialog_run.
2301
045b83c0
SM
23022009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2303
2304 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2305
1fb99a3a
JD
23062009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2307
2308 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2309
04e452cb
JB
23102009-11-09 Juanma Barranquero <lekktu@gmail.com>
2311
2312 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2313
ef7417fd
SM
23142009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2315
2316 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2317 w32menu.c, and nsmenu.m.
2318 Simplify the obsolete case where position is nil.
2319 (cleanup_popup_menu): New function, moved from nsmenu.m.
2320 (struct skp): Remove slot `notreal'.
2321 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2322 adjust callers.
2323 (single_menu_item): Adjust call to parse_menu_item.
2324 (syms_of_menu): Defsubr x-popup-menu.
2325 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2326 (keymap_panes): Don't export any more.
2327 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2328 (xmenu_show): Declare.
2329 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2330 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2331 * keyboard.h (parse_menu_item): Update declaration.
2332 * xmenu.c (Fx_popup_menu): Remove.
2333 (syms_of_xmenu): Don't defsubr x-popup-menu.
2334 * w32menu.c (Fx_popup_menu): Remove.
2335 (syms_of_w32menu): Don't defsubr x-popup-menu.
2336 * nsmenu.m (cleanup_popup_menu): Remove.
2337 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2338 moved to menu.c's Fx_popup_menu.
2339 (Fx_popup_menu): Remove.
2340 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2341 menu_items (it's done in menu.c already).
2342
424d6179
SM
23432009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2344
2345 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2346 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2347
c0df13a6 23482009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2349
2350 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2351 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
2352 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2353 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2354
2de9f71c
SM
23552009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2356
2357 Let integers use up 2 tags to give them one extra bit and thus double
2358 their range.
2359 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2360 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2361 New macros.
2362 (enum Lisp_Type): Use them. Give explicit values.
2363 (Lisp_Type_Limit): Remove.
2364 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2365 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2366 Pay attention to USE_2_TAGS_FOR_INTS.
2367 (INTEGERP): Use LISP_INT_TAG_P.
2368 * fns.c (internal_equal): Simplify the default case.
2369 (sxhash): Use case_Lisp_Int.
2370 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2371 any more.
2372 (Ftype_of): Use case_Lisp_Int.
2373 (store_symval_forwarding): Take into account the fact that Ints can
2374 now have more than one tag.
2375 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2376 buffer_slot_type_mismatch):
2377 * xfaces.c (face_attr_equal_p):
2378 * print.c (print_object):
2379 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2380 Use case_Lisp_Int.
2381
323637a2
EZ
23822009-11-06 Eli Zaretskii <eliz@gnu.org>
2383
7ac65b38
EZ
2384 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
2385
323637a2
EZ
2386 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
2387 warning.
2388
e511451f
JD
23892009-11-06 Jan Djärv <jan.h.d@swipnet.se>
2390
2391 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
2392
2393 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
2394
2395 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
2396 ButtonPressRelease and MotionNotify (bug#4870).
2397
5e2327cf
DN
23982009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
2399
5adc433e
DN
2400 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
2401
d67b4f80
DN
2402 * xterm.c (syms_of_xterm):
2403 * xselect.c (syms_of_xselect):
2404 * xmenu.c (syms_of_xmenu):
2405 * xfns.c (syms_of_xfns):
2406 * xfaces.c (syms_of_xfaces):
2407 * xdisp.c (syms_of_xdisp):
2408 * window.c (syms_of_window):
2409 * w32fns.c (syms_of_w32fns):
2410 * undo.c (syms_of_undo):
2411 * textprop.c (syms_of_textprop):
2412 * terminal.c (syms_of_terminal):
2413 * syntax.c (syms_of_syntax):
2414 * sound.c (syms_of_sound):
2415 * search.c (syms_of_search):
2416 * print.c (syms_of_print):
2417 * minibuf.c (syms_of_minibuf):
2418 * macros.c (syms_of_macros):
2419 * keymap.c (syms_of_keymap, initial_define_key)
2420 (initial_define_lispy_key):
2421 * keyboard.c (syms_of_keyboard):
2422 * insdel.c (syms_of_insdel):
2423 * image.c (syms_of_image):
2424 * fringe.c (syms_of_fringe):
2425 * frame.c (syms_of_frame):
2426 * fontset.c (syms_of_fontset):
2427 * fns.c (syms_of_fns):
2428 * fns.c (syms_of_fns):
2429 * fileio.c (syms_of_fileio):
2430 * fileio.c (syms_of_fileio):
2431 * eval.c (syms_of_eval):
2432 * doc.c (syms_of_doc):
2433 * dispnew.c (syms_of_display):
2434 * dired.c (syms_of_dired):
2435 * dbusbind.c (syms_of_dbusbind):
2436 * data.c (syms_of_data):
2437 * composite.c (syms_of_composite):
2438 * coding.c (syms_of_coding):
2439 * cmds.c (syms_of_cmds):
2440 * charset.c (define_charset_internal, syms_of_character):
2441 * ccl.c (syms_of_ccl):
2442 * category.c (syms_of_category, init_category_once):
2443 * casetab.c (syms_of_casetab):
2444 * casefiddle.c (syms_of_casefiddle):
2445 * callint.c (syms_of_callint):
2446 * bytecode.c (syms_of_bytecode):
2447 * buffer.c (keys_of_buffer, syms_of_buffer):
2448 * alloc.c (syms_of_alloc):
2449 * process.c (syms_of_process, init_process):
2450 * lread.c (syms_of_lread, init_obarray):
2451 * font.c (build_style_table):
2452 * emacs.c (syms_of_emacs, main): Replace calls to intern with
2453 intern_c_string, calls to make_pure_string with
2454 make_pure_c_string. Use pure_cons instead of Fcons.
2455
5e2327cf
DN
2456 * process.c (socket_options): Make it const.
2457 (set_socket_option, init_process): Use a const pointer.
2458
2459 * lread.c (intern_c_string): New function.
2460 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2461 (defvar_int): Uset it. Make the name const char*.
2462
2463 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2464 (defvar_int): Update prototypes.
2465 (DEFUN, EXFUN): Support for prototypes is now required.
2466 (intern_c_string): New prototype.
2467 (struct Lisp_Subr): Make symbol_name constant.
2468
2469 * font.c (struct table_entry): Remove unused member. Make NAMES
2470 constant.
2471 (weight_table, slant_table, width_table): Make constant.
2472
2473 * emacs.c (struct standard_args): Make name and longname constant.
2474
2475 * character.h (DEFSYM): Use intern_c_string.
2476
a56eaaef
DN
24772009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2478
2479 * alloc.c (make_pure_c_string): New function.
2480
2481 * eval.c (Fautoload): Purecopy all arguments.
2482
f6a07420
KH
24832009-11-05 Kenichi Handa <handa@m17n.org>
2484
2485 * fileio.c (Finsert_file_contents): Be sure set coding-system of
2486 the buffer in case of replace.
2487
5d28d4b1
DN
24882009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
2489
2490 * puresize.h (BASE_PURESIZE): Increase to 1620000.
2491
b349d111
SM
24922009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2493
d528b1ce
SM
2494 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
2495 when applicable (bug#4851).
2496
b349d111
SM
2497 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
2498 (P_): Support for prototypes is now required.
2499
c38eb027
CY
25002009-10-31 Chong Yidong <cyd@stupidchicken.com>
2501
2502 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
2503 (Bug#4827).
2504
0405f8d9
EZ
25052009-10-30 Eli Zaretskii <eliz@gnu.org>
2506
d528b1ce 2507 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 2508
ca0a881a
DN
25092009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
2510
2511 * puresize.h (BASE_PURESIZE): Increase to 1470000.
2512
d528b1ce
SM
2513 * lread.c (Fload): Purecopy the file name when building
2514 Vpreloaded_file_list.
ca0a881a 2515
47e0e0e4
JR
25162009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
2517
2518 * w32fns.c (syms_of_w32fns): Change default value of
2519 w32-scroll-lock-modifier to nil. (Bug#2827)
2520
057bce6f
JB
25212009-10-26 Juanma Barranquero <lekktu@gmail.com>
2522
782a943e 2523 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 2524
242bc74c
AS
25252009-10-26 Andreas Schwab <schwab@redhat.com>
2526
2527 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
2528
522d013a
JB
25292009-10-26 Juanma Barranquero <lekktu@gmail.com>
2530
2531 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
2532 For delta < 0, skip check that only makes sense when the mini-window
2533 is going to be enlarged. (Bug#4534)
2534
18060980
CY
25352009-10-25 Chong Yidong <cyd@stupidchicken.com>
2536
2537 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
2538 string in menu maps (Bug#4471).
2539
fec8f0fe
CY
25402009-10-24 Chong Yidong <cyd@stupidchicken.com>
2541
2542 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
2543 FRAME_NS_VIEW on terminal frames (Bug#4765).
2544
10d66ec0
AS
25452009-10-24 Andreas Schwab <schwab@linux-m68k.org>
2546
1cae01f7
AS
2547 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
2548 DBUS_TYPE_UINTnn separately to get proper sign extension.
2549
58a12889
AS
2550 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
2551 can properly handle unsigned types.
d528b1ce 2552 (make_uid, make_gid): Remove.
58a12889 2553
987c9327
AS
2554 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
2555 types again.
2556
522d013a 2557 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
2558 (system_process_attributes): Likewise.
2559
905a9ed3
DN
25602009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
2561
2562 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
2563
2564 * eval.c (Fautoload): Purecopy the filename. Simplify.
2565
2566 * category.c (Fdefine_category): Purecopy docstring.
2567
a599b3e8
AS
25682009-10-23 Andreas Schwab <schwab@linux-m68k.org>
2569
7b792fc9
AS
2570 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
2571
a599b3e8
AS
2572 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
2573
b35ac83e
CY
25742009-10-23 Chong Yidong <cyd@stupidchicken.com>
2575
2576 * window.c (Fwindow_edges, Fwindow_pixel_edges)
2577 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
2578 (Bug#4775).
2579
e8903e00
SM
25802009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2581
2582 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
2583 (init_fileio_once):
2584 * lisp.h (init_fileio_once): Remove.
2585 * emacs.c (main): Don't call init_fileio_once.
2586
8f43cbf3
DN
25872009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
2588
2589 * puresize.h (BASE_PURESIZE): Increase to 1430000.
2590
26898943
AS
25912009-10-21 Andreas Schwab <schwab@linux-m68k.org>
2592
2593 * doprnt.c (doprnt): Fix overflow check.
2594
5c646d5a
JD
25952009-10-21 Jan Djärv <jan.h.d@swipnet.se>
2596
3132a7ea
JD
2597 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
2598
5c646d5a
JD
2599 * xterm.h (x_wait_for_event): Declare it.
2600
2601 * xterm.c (pending_event_wait): New variable.
2602 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
2603 see pending_event_wait.eventtype.
2604 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
2605 (x_new_font): Call change_frame_size with new rows/columns before we
2606 try to resize the frame.
5c646d5a 2607 (x_wait_for_event): New function.
d528b1ce
SM
2608 (x_set_window_size_1): Don't change gravity unless change_gravity
2609 is set.
5c646d5a
JD
2610 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
2611 don't change frame size, instead wait for the ConfigureNotify.
2612 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
2613 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
2614 (x_initialize): Initialize pending_event_wait.
2615
2616 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
2617 size.
2618
2619 * widget.c (EmacsFrameSetValues): Add comment.
2620 (EmacsFrameSetCharSize): Just call x_set_window_size.
2621
2622 * gtkutil.c (xg_frame_set_char_size): Flush events and call
2623 x_wait_for_event.
d528b1ce 2624 (flush_and_sync): Remove again.
5c646d5a
JD
2625 (xg_get_font_name): Suggest monospace if no previous font is known.
2626
e9c1637d
SM
26272009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
2628
2629 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 2630 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 2631
5a72cccb
YM
26322009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2633
2634 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
2635 processing pending events when event is filtered for input method.
ab04798f 2636 (Bug#3681)
5a72cccb 2637
2629aa37
JB
26382009-10-20 Juanma Barranquero <lekktu@gmail.com>
2639
2640 * fns.c: Add #endif accidentally removed in previous change.
2641
c3417a74
DN
26422009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2643
2644 * fns.c: Remove code for unsupported system: MAC_OS.
2645 * image.c: Likewise. Include setjmp.h.
2646
9685cef2
JD
26472009-10-19 Jan Djärv <jan.h.d@swipnet.se>
2648
2649 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
2650 pixel -1 (bug #4742).
2651
d7306fe6
DN
26522009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2653
019d2c4c
DN
2654 * process.c (create_pty): Remove conditionals for no longer
2655 supported systems: UNIPLUS and RTU.
2656
ee6bacd4
DN
2657 * xterm.c:
2658 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
2659
d7306fe6
DN
2660 * alloc.c: Do not define struct catchtag.
2661 * eval.c: Move struct catchtag definition ...
2662 * lisp.h: ... here.
2663
2664 * image.c: Move png.h #include earlier to avoid warnings.
2665
2666 * xterm.c:
2667 * xsmfns.c:
2668 * xselect.c:
2669 * xrdb.c:
2670 * xmenu.c:
2671 * xftfont.c:
2672 * xfont.c:
2673 * xfns.c:
2674 * xfaces.c:
2675 * xdisp.c:
2676 * window.c:
2677 * widget.c:
2678 * w32xfns.c:
2679 * w32uniscribe.c:
2680 * w32term.c:
2681 * w32select.c:
2682 * w32reg.c:
2683 * w32proc.c:
2684 * w32menu.c:
2685 * w32inevt.c:
2686 * w32heap.c:
2687 * w32font.c:
2688 * w32fns.c:
2689 * w32console.c:
2690 * w32.c:
2691 * w16select.c:
2692 * vm-limit.c:
2693 * unexsol.c:
2694 * unexec.c:
2695 * unexcw.c:
2696 * unexaix.c:
2697 * undo.c:
2698 * tparam.c:
2699 * textprop.c:
2700 * terminfo.c:
2701 * terminal.c:
2702 * termcap.c:
2703 * term.c:
2704 * syntax.c:
2705 * sound.c:
2706 * sheap.c:
2707 * search.c:
2708 * scroll.c:
2709 * region-cache.c:
2710 * regex.c:
2711 * ralloc.c:
2712 * process.c:
2713 * print.c:
b024548b
DN
2714 * nsterm.m:
2715 * nsselect.m:
2716 * nsmenu.m:
2717 * nsimage.m:
2718 * nsfont.m:
2719 * nsfns.m:
d7306fe6
DN
2720 * msdos.c:
2721 * minibuf.c:
2722 * menu.c:
2723 * marker.c:
2724 * macros.c:
2725 * keymap.c:
2726 * keyboard.c:
2727 * intervals.c:
2728 * insdel.c:
2729 * indent.c:
2730 * gtkutil.c:
2731 * ftxfont.c:
2732 * ftfont.c:
2733 * fringe.c:
2734 * frame.c:
2735 * fontset.c:
2736 * font.c:
2737 * fns.c:
2738 * floatfns.c:
2739 * filelock.c:
2740 * fileio.c:
2741 * emacs.c:
2742 * editfns.c:
2743 * dosfns.c:
2744 * doprnt.c:
2745 * doc.c:
2746 * dispnew.c:
2747 * dired.c:
2748 * dbusbind.c:
2749 * data.c:
2750 * composite.c:
2751 * coding.c:
2752 * cmds.c:
2753 * cm.c:
2754 * chartab.c:
2755 * charset.c:
2756 * character.c:
2757 * ccl.c:
2758 * category.c:
2759 * casetab.c:
2760 * casefiddle.c:
2761 * callproc.c:
2762 * callint.c:
2763 * bytecode.c:
2764 * buffer.c:
2765 * atimer.c: Include setjmp.h. (Bug#4643)
2766
fd5f21e6
SM
27672009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
2768
4c0354d7
SM
2769 Remove leftover table unibyte_to_multibyte_table.
2770 * character.c (unibyte_to_multibyte_table): Remove.
2771 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
2772 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
2773 * character.h (UNIBYTE_TO_CHAR): New macro.
2774 (MAKE_CHAR_MULTIBYTE): Use it.
2775 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
2776 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
2777 (message_dolog, set_message_1):
2778 * search.c (Freplace_match):
2779 * editfns.c (Fcompare_buffer_substrings):
2780 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
2781 (concat):
2782 * insdel.c (copy_text, count_size_as_multibyte):
2783 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
2784 * term.c (produce_glyphs):
2785 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
2786 * regex.c (RE_CHAR_TO_MULTIBYTE):
2787 * cmds.c (internal_self_insert):
2788 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
2789
fd5f21e6
SM
2790 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
2791
4418646e
DN
27922009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
2793
2794 * puresize.h (BASE_PURESIZE): Increase to 1310000.
2795
35f5c1d2
JB
27962009-10-16 Juanma Barranquero <lekktu@gmail.com>
2797
2798 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
2799
a0cd8f6b
AR
28002009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
2801
2802 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
2803 still needed under Tiger.
2804
2805 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
2806
2807 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
2808 __Apple__.
2809
2810 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
2811
01a8d3fa
KH
28122009-10-15 Kenichi Handa <handa@m17n.org>
2813
2814 * print.c (print_object): Escape a symbol like "2E10" too.
2815
bf6c75c9 28162009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
2817
2818 Cleanups and changes for 64-bit compile under Snow Leopard.
2819 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
2820
2821 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
2822
c5959062 2823 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
2824 (ns_findfonts, nsfont_list_family): Use long format in printf, and
2825 cast argument.
2826 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 2827 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
2828
2829 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
2830
2831 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
2832 where appropriate.
2833
2834 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
2835 where appropriate.
6e4780c5
JB
2836 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
2837 Use stringWithUTF8String.
bf6c75c9
AR
2838 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
2839
6e4780c5
JB
2840 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
2841 Add formal protocol mention to inheritance.
bf6c75c9
AR
2842 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
2843
6e4780c5
JB
2844 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
2845 Fix printf format.
bf6c75c9
AR
2846 (ns_query_color): Use CGFloat where appropriate.
2847 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 2848 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
2849 argument.
2850
3d87f118
AR
2851 * config.in (NS_HAVE_NSINTEGER): Drop.
2852
a95c8102
AR
2853 * dbusbind.c (dbus-method-return-internal)
2854 (dbus-method-error-internal): Use long format in printf, and cast
2855 argument.
2856
2857 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
2858 in printf, and cast argument.
2859
6873acca 2860 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
2861 cast argument.
2862
9ec6f100
GM
28632009-10-11 Glenn Morris <rgm@gnu.org>
2864
2865 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
2866
5be883cd
JD
28672009-10-08 Jan Djärv <jan.h.d@swipnet.se>
2868
2869 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
2870 menu bar with a small width so it doesn't enlarge the frame.
2871
d7a39b51
JB
28722009-10-08 Juanma Barranquero <lekktu@gmail.com>
2873
2874 * fontset.c (Fset_fontset_font): Fix typos in error messages.
2875
0c2b6f8e
GM
28762009-10-06 Glenn Morris <rgm@gnu.org>
2877
2878 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
2879 SOME_MACHINE_LISP (this enters indirectly via DOC).
2880
e02131a2
EZ
28812009-10-05 Eli Zaretskii <eliz@gnu.org>
2882
2883 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
2884
b4744254
EZ
28852009-10-04 Eli Zaretskii <eliz@gnu.org>
2886
2887 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
2888 Doc fix.
2889
dbf64827
JB
28902009-10-03 Martin Rudalics <rudalics@gmx.at>
2891
2892 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
2893
e9a0aef8
MA
28942009-10-02 Michael Albinus <michael.albinus@gmx.de>
2895
d528b1ce 2896 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
2897 used anymore outside fileio.c.
2898
2899 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
2900
64eb2b56
JB
29012009-10-01 Juanma Barranquero <lekktu@gmail.com>
2902
2903 * lisp.h (Qdelete_directory_internal):
2904 Declare, instead of Qdelete_directory.
2905
2906 * w32fns.c (Fsystem_move_file_to_trash): Use it.
2907
9d28c33e
SM
29082009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
2909
2910 * eval.c (Fcalled_interactively_p): Add `kind' argument.
2911
9d8f3bd9
MA
29122009-10-01 Michael Albinus <michael.albinus@gmx.de>
2913
9d28c33e 2914 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
2915 Fdelete_directory. It is not a command anymore. It has no file
2916 name handler.
2917
9694740b
SM
29182009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
2919
2920 * xdisp.c (get_next_display_element): Use an enum in last change.
2921
748e162f
KH
29222009-09-28 Kenichi Handa <handa@m17n.org>
2923
9694740b 2924 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
2925 unibyte_display_via_language_environment in handling
2926 Vnobreak_char_display.
2927
17efd58d
AR
29282009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2929
2930 * nsterm.h (ns_app_name): New extern variable.
2931
2932 * nsterm.m (ns_app_name): New variable.
2933 (ns_term_init): Set and use it.
2934 (ns_term_shutdown): Use it.
2935
2936 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
2937 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
2938
2939 * nsfns.m (ns_set_name_iconic, ns_set_name)
2940 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
2941 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
2942
9694740b
SM
2943 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
2944 Remove double-casting in client_data comparison.
31c2d412 2945
3208cb35
YM
29462009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2947
2948 * keyboard.c (make_lispy_event): Remember last wheel direction.
2949 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
2950
b7d552d6
GM
29512009-09-26 Glenn Morris <rgm@gnu.org>
2952
2953 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
2954 internal.elc. Add term/pc-win.elc.
2955 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
2956 term/x-win.elc.
2957 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
2958 term/w32-win.elc.
2959 (NS_SUPPORT): New.
2960 (lisp): Add NS_SUPPORT.
2961 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
2962
4ff670a8
DR
29632009-09-25 David Reitter <david.reitter@gmail.com>
2964
2965 * nsmenu.m (EmacsMenu-clear): Recognize application menu
2966 on Mac OS X 10.6+ (bug#4513).
2967
feabfb6c
JB
29682009-09-24 Juanma Barranquero <lekktu@gmail.com>
2969
2970 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
2971 some parts of Emacs code (like font selection) don't grok them.
2972 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 2973
de59072a
AS
29742009-09-24 Andreas Schwab <schwab@redhat.com>
2975
2976 * coding.c (decode_coding_iso_2022): Fix operator precedence.
2977
a489517b
JB
29782009-09-24 Juanma Barranquero <lekktu@gmail.com>
2979
2980 * dired.c (Fdirectory_files): Fix typo in docstring.
2981
0592970c
AR
29822009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2983
2984 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
2985 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
2986 (EmacsScroller-setPosition:portion:whole:): Remove -display call
2987 under GNUstep.
2988 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
2989
2990 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
2991 glyph advancement.
2992
48e8a88b
AR
29932009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2994
2995 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 2996 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
2997
2998 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
2999 deleted (bug #4492).
3000
e14f0a78
AR
3001 * nsfont.m (Vns_reg_to_script): New lisp variable.
3002 (syms_of_nsfont): Declare it.
3003 (ns_registry_to_script): New function.
3004 (ns_get_req_script): Call it.
3005 (ns_findfonts): Don't give up on non-unicode registry.
3006
3007 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3008
5b650faa
SM
30092009-09-20 Tom Tromey <tromey@redhat.com>
3010
3011 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3012 batch mode (bug#4228).
3013
a489517b 30142009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
3015
3016 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 3017 carefully. (Bug #4339)
0bae4e09 3018
fcfe06f3
CY
30192009-09-18 Chong Yidong <cyd@stupidchicken.com>
3020
d798ba87 3021 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 3022
31642728
AR
30232009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3024
3025 * emacs.c (inhibit_x_resources): Update doc string for NS.
3026 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 3027 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
3028
3029 * nsterm.h (ns_no_defaults): Remove.
3030
3031 * nsterm.m (ns_no_defaults): Remove.
3032 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3033 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
3034 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3035 don't update the NSWindow itself.
3036 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 3037 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
3038
3039 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3040 ns_use_qd_smoothing.
3041
3042 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3043 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 3044 (x-close-connection): Drop PSFlush() under OS X.
a489517b 3045 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 3046
8686ac71
JB
30472009-09-17 Juanma Barranquero <lekktu@gmail.com>
3048
3049 * emacs.c (inhibit_x_resources): New variable.
3050 (main) [HAVE_NS]: Don't process --quick command line option.
3051 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3052
3053 * lisp.h (inhibit_x_resources): Declare it extern.
3054
3055 * w32reg.c (x_get_string_resource):
3056 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3057
e227ba05
EZ
30582009-09-17 Eli Zaretskii <eliz@gnu.org>
3059
362654a6
JB
3060 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3061 Add lisp/term/internal.elc.
e227ba05 3062
742d40e8
SM
30632009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3064
3065 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3066 (bug#4461).
3067
005bd5a2
DN
30682009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3069
3070 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3071
3072 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3073 (OBJECTS_MACHINE): Remove, unused.
3074
f9af9719
SM
30752009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3076
3077 * frame.c (x_get_resource_string): Remove unused.
3078
0307c7d2
JD
30792009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3080
3081 * xterm.c (x_new_font): Call change_frame_size before calling
3082 x_set_window_size, in case frame size won't change.
3083
3084 * frame.c (x_set_font): Remove dead code.
3085
428b13d6
SM
30862009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3087
3088 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3089
5766c380
SM
30902009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3091
3092 * lread.c (Fload): Don't output a message after loading an obsolete
3093 package any more (done in Lisp now).
3094
2fd0161b
CY
30952009-09-12 Chong Yidong <cyd@stupidchicken.com>
3096
3097 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3098
bc5e75b6
SM
30992009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3100
3101 * keymap.c (Fwhere_is_internal): Use nconc2.
3102
c31c985e
AM
31032009-09-11 Alan Mackenzie <acm@muc.de>
3104
3105 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3106 batch mode.
3107
78012bd2
AS
31082009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3109
3110 * xdisp.c (display_mode_element): Detect cycles.
3111
9d889332
SM
31122009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3113
3114 * keymap.c (where_is_internal): Don't erroneously return nil right after
3115 filling the cache.
3116 (where_is_internal_1): Fix up typo.
3117
7ab5d780
GM
31182009-09-11 Glenn Morris <rgm@gnu.org>
3119
3120 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3121 share a common doc-string.
3122
5238a749
SM
31232009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3124
66d77eda
SM
3125 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3126 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3127
5238a749
SM
3128 * keymap.c (QCadvertised_binding): New constant.
3129 (syms_of_keymap): Initialize it.
3130 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3131 if applicable.
3132
19f48442
SM
31332009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3134
50d4ba39
SM
3135 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3136 (parse_menu_item): Streamline since bindings are recomputed all the
3137 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3138 more and don't support lmenu's menu-alias any more either.
3139
a88a5372
SM
3140 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3141 (where_is_internal): Strip it down to only traverse the keymaps.
3142 Move the cache handling from Fwhere_is_internal to here.
3143 (Fwhere_is_internal): Move the handling of remapping and the choice of
3144 the best binding from where_is_internal to here.
3145 Unify the cached/noncached paths, so remapping is also handled
3146 correctly when the cache is used, and so the cache can be used to
3147 speed up remap-handling when applicable.
3148 Give preference to non-remapped bindings.
3149 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3150 non-remapped bindings.
3151 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3152 command remapping.
3153
19f48442
SM
3154 * xdisp.c (display_mode_element): Move list length limit from 50 to
3155 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3156
599498c3 31572009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
3158
3159 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3160
f9b7b5ac
SM
31612009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3162
a53af587
JB
3163 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3164 (Bug#4334)
3165
f9b7b5ac
SM
3166 * keymap.c (where_is_internal): Filter out shadowed remappings.
3167 Assume that where_is_internal returns unshadowed bindings to simplify
3168 the code and get rid of the gotos. Use ASIZE.
3169
04f4b72d
JD
31702009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3171
4da146f2
JD
3172 * xterm.c (x_focus_changed): If we get a focusout and pointer
3173 is invisible, make it visible.
3174
04f4b72d
JD
3175 * xterm.h: Remove condition for declaration of
3176 x_*_window_to_frame.
3177
7cef7ce3
SM
31782009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3179
3180 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3181 initial terminal as well.
3182
a54fa5b7
JD
31832009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3184
3185 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3186 x_menubar_window_to_frame.
a54fa5b7 3187
50426a04 3188 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
3189 (XTmouse_position): Do not return valid positions
3190 for clicks in the menubar and the toolbar for Gtk+.
3191
3192 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3193 if the widget for the event has the same top level as a frame,
3194 return the frame.
3195 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3196 internal windows, bug #4122.
3197 (x_non_menubar_window_to_frame): Remove.
3198
5a021dd0
GM
31992009-09-02 Glenn Morris <rgm@gnu.org>
3200
3201 * buffer.c (default-major-mode): Move most of the doc from here...
3202 (major-mode): ... to here.
3203
548fe2f3
NR
32042009-08-30 Nick Roberts <nickrob@snap.net.nz>
3205
3206 * process.c (wait_reading_process_output): Keep the descriptor
3207 when pty is used by a non-child process, e.g., in I/O buffer of
3208 GDB this allows inferior to be restarted.
3209
e0840eef
EZ
32102009-08-29 Eli Zaretskii <eliz@gnu.org>
3211
3212 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3213 both branches into one.
3214
82e98df4
SM
32152009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3216
3217 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3218 (main): Use enable-multibyte-characters rather than
3219 default-enable-multibyte-characters. Output a warning message when
3220 running a unibyte session.
3221
890617cb
YM
32222009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3223
3224 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3225 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3226 (copy_data_segment): Also copy __program_vars section.
3227 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3228 (dump_it) [LC_DYLD_INFO]: Use it.
3229
3230 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3231
e7adeadc
EZ
32322009-08-28 Eli Zaretskii <eliz@gnu.org>
3233
3234 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3235 $(SRC)/buildobj.h.
3236 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3237 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3238 $(SRC)/buildobj.h.
3239 (clean): Add buildobj.h.
3240
3ed8bbdc
TZ
32412009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3242
3243 * print.c (print_object): Set escapeflag to 1 when printing
3244 hashtable keys and values.
3245
155a6764
SM
32462009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3247
3248 * lread.c (read_integer): Use doubles (and potentially return a float
3249 number) as we do in string-to-number.
3250 (read1): Use strtol to read integers, signal errors on strtol's
3251 overflow and use floats if strtol's output is too large for
3252 Elisp integers.
3253
877610de
EZ
32542009-08-27 Eli Zaretskii <eliz@gnu.org>
3255
3256 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3257 (make-buildobj-SH): Fix last change.
3258 (SRC): Move to before where it's first used.
3259
ef73e7be
KH
32602009-08-27 Kenichi Handa <handa@m17n.org>
3261
550c8289
KH
3262 * process.c (send_process): Use encode_coding_object instead of
3263 encode_coding_string to perform eol-conversion even if the string
3264 is unibyte.
3265
60afa08d
KH
3266 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3267 character.
3268
ef73e7be 3269 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3270 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3271
7b3a82d7
DN
32722009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3273
5654bf63
DN
3274 * callproc.c (Fcall_process): Remove always true #if.
3275
7b3a82d7
DN
3276 * lisp.h: Replace #if 0 code for checking with text pointing to
3277 the --enable-checking configure flag.
3278
3279 * emacs.c (main): Mention the --enable-profiling configure flag
3280 instead of using CFLAGS.
3281
878bde49
KR
32822009-08-26 Ken Raeburn <raeburn@raeburn.org>
3283
3284 * Makefile.in (buildobj.h): New target.
3285 (doc.o): Depend on it.
3286 (temacs${EXEEXT}): Don't generate buildobj.lst.
3287 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3288 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3289 ($(BLD)/doc.$(O)): Depend on it.
3290 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3291 provided by Eli Zaretskii.)
3292 ($(TEMACS)): Don't generate buildobj.lst.
3293 * doc.c: Include buildobj.h.
3294 (buildobj): New static variable.
3295 (Fsnarf_documentation): Use it, instead of opening and reading
3296 buildobj.lst.
3297
1574224c
MA
32982009-08-25 Michael Albinus <michael.albinus@gmx.de>
3299
3300 * dbusbind.c (Fdbus_call_method)
3301 (Fdbus_call_method_asynchronously): Use English numeric format for
3302 timeout values in doc string.
3303
d9da2f45
KH
33042009-08-25 Kenichi Handa <handa@m17n.org>
3305
ef73e7be
KH
3306 * alloc.c (mark_char_table): New function.
3307 (mark_object): Use mark_char_table for a char-table.
3308
d9da2f45
KH
3309 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3310 (CHAR_TABLE_REF): Use it.
3311
c8edcc01
KR
33122009-08-23 Ken Raeburn <raeburn@raeburn.org>
3313
3314 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3315 before invoking the newly build emacs to check for load-path
3316 shadowing.
3317
7763401b
GM
33182009-08-22 Glenn Morris <rgm@gnu.org>
3319
3320 * Makefile.in (bootstrap_exe): New variable.
3321 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3322 Use ${bootstrap_exe}.
3323
729eadda
EZ
33242009-08-22 Eli Zaretskii <eliz@gnu.org>
3325
3326 * coding.h (encode_coding_string): Don't encode unibyte strings.
3327 (Bug#4047)
3328
eb4c6ace
MA
33292009-08-22 Michael Albinus <michael.albinus@gmx.de>
3330
3331 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3332
3333 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3334 intended as hotfix only.
3335 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3336
36e34d1b
AR
33372009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3338
3339 * nsterm.m (ns_get_color): Update documentation properly for last
3340 change, and clean up loose ends in the code left by it. Fix
3341 longstanding bug with 16-bit hex parsing, and add support for
3342 yet another X11 format (rgb:r/g/b) for compatibility.
3343 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3344 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3345
f983eb8a
SM
33462009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3347
3348 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3349
3f56d3c6
MA
33502009-08-20 Michael Albinus <michael.albinus@gmx.de>
3351
3352 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3353 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3354 (xd_initialize, xd_pending_messages): Check, whether
3355 $DBUS_SESSION_BUS_ADDRESS is set.
3356
fb641d68
YM
33572009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3358
3359 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3360
3361 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3362
cf59a374
GM
33632009-08-20 Glenn Morris <rgm@gnu.org>
3364
3365 * emacs.c (system-type): Doc fix.
3366
1373f3be
SM
33672009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3368
3369 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3370 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3371
058ed861
MA
33722009-08-18 Michael Albinus <michael.albinus@gmx.de>
3373
1373f3be
SM
3374 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3375 New functions.
058ed861
MA
3376 (xd_initialize): Revert change from 2009-08-16.
3377
563a866e 33782009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
3379
3380 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 3381 font-group vector, return nil.
5fc05db0 3382
e42bdf01
CY
33832009-08-17 Chong Yidong <cyd@stupidchicken.com>
3384
3385 * process.c (status_notify): Don't perform redisplay.
3386 (Fdelete_process, list_processes_1, process_send_signal):
3387 Expliticly perform redisplay.
3388 (wait_reading_process_output): Always check process status, but
3389 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
3390
4230ab74
KR
33912009-08-17 Ken Raeburn <raeburn@raeburn.org>
3392
1373f3be 3393 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
3394 (XFLOAT_INIT): New macro for storing a float value.
3395 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
3396 * fns.c (sxhash): Copy out the value of a float in order to
3397 examine its bytes.
3398 * dbusbind.c (xd_append_arg): Likewise.
3399
4230ab74
KR
3400 * emacs.c (main): Don't call syms_of_data twice.
3401
a0645cdd
MA
34022009-08-16 Michael Albinus <michael.albinus@gmx.de>
3403
3404 * dbusbind.c (xd_initialize): Add connection file descriptor to
3405 input_wait_mask, in order to let select() detect, whether a new
3406 message has been arrived.
ca4f31ea 3407 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 3408
485db0ba
MA
34092009-08-15 Michael Albinus <michael.albinus@gmx.de>
3410
1373f3be
SM
3411 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
3412 New functions.
485db0ba
MA
3413
3414 * lisp.h (xd_pending_messages): Declare.
3415
3416 * keyboard.c (readable_events): Call xd_pending_messages.
3417
b5b98ff4
CY
34182009-08-15 Chong Yidong <cyd@stupidchicken.com>
3419
1373f3be 3420 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 3421
f8354c6e
CY
3422 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
3423
b5b98ff4
CY
3424 * buffer.c (set_buffer_internal_1)
3425 (swap_out_buffer_local_variables): Check for unbound local
3426 variables (Bug#4138).
3427
8b9fc636
EZ
34282009-08-14 Eli Zaretskii <eliz@gnu.org>
3429
3430 * process.c (create_pty): Fix last change.
3431
ce959360
CY
34322009-08-13 Chong Yidong <cyd@stupidchicken.com>
3433
3434 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
3435 (xbm_load_image): Caller changed.
64b807c9 3436 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 3437
c7baf7e9
NR
34382009-08-13 Nick Roberts <nickrob@snap.net.nz>
3439
3440 * process.c (create_pty): New function.
3441 (Fstart_process): Use it to allow Emacs to just associate a pty
3442 with the buffer. See associated change in gdb-mi.el.
3443 (list_processes_1): Deal with no program name.
3444 (start_process_unwind): Use pid == -2 to mean no process.
3445
1ac9108a
SM
34462009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
3447
3448 * cmds.c (nonundocount): New global variable.
3449 (keys_of_cmds): Initialize it.
3450 (Fself_insert_command): Use it to combine upto 20 sequential chars
3451 into a single undo entry, just like the Qself_insert_command code in
3452 keyboard.c does.
3453 Call frame_make_pointer_invisible, also like the Qself_insert_command
3454 code in keyboard.c does.
3455 * keyboard.c (command_loop_1): Use the new global nonundocount rather
3456 than its own local replacement for it.
3457
e267324c
KR
34582009-08-10 Ken Raeburn <raeburn@raeburn.org>
3459
1ac9108a 3460 * fns.c (concat): Don't re-set string length to its current value.
77437343 3461
1ac9108a
SM
3462 * coding.h (decode_coding_string, encode_coding_string):
3463 Use SBYTES macro.
f0bed503 3464
1ac9108a 3465 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
3466 (doprnt): Merge with doprnt1, discarding lispstrings code.
3467 * lisp.h (doprnt_lisp): Don't declare.
3468
416e006d
JL
34692009-08-07 Juri Linkov <juri@jurta.org>
3470
3471 * puresize.h (BASE_PURESIZE): Increase to 1270000.
3472
6f7d5780
DN
34732009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3474
3475 * print.c (syms_of_print): Undo previous change.
3476
f19a0f5b
TZ
34772009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
3478
3479 * lread.c (read1, syms_of_lread): Read hashtables back from the
3480 readable format.
3481
3482 * print.c (print_preprocess, print_object): Print hashtables fully
3483 and readably.
3484 (syms_of_print): Provide 'hashtable-print-readable.
3485
b9173dc2
AR
34862009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3487
3488 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
3489 no family set.
3490 (nsfont_open): Handle case when entity has no family.
3491
1586503c
AR
34922009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3493
3494 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
3495 element, not a list, for match case.
3496
087048cd
KH
34972009-07-28 Kenichi Handa <handa@m17n.org>
3498
3499 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
3500 rigidly.
3501
3502 * xfont.c (xfont_list_pattern): Don't ignore the return value of
3503 font_parse_xlfd. Check font properties more rigidly.
3504
780c2506
DN
35052009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
3506
31fd7c5c
JB
3507 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
3508 bsd-common.h.
780c2506 3509
a8c0cc18
KH
35102009-07-27 Kenichi Handa <handa@m17n.org>
3511
3512 * xfaces.c (face_with_height): Call font_clear_prop.
3513
4fbe2306
CY
35142009-07-26 Chong Yidong <cyd@stupidchicken.com>
3515
111d9af3
CY
3516 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
3517
3518 * xterm.c (x_term_init): Use Qx.
3519
4fbe2306
CY
3520 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
3521
1ac9108a 3522 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
3523 (ns_get_color): Revert 2009-07-16 change.
3524
beb0b7f9
EZ
35252009-07-25 Eli Zaretskii <eliz@gnu.org>
3526
3527 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 3528 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 3529
2baf5e76
KR
35302009-07-25 Ken Raeburn <raeburn@raeburn.org>
3531
1ac9108a
SM
3532 * coding.h (decode_coding_string, encode_coding_string):
3533 Use SCHARS macro.
8890e5f5 3534
2baf5e76 3535 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 3536 (load_depth): Delete.
2baf5e76
KR
3537 (Qload_in_progress): New variable.
3538 (load_unwind): Don't reference load_depth or load_in_progress.
3539 (Fload): Likewise; specbind Qload_in_progress instead.
3540 (init_lread): Don't initialize load_depth.
3541 (syms_of_lread): Initialize and protect Qload_in_progress.
3542
1395c6f5
AR
35432009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3544
3545 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
3546
4e2f36cf
AR
35472009-07-23 Yavor Doganov <yavor@gnu.org>
3548
3549 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
3550
5dd9a6f7
AR
35512009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3552
3553 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
3554 Bugs 3792, 3720, 2402.
3555 (ns_lookup_indexed_color): Check for bad index.
3556 (ns_index_color): Init unused slot to 0.
3557 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
3558 Bug 3714, possibly 3082.
5dd9a6f7 3559
c902b920
JR
35602009-07-22 Jason Rumney <jasonr@gnu.org>
3561
1ac9108a
SM
3562 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
3563 Position IME window at cursor (Bug#2570).
c902b920
JR
3564 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
3565 (globals_of_w32fns): Dynamically load functions required above.
3566
3567 * w32term.c (w32_draw_window_cursor): Send message to reposition
3568 any IME window.
3569
090101cf
CY
35702009-07-21 Chong Yidong <cyd@stupidchicken.com>
3571
3572 * fileio.c: Revert 2009-07-16 changes.
3573 (Vauto_save_include_big_deletions): New variable.
3574 (Fdo_auto_save): Disable auto-save only if
3575 auto-save-include-big-deletions is nil.
3576
e6583e3d
CY
35772009-07-21 Chong Yidong <cyd@stupidchicken.com>
3578
3579 * xdisp.c (move_it_to): For continued lines ending in a tab, take
3580 the overflowed pixels into account (Bug#3879).
3581
ece435a5
KR
35822009-07-21 Ken Raeburn <raeburn@raeburn.org>
3583
3584 * lread.c (load_depth): New variable.
3585 (Fload, load_unwind, init_lread): Set it to the load recursion
3586 depth; set load_in_progress as a simple boolean based on the
3587 current load_depth. (Bug#3892)
3588
40b2d973
AR
35892009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3590
3591 * nsfont.m (ns_has_attribute): Remove.
3592 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
3593
10be7e0d
JL
35942009-07-18 Juri Linkov <juri@jurta.org>
3595
3596 * process.c (Fset_process_query_on_exit_flag): Mention killing
3597 a buffer in docstring.
3598
fa055055
KH
35992009-07-17 Kenichi Handa <handa@m17n.org>
3600
3601 * casetab.c (shuffle): Fix the logic of setting up the cycle.
3602
042f7b69
YM
36032009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3604
3605 * nsfns.m (Fns_set_alpha): Remove function.
3606 (syms_of_nsfns): Don't defsubr it.
3607
3608 * nsterm.m (ns_get_color): Remove incompatible color formats.
3609 (ns_color_to_lisp): Generate #rrggbb color format string.
3610
4be941e3
RS
36112009-07-16 Richard Stallman <rms@gnu.org>
3612
3613 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
3614 (Fset_buffer_auto_saved): Handle save_length = -2.
3615
4e6b227d
CY
36162009-07-16 Chong Yidong <cyd@stupidchicken.com>
3617
3618 * xterm.c (Qx_gtk_map_stock): New var.
3619
3620 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
3621 of calling intern each time.
3622
a1856973
YM
36232009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3624
3625 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
3626 does tiling.
3627
3628 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
3629
497e54d8
KH
36302009-07-14 Kenichi Handa <handa@m17n.org>
3631
72d36834
KH
3632 * font.c (font_vconcat_entity_vectors): New function.
3633 (struct font_sort_data): New member font_driver_preference.
3634 (font_compare): Check font_driver_preference.
3635 (font_sort_entities): The format of the first argument changed.
3636 (font_delete_unmatched): Likewise.
3637 (font_list_entities): The return type changed.
3638 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
3639 (font_find_for_lface): Adjuste for the above changes.
3640 Don't suppress the checking of C even if the repertory supports it.
3641 (Flist_fonts): Adjust for the above changes.
72d36834 3642
1ac9108a
SM
3643 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
3644 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
3645 Reject a font who has adstyle property that is different from a
3646 langname derived from registry property.
1ac9108a 3647 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 3648
b6046155
EZ
36492009-07-13 Eli Zaretskii <eliz@gnu.org>
3650
3651 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
3652 local copy of dirfilename.
3653
fb6b6049
KH
36542009-07-13 Kenichi Handa <handa@m17n.org>
3655
e2402a5e
KH
3656 * chartab.c (sub_char_table_ref_and_range): Fix the range check
3657 against max_char.
3658
fb6b6049
KH
3659 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
3660 calling XSYMBOL (sym).
3661
65156807
EZ
36622009-07-11 Eli Zaretskii <eliz@gnu.org>
3663
1ac9108a
SM
3664 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
3665 New function.
3666 (directory_files_internal) [WINDOWSNT]:
3667 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
3668 the filesystem of the directory is fast or slow.
3669
3670 * w32.c (logon_network_drive): Don't assume PATH is an absolute
3671 file name.
3672 (is_slow_fs): New function.
3673 (stat): Use it to determine whether to issue more system calls to
3674 get accurate file attributes, when w32-get-true-file-attributes is
3675 `local'.
3676
e0ab5fcf
JD
36772009-07-10 Jan Djärv <jan.h.d@swipnet.se>
3678
3679 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 3680 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
3681 parameter font-parameter as default to the font dialog.
3682
784ceded
KH
36832009-07-10 Kenichi Handa <handa@m17n.org>
3684
3685 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
3686
fb8edc0b
EZ
36872009-07-09 Eli Zaretskii <eliz@gnu.org>
3688
1ac9108a 3689 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 3690
fb8edc0b
EZ
3691 * w32.c (stat): Treat UNC file names as residing on remote
3692 drives. (Bug#3542)
3693
635c75b1
KH
36942009-07-09 Kenichi Handa <handa@m17n.org>
3695
3696 * fontset.c (fontset_find_font): Fix previous change.
3697
c1d5ce94
MA
36982009-07-08 Michael Albinus <michael.albinus@gmx.de>
3699
3700 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
3701 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
3702 error flag.
3703
edb61b39
KH
37042009-07-08 Kenichi Handa <handa@m17n.org>
3705
374bf7e4
KH
3706 * fontset.c (fontset_find_font): Fix the logic of handling
3707 charset_matched.
3708 (font_for_char): Delete unused var.
3709 (generate_ascii_font_name): Delete it.
3710
edb61b39
KH
3711 * coding.h (JIS_TO_SJIS2): Fix the code range check.
3712
3713 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
3714 (encode_coding_sjis): Fix the code range check.
3715
0f3f018c
CY
37162009-07-07 Chong Yidong <cyd@stupidchicken.com>
3717
3718 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
3719 (Fexpand_file_name): Copy string data properly (Bug#3772).
3720
fcaf6f3a
JD
37212009-07-07 Jan Djärv <jan.h.d@swipnet.se>
3722
3723 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
3724 first MapNotify.
3725
6809ca75
KH
37262009-07-07 Kenichi Handa <handa@m17n.org>
3727
3728 * character.h (unibyte_has_multibyte_table): Delete extern.
3729 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
3730
3731 * charset.c (Fset_charset_priority): Update charset_unibyte.
3732 (syms_of_charset): Initialize charset_unibyte.
3733
3734 * character.c (unibyte_has_multibyte_table): Delete it.
3735 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
3736 charset_unibyte.
3737 (multibyte_char_to_unibyte_safe): Likewise.
3738 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
3739
1ac9108a 3740 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
3741 (x_produce_glyphs): Likewise.
3742
3743 * .gdbinit (xcharset): Fix the treating $arg0.
3744
ad9e2d54
EZ
37452009-07-04 Eli Zaretskii <eliz@gnu.org>
3746
3747 Emulation of `getloadavg' on MS-Windows.
50426a04 3748 * w32.c: Include float.h.
ad9e2d54
EZ
3749 (g_b_init_get_native_system_info, g_b_init_get_system_times)
3750 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
3751 (get_native_system_info, get_system_times): New functions.
3752 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
3753 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
3754 (globals_of_w32): Initialize g_b_init_get_native_system_info,
3755 g_b_init_get_system_times, and num_of_processors.
3756
0a3472c7
JR
37572009-07-03 Jason Rumney <jasonr@gnu.org>
3758
3759 * w32term.c (w32_initialize): Use standard types.
3760
80904120
EZ
37612009-07-03 Eli Zaretskii <eliz@gnu.org>
3762
3763 * dired.c (Ffile_attributes): Decode user and group names by the
3764 locale's encoding. (Bug#3443)
3765
6978862d
DN
37662009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
3767
f8d23104
DN
3768 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
3769 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
3770
3771 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
3772
3773 * term.c (init_tty): Remove spurious #ifdef.
3774
6978862d
DN
3775 * m/mips.h: Mention this file is also used for netbsd.
3776 * m/pmax.h: Remove file.
3777
e044e4fc
JD
37782009-07-03 Jan Djärv <jan.h.d@swipnet.se>
3779
3780 * xterm.h (struct x_display_info): Add invisible_cursor.
3781 (struct x_output): Add current_cursor.
3782
3783 * xterm.c (XTtoggle_invisible_pointer): New function.
3784 (x_define_frame_cursor): Don't define cursor if invisible or the
3785 same as before. Set current_cursor.
3786 (x_create_terminal): Set toggle_invisible_pointer_hook.
3787
3788 * xfns.c (make_invisible_cursor): New function.
3789 (x_set_mouse_color): Call make_invisible_cursor.
3790 Set current_cursor.
3791 (x_window): Set current_cursor.
3792
3793 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
3794
3795 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
3796 inserting a character.
3797 (read_avail_input): Call frame_make_pointer_visible.
3798
3799 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
3800 (frame_make_pointer_invisible, frame_make_pointer_visible):
3801 New functions.
e044e4fc
JD
3802 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
3803
3804 * frame.h: Declare frame_make_pointer_invisible and
3805 frame_make_pointer_visible.
3806 (struct frame): Add pointer_invisible.
3807
574c8efa
JD
38082009-07-02 Jan Djärv <jan.h.d@swipnet.se>
3809
7b507248
JD
3810 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
3811 frame isn't visible.
3812 (xg_frame_resized): If width/height is -1, get size of window
3813 from X server.
3814
3815 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
3816 for MapNotify.
3817
835bdaa7 3818 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 3819 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 3820 (flush_and_sync): Reintroduce.
574c8efa 3821
3f1c6666 38222009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 3823
31fd7c5c 3824 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
3825
3826 * xterm.c (x_handle_net_wm_state): Also look for sticky.
3827 (x_term_init): Initialize Xatom_net_wm_state_sticky.
3828
3829 * frame.h: Declare Qsticky.
3830
cad9ef74
JD
3831 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
3832
3833 * nsfns.m (ns_frame_parm_handlers): Ditto.
3834
3835 * frame.c: Declare Qsticky.
3836 (frame_parms): Add sticky.
3837
3838 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
3839
3840 * xterm.h: Declare x_set_sticky.
3841
3842 * xterm.c (x_set_sticky): New function.
3843
69b16610
JD
3844 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
3845 (xg_tool_bar_menu_proxy): Attach enter/leave events to
3846 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
3847
3848 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
3849
3850 * frame.c: Qmaximized is new.
3851 (x_set_frame_parameters): Do not handle fullscreen specially.
3852 Only set width and height if explicitly set.
3853 (x_set_fullscreen): Handle Qmaximized.
3854 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
3855 (syms_of_frame): Initialize Qmaximized.
3856
1ac9108a
SM
3857 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
3858 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
3859
3860 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
3861 for Expose event. Add call to x_check_fullscreen for MapNotify event.
3862 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
3863 set gravity to NorthWestGravity when USE_GTK.
3864 (set_wm_state): New function.
31fd7c5c 3865 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
3866 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
3867 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 3868 or the case when no window manager is running. That means remove calls
3f1c6666
JD
3869 to x_real_positions and x_fullscreen_adjust.
3870
3871 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
3872 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
3873 flush_and_sync.
3874 (xg_height_changed): New function.
3875 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
3876 and gtk_window_set_policy. Set frame gravity after parsing the
3877 geometry string.
3f1c6666
JD
3878 (xg_update_frame_menubar, free_frame_menubar)
3879 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
3880 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
3881 Remove calls to xg_frame_set_char_size.
3882
fd503d99
KH
38832009-07-01 Kenichi Handa <handa@m17n.org>
3884
3885 * keyboard.c (decode_keyboard_code): New function.
3886 (tty_read_avail_input): Decode the input bytes if necessary.
3887
1ac9108a
SM
3888 * coding.c (setup_coding_system):
3889 Initialize coding->carryover_bytes to 0.
fd503d99
KH
3890 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
3891 use Qno_conversion.
3892
24ed93fb
YM
38932009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3894
3895 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
3896
99061dfc
CY
38972009-06-30 Chong Yidong <cyd@stupidchicken.com>
3898
1ac9108a 3899 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 3900
ff90fbde
JR
39012009-06-30 Jason Rumney <jasonr@gnu.org>
3902
3903 * w32term.c (w32_initialize): Use GetModuleHandle for library that
3904 is already loaded.
3905 Set user model ID if supported (bug#1849).
3906
5f445726
JM
39072009-06-29 Jim Meyering <meyering@redhat.com>
3908
3909 Remove useless if-before-xfree test.
3910 * nsfont.m (nsfont_close): Remove useless test.
3911 * term.c (delete_tty): Likewise.
3912 * w32.c (system_process_attributes): Likewise.
3913 * w32font.c (w32font_close): Likewise.
3914 * xfaces.c (x_free_gc): Likewise.
3915 * xselect.c (buffer): Likewise.
3916
b9607587
AS
39172009-06-28 Andreas Schwab <schwab@linux-m68k.org>
3918
3919 * process.c (send_process): Keep decoded string in a local
3920 variable and protect it from GC. (Bug#3521)
3921
89ba96f4
EZ
39222009-06-28 Eli Zaretskii <eliz@gnu.org>
3923
3924 * term.c (create_tty_output) [MSDOS]: #ifdef away.
3925 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
3926
098a1589
CY
39272009-06-28 Chong Yidong <cyd@stupidchicken.com>
3928
485422be
CY
3929 * xdisp.c (start_display, handle_face_prop)
3930 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
3931 (redisplay_window, try_window_id, produce_image_glyph):
3932 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 3933
098a1589
CY
3934 * xterm.c (x_update_window_begin, x_new_focus_frame)
3935 (x_scroll_bar_handle_click, handle_one_xevent)
3936 (handle_one_xevent, XTread_socket, x_focus_on_frame)
3937 (x_make_frame_visible, x_make_frame_invisible)
3938 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
3939 code chunks that are now obsolete.
3940
78c38319
MA
39412009-06-28 Michael Albinus <michael.albinus@gmx.de>
3942
3943 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
3944 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
3945 for hours, when optimzation is enabled.
3946 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
3947 (xd_read_message): Make them static.
3948
4189ed40
CY
39492009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
3950
3951 * term.c (turn_on_face): Allow simultaneously bold and dim
3952 terminal faces (Bug#3530).
3953
cd9b5e16
CY
39542009-06-27 Chong Yidong <cyd@stupidchicken.com>
3955
4e23bedb
CY
3956 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
3957
cd9b5e16
CY
3958 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
3959 truncation glyphs (Bug#3686).
3960
07cc3c35
GM
39612009-06-27 Glenn Morris <rgm@gnu.org>
3962
3963 * m/pmax.h: Restore file, with only netbsd portions.
3964
31fd7c5c 39652009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 3966
cd9b5e16 3967 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 3968
42d4a64f
KH
39692009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
3970
3971 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
3972 the arg FORCE_SYMBOL.
3973
930fe55b 39742009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
3975
3976 * fontset.c (fontset_find_font): When a usable rfont_def is found
3977 in a fallback font-group, make it the first element of the group.
3978
57ebc3fd
CY
39792009-06-24 Chong Yidong <cyd@stupidchicken.com>
3980
3981 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
3982
f084f942
KH
39832009-06-24 Kenichi Handa <handa@m17n.org>
3984
3985 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
3986 set for C.
3987 (fontset_font): Record the availability of a font for C both in
3988 the realized fontsets of the current one and the default one.
3989
2f686c87
DN
39902009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
3991
3992 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
3993 conditional, it is always defined on AIX.
3994
666e158e
MB
39952009-06-23 Miles Bader <miles@gnu.org>
3996
3997 * window.c (Vrecenter_redisplay): New variable.
3998 (syms_of_window): Initialize it.
3999 (Qtty): New extern declaration.
4000 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4001
c6da7cd2
JM
40022009-06-23 Jim Meyering <meyering@redhat.com>
4003
1ac9108a
SM
4004 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4005 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 4006 pointer dereferences are guaranteed to be valid.
c6da7cd2 4007
678dca3d
KH
40082009-06-23 Kenichi Handa <handa@m17n.org>
4009
74d75424
KH
4010 * emacs.c (main): Call init_font ().
4011
4012 * font.h (Vfont_log): Extern it.
4013 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4014
4015 * font.c (font_sort_entities, font_list_entities)
4016 (font_matching_entity, font_open_entity)
4017 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4018 (Vfont_log): Delete static.
4019 (font_log_env_checked): Delete this variable.
4020 (font_add_log): Don't check font_log_env_checked.
4021 (font_deferred_log): Check Vfont_log.
4022 (init_font): New function.
4023
678dca3d
KH
4024 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4025
4026 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4027
4028 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4029
4030 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4031
4032 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4033 (face_for_char): Don't call font_deferred_log here.
4034 (font_for_char): Likewise.
4035
8a668709
CY
40362009-06-22 Chong Yidong <cyd@stupidchicken.com>
4037
9a01ee33
CY
4038 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4039 rather than its background_width for drawing the overline and
4040 underline (Bug#489).
4041
4042 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4043 rather than its background_width for drawing the overline and
4044 underline (Bug#489).
ec7c9926
CY
4045 (xg_default_icon_file): New variable.
4046 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4047 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 4048
8a668709
CY
4049 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4050 (load_overlay_strings): Remove externs.
4051 (fast_find_position): Function deleted.
4052 (mouse_face_from_buffer_pos): New function, based on
4053 fast_find_position. Correctly handle before-strings,
4054 display-strings, and after-strings (Bug#1220).
4055 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4056
4d4c02d8
CY
40572009-06-21 Chong Yidong <cyd@stupidchicken.com>
4058
1ac9108a 4059 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
4060 (move_it_in_display_line_to, move_it_in_display_line_to)
4061 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4062
70243478
CY
40632009-06-21 Chong Yidong <cyd@stupidchicken.com>
4064
4065 * Branch for 23.1.
4066
13087e59
JR
40672009-06-21 Jason Rumney <jasonr@gnu.org>
4068
4069 * w32term.c (keyboard_codepage): New static variable.
4070 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4071 (w32_read_socket) [WM_CHAR]: Use it to decode character
4072 input (bug#3237).
4073 (w32_initialize): Initialize it.
4074 (codepage_for_locale): New function.
4075
4735b74e
KR
40762009-06-20 Ken Raeburn <raeburn@raeburn.org>
4077
4078 * process.c (status_message): Pass Faset index argument as a lisp
4079 object, so as to work with USE_LISP_UNION_TYPE.
4080
0e727afa
YM
40812009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4082
4083 * coding.c (Ffind_coding_systems_region_internal):
4084 Cache checked characters.
4085
cf299835
KH
40862009-06-18 Kenichi Handa <handa@m17n.org>
4087
1ac9108a 4088 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 4089
90f20d94
AS
40902009-06-18 Andreas Schwab <aschwab@redhat.com>
4091
4092 * xdisp.c (redisplay_internal): Check that the frame is still
4093 live after redisplay of its windows.
4094 (redisplay_windows): Check that the window is still live.
4095
7f1faf1c
KH
40962009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4097
4098 * coding.c (detect_coding_utf_16): Fix previous change.
4099
cc13543e
KH
41002009-06-16 Kenichi Handa <handa@m17n.org>
4101
4102 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4103 UTF-16 by checking the dispersion of Eth and Oth bytes.
4104
977b85f4
AS
41052009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4106
4107 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4108
66bd43d1
KH
41092009-06-15 Kenichi Handa <handa@m17n.org>
4110
4111 * process.c (status_message): Fix previous change. Be sure to
4112 decode a localized string.
4113
cb5ca9c5
YM
41142009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4115
4116 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4117 add comment explaining why.
4118
ec7709ba 41192009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 4120
ec7709ba 4121 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 4122
4b7f335c
AR
41232009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4124
4125 * nsfont.m (ns_attribute_value): Remove.
4126 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4127 (ns_has_attribute): Shrink the normal range.
4128 (ns_findfonts): Don't worry about requested spec in determining
4129 need for synthItal.
e41820ee 4130 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 4131
73b26103
SZ
41322009-06-14 Seiji Zenitani <zenitani@mac.com>
4133
4134 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4135
5753e4da
KH
41362009-06-11 Kenichi Handa <handa@m17n.org>
4137
4138 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4139 overhang for the static composition case.
4140
3561b671
KH
41412009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4142
5753e4da
KH
4143 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4144 overhang for the automatic composition case.
4145
3561b671
KH
4146 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4147 composition case.
4148
852bbd41
CY
41492009-06-10 Chong Yidong <cyd@stupidchicken.com>
4150
4151 * xdisp.c (get_next_display_element): When handling wrap-prefix
4152 and line-prefix, treat \n as a control character (bug#3502).
4153
9903d1e6
KH
41542009-06-10 Kenichi Handa <handa@m17n.org>
4155
4156 * font.c (font_parse_family_registry): Fix for one-char foundry.
4157 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4158
0bcbaaaa
CY
41592009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4160
4161 * process.c (status_message): Fix handling of multibyte signal
4162 string (Bug#3499).
4163
40aa3f13
JM
41642009-06-09 Jim Meyering <meyering@redhat.com>
4165
1f80c7e2
CY
4166 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4167 color name is missing.
40aa3f13 4168
72d51285
KH
41692009-06-09 Kenichi Handa <handa@m17n.org>
4170
4171 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4172 FROM-CODE and TO-CODE are codepoints of CHARSET.
4173
c1d04d84
AR
41742009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4175
4176 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4177
41782009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4179
4180 Changes to support :script/:lang/:otf in NS font driver.
4181 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4182 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4183 indicate not part of font driver interface, and change callers.
4184 (ns_get_family): Remove pointless null check.
4185 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4186 ns_spec_to_descriptor, ns_descriptor_to_entity.
4187 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4188 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4189 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4190 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4191 (ns_get_req_script, ns_accumulate_script_ranges)
4192 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4193 New functions.
4194 (nsfont_list, nsfont_match): Use ns_findfonts.
4195 (nsfont_open): Use font descriptor instead of traits.
4196 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4197 (dump_glyphstring): Rename to ns_dump_glyphstring.
4198
c7eb9816
AR
4199 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4200
c1d04d84
AR
4201 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4202
4203 * fontset.c (fontset_from_font): Remove NS-specific code.
4204
ec7709ba 42052009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4206
4207 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4208 nonactive windows.
4209
31fd7c5c 42102009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4211
1ac9108a 4212 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4213
68852c13 42142009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4215
4216 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4217
6756cd1d
CY
42182009-06-07 Chong Yidong <cyd@stupidchicken.com>
4219
4220 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4221 account for the overflowing of newlines into the last glyph on the
4222 display line (Bug#3482).
4223
28bf482a
DR
42242009-06-05 David Reitter <david.reitter@gmail.com>
4225
ec7709ba
JB
4226 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4227 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4228 Fns_selection_exists_p, Fns_selection_owner_p.
4229
fdb55376
JR
42302009-06-03 Jason Rumney <jasonr@gnu.org>
4231
4232 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4233 available. (Bug#3379)
4234
05129fbe
KH
42352009-05-29 Kenichi Handa <handa@m17n.org>
4236
1ac9108a
SM
4237 * coding.c (get_translation_table):
4238 Check Venable_character_translation.
05129fbe 4239
ec7709ba 42402009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4241
ec7709ba
JB
4242 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4243 (x_make_frame_visible): Move frame to front rather than calling
15891144 4244 ns_raise_frame().
ec7709ba 4245 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4246 isn't key window.
ec7709ba 4247 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4248 drawRect may be called by NSView even if the frame is hidden.
4249
ec7709ba
JB
4250 * nsfns.m (Fx_create_frame): Follow other ports in
4251 determining visibility; default to t. Ensure async_visible is set.
15891144 4252
21f73755
EZ
42532009-05-23 Eli Zaretskii <eliz@gnu.org>
4254
4255 * dired.c (Ffile_attributes): Doc fix.
4256
34001e41
CY
42572009-05-22 Chong Yidong <cyd@stupidchicken.com>
4258
4259 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4260
46306a17
SM
42612009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4262
4263 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4264 and xfont_scratch_props.
4265 (syms_of_xfont): Do it here instead.
4266 (xfont_find_ccl_program): Delete, unused.
4267 (xfont_open): Delete unused var `i'.
4268
ef6e0694
KH
42692009-05-21 Kenichi Handa <handa@m17n.org>
4270
4271 * fontset.c (Qlatin): Don't make it static.
4272
46306a17
SM
4273 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4274 New functions.
ef6e0694
KH
4275 (xfont_scripts_cache, xfont_scratch_props): New variables.
4276 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4277 (xfont_list_pattern): Argument changed. Callers changed.
4278 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4279 (xfont_list): Don't reject a font spec with :script property.
4280 (xfont_has_char): Fix setting of encoding.
4281 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4282 xfont_scratch_props.
4283
42842009-05-19 Kenichi Handa <handa@m17n.org>
4285
46306a17 4286 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4287 Callers changed.
4288
42892009-05-18 Kenichi Handa <handa@m17n.org>
4290
4291 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4292
ac71ced7
SM
42932009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4294
4295 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4296 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4297
1c6d1051
YM
42982009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4299
4300 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4301 (x_delete_terminal): Dissociate resource database from display and
4302 then call XrmDestroyDatabase before closing display.
4303
9b9b779c
AR
43042009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4305
4306 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4307 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4308 whether selected frame is viable before raising it (based on patch
4309 by David Reitter), and improve commentary.
4310 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4311
cccd42d5
KH
43122009-05-15 Kenichi Handa <handa@m17n.org>
4313
4314 * font.c (Ffont_spec): Check arguments.
4315
337fbd17
CY
43162009-05-14 Chong Yidong <cyd@stupidchicken.com>
4317
4318 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4319 weight when testing attributes (Bug#3282).
4320
47a6002f
JD
43212009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4322
4323 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4324 what we expect to get in the next ConfigureNotify event.
4325
9cb363db
YM
4326 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4327 before Xft one (Bug#1696).
4328
b9126609
CY
43292009-05-07 David Reitter <david.reitter@gmail.com>
4330
4331 * nsfns.m (Fx_display_planes): Compute bitplanes using
4332 NSBitsPerPixelFromDepth (Bug#3207).
4333
27a69fd9
CY
43342009-05-10 Chong Yidong <cyd@stupidchicken.com>
4335
4336 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4337
00f37552
TTN
43382009-05-10 Ulrich Mueller <ulm@gentoo.org>
4339
4340 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4341
2d82a920
DR
43422009-05-07 David Reitter <david.reitter@gmail.com>
4343
ec7709ba
JB
4344 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4345 Respect mouse face background.
2d82a920 4346
46b0d52d
DR
43472009-05-07 David Reitter <david.reitter@gmail.com>
4348
ec7709ba
JB
4349 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4350 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4351 in ns_update_begin and ns_update_end.
4352
ce1b23bb
SM
43532009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4354
5996e1b7
SM
4355 * nsfns.m (ns_get_screen): Rewrite.
4356 Don't presume selected-frame is of type `ns'.
4357
ba98e3a0
SM
4358 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4359 all drivers.
4360
ce1b23bb
SM
4361 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4362
bcda200f
YM
43632009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4364
4365 * keyboard.h (add_user_signal): Fix typo in extern.
4366
4367 * lisp.h (add_user_signal): Remove extern.
4368
4369 * unexelf.c (unexec): Consider a section to precede the .bss section
4370 if its addresses overlap that of .bss.
4371 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4372 instead of dumping process.
4373
864660a2
SM
43742009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4375
4376 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4377
50da4e56
SM
43782009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4379
4380 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4381
51520a1a
DN
43822009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4383
4384 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
4385 any statements.
4386
409ea3a1
AS
43872009-05-02 Andreas Schwab <schwab@linux-m68k.org>
4388
59c4c60f
AS
4389 * process.c (read_process_output): Make sure the current buffer is
4390 always restored.
4391
409ea3a1
AS
4392 * coding.c (record_conversion_result): Don't modify
4393 Vlast_code_conversion_error for successful result.
4394 (alloc_destination): Don't clobber conversion result. (Bug#1650)
4395
56f00ed2
KH
43962009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4397
4398 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 4399 (load_charset_map): Remove unnecessary code.
56f00ed2 4400
4491c9d2
DR
44012009-04-30 David Reitter <david.reitter@gmail.com>
4402
35f5b128 4403 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
4404 through f24.
4405
6970f632
CY
44062009-04-30 Chong Yidong <cyd@stupidchicken.com>
4407
4408 * xfaces.c (face_at_buffer_position): New arg base_face_id.
4409
4410 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
4411 face_at_buffer_position.
4412 (face_before_or_after_it_pos, get_next_display_element)
4413 (note_mouse_highlight): Update face_at_buffer_position call.
4414
4415 * term.c (term_mouse_highlight):
4416 * msdos.c (IT_note_mouse_highlight):
4417 * fontset.c (Finternal_char_font):
35f5b128 4418 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
4419
4420 * dispextern.h (face_at_buffer_position): Update prototype.
4421
0c616f63
KH
44222009-04-30 Kenichi Handa <handa@m17n.org>
4423
35f5b128 4424 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 4425
ad3aaf33
AS
44262009-04-29 Andreas Schwab <schwab@linux-m68k.org>
4427
4428 * callproc.c (Fcall_process): Fix GC protection. Make sure
4429 current buffer is always restored.
4430
c3c963a0
YM
44312009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4432
4433 * atimer.c (init_atimer): Also clear stopped_atimers.
4434
4435 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
4436
7e3386cb
YM
4437 * process.c (create_process): Clean up merger residues of
4438 2008-07-17 change.
4439
91f68422
CY
44402009-04-29 Ulrich Mueller <ulm@gentoo.org>
4441
4442 * lread.c (Vread_circle): New variable.
4443 (read1): Disable recursive read if Vread_circle is nil.
4444
24b34550
KH
44452009-04-29 Kenichi Handa <handa@m17n.org>
4446
4447 * fontset.h (set_default_ascii_font): Delete extern.
4448
4449 * fontset.c (set_default_ascii_font): Delete this unused function.
4450
4451 * frame.c (x_set_font): When ARG is a font-object, check if the
4452 font-object matches with the ASCII font-spec of the frame's
9c358bda 4453 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 4454
77bf07e1
AS
44552009-04-28 Andreas Schwab <schwab@linux-m68k.org>
4456
4457 * fns.c (Flocale_info): Protect vector from GC during decoding.
4458
4459 * process.c (Fstart_process): Protect argv strings from GC during
4460 encoding.
4461
2c55aacf
AS
44622009-04-27 Andreas Schwab <schwab@linux-m68k.org>
4463
4464 * sysdep.c: Include <ctype.h>.
4465
b892d3c9
DR
44662009-04-27 David Reitter <david.reitter@gmail.com>
4467
35f5b128 4468 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
4469 Remove commented-out code.
4470
9d0644c4
JB
44712009-04-26 Johan Bockgård <bojohan@gnu.org>
4472
4473 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4474
b7053016
JR
44752009-04-25 Jason Rumney <jasonr@gnu.org>
4476
4477 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
4478
4e8231f3
YM
44792009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4480
4481 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
4482 Swap bytes in short integer if fringe bitmap width > 8.
4483
493dcf2c
KH
44842009-04-23 Kenichi Handa <handa@m17n.org>
4485
4486 * xfaces.c (Fx_list_fonts): If a font size is specified in
4487 PATTERN, set it in returned scalable fonts.
4488
401e9e57
CY
44892009-04-22 Chong Yidong <cyd@stupidchicken.com>
4490
708e05dc
CY
4491 * keyboard.c (Fset_input_meta_mode): Doc fix.
4492
4493 * dispnew.c (Fsend_string_to_terminal): Doc fix.
4494
1ac9108a 4495 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
4496
4497 * coding.c (Fterminal_coding_system): Doc fix.
4498
4499 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
4500 (Fx_display_pixel_height, Fx_display_planes)
4501 (Fx_display_color_cells, Fx_server_max_request_size)
4502 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4503 (Fx_display_mm_height, Fx_display_mm_width)
4504 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
4505 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
4506 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
4507 (check_x_display_info): Handle terminal objects instead of
4508 terminal ids.
4509
401e9e57
CY
4510 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
4511 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
4512 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
4513 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 4514
df80c7f0
KH
45152009-04-21 Kenichi Handa <handa@m17n.org>
4516
5a8f12af 4517 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 4518 (font_score): Check AVGWIDTH too.
908567ef 4519
df80c7f0
KH
4520 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
4521 worst case.
1ac9108a
SM
4522 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
4523 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 4524
705af33f
JR
45252009-04-19 Jason Rumney <jasonr@gnu.org>
4526
4527 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 4528 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
4529
4530 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
4531 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
4532 get_phys_cursor_geometry.
4533
b71ac3dd 4534 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
4535 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
4536 using get_phys_cursor_geometry.
4537
4538 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
4539 correctly calculated.
4540
dc2933eb
JD
45412009-04-19 Jan Djärv <jan.h.d@swipnet.se>
4542
1ac9108a
SM
4543 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
4544 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
4545 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
4546 is deprecated.
4547
973e7849
AS
45482009-04-18 Andreas Schwab <schwab@linux-m68k.org>
4549
4550 * font.c (font_put_frame_data): Use xfree instead of free.
4551
314d66f4
JB
45522009-04-17 Juanma Barranquero <lekktu@gmail.com>
4553
4554 * w32font.c (Qja, Qko): Remove declarations.
4555 (syms_of_w32font): Don't DEFSYM them.
4556
cf702558
CY
45572009-04-17 Chong Yidong <cyd@stupidchicken.com>
4558
4559 * font.c (Qja, Qko): Move definitions here from ftfont.c.
4560
4561 * font.h (Qja, Qko): Extern them.
4562
4563 * ftfont.c (Qja, Qko): Remove declarations.
4564
4565 * xfont.c (Qja, Qko): Remove declarations.
4566
b50504f5
KH
45672009-04-17 Kenichi Handa <handa@m17n.org>
4568
bde25748
KH
4569 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
4570 string from a vector to handle Latin-1 characters correctly.
4571
b50504f5
KH
4572 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
4573 entity even if the cache hits.
4574
f4646fff
AS
45752009-04-16 Andreas Schwab <schwab@linux-m68k.org>
4576
4577 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 4578 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 4579
e7deaab0
AS
4580 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
4581 * lisp.h: Adjust prototypes.
4582
0a0e7d49
CY
45832009-04-16 Chong Yidong <cyd@stupidchicken.com>
4584
4585 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
4586 change (Bug#3003).
4587
3c908a57
KH
45882009-04-16 Kenichi Handa <handa@m17n.org>
4589
1ac9108a 4590 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
4591
4592 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
4593 adstyle.
4594
4595 * ftfont.c (Qja, Qko): Don't make them static.
4596 (enum ftfont_cache_for): New enum.
4597 (fc_charset_table): Undo the previous change.
4598 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
4599 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
4600 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
4601 non-scarable font, try to get AVERAGE_WIDTH.
4602 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
4603 Change ft_face_cache from a list of a hash-table. Don't check
4604 `ja' and `ko' adstyle here.
4605 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
4606 FTFONT_CACHE_FOR_CHARET.
4607 (ftfont_get_charset): Undo the previous change.
1ac9108a 4608 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
4609 (ftfont_close): Likewise.
4610 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
4611
4612 * font.c (font_sort_entites): Change the meaning of the arg
4613 BEST-ONLY. Don't optimize for VEC of lenght 1.
4614 (font_select_entity): Just return the value of font_sort_entites.
4615
4616 * xfaces.c (merge_face_vectors): Reflect font properties in
4617 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
4618 font_clear_prop if a face attribute doesn't change.
4619
3c908a57
KH
4620 * charset.h (charset_ksc5601): Extern it.
4621
4622 * charset.c (charset_ksc5601): New variable.
4623 (Fdefine_charset_internal): Set charset_ksc5601.
4624 (init_charset_once): Initialize charset_ksc5601 to -1.
4625
d65859c3
DN
46262009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
4627
4628 * fileio.c (history_delete_duplicates): Remove unused declaration.
4629
4630 * callint.c (history_delete_duplicates): New declaration.
4631 (Fcall_interactively): Remove command history duplicates when
4632 history_delete_duplicates is true.
4633
3ba010e5
EZ
46342009-04-14 Eli Zaretskii <eliz@gnu.org>
4635
4636 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
4637
06f19b91
KH
46382009-04-14 Kenichi Handa <handa@m17n.org>
4639
4640 * font.c (Ffont_info): Fix docstring. Fix the second element of
4641 the returned value (bug#2949).
4642
2cce8bfc
CY
46432009-04-14 Chong Yidong <cyd@stupidchicken.com>
4644
4645 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
4646
d156542d
KH
46472009-04-14 Kenichi Handa <handa@m17n.org>
4648
4649 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
4650 encoding charset is ascii_compatible.
4651
4652 * charset.c (Fdefine_charset_internal): Make charset
4653 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
4654 code_offset is 0, and covers all ASCII characters.
4655
86fa089e
SM
46562009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4657
4658 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
4659 (ns_string_to_pasteboard_internal):
4660 * nsmenu.m (process_dialog):
4661 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
4662 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
4663 * lisp.h (Fx_load_color_file): Declare.
4664
a8a3728b
KH
46652009-04-13 Kenichi Handa <handa@m17n.org>
4666
1ac9108a 4667 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
4668 (font_select_entity): Suppress the code to optimize for the same
4669 kind of fonts.
4670 (font_load_for_lface): Get a font that supports at least ASCII
4671 characters.
4672
4673 * ftfont.c (Qja, Qko): New variables.
4674 (fc_charset_table): Delete uniquifier data for iso8859-1.
4675 (ftfont_get_latin1_charset): New function.
4676 (get_adstyle_property): New function.
4677 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
4678 bitmap fonts.
4679 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
4680 Delete iso-8859-1 range from the charset of fonts whose adstyle is
4681 `ko' or `ja'.
4682 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 4683 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
4684 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
4685 property.
4686 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
4687 (syms_of_ftfont): DEFSYM Qja and Qko.
4688
483670b5
KH
46892009-04-09 Kenichi Handa <handa@m17n.org>
4690
12b55765
KH
4691 * charset.c (map_charset_chars): For a charset of `superset'
4692 method, fix calculation of code range.
4693
483670b5
KH
4694 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
4695 from the list of extra properties.
4696 (font_clear_prop): Be sure to delete `:name' font property.
4697
57d3b93b
KH
46982009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4699
b4b2c2ca
YM
4700 * dispnew.c (redraw_overlapping_rows): Fix detection of
4701 overlapping for topmost and bottommost rows.
4702
1ac9108a 4703 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 4704
472c3609
JR
47052009-04-06 Jason Rumney <jasonr@gnu.org>
4706
4707 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
4708
ab193662
KH
47092009-04-06 Kenichi Handa <handa@m17n.org>
4710
4711 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
4712
4713 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
4714
0c26f026
KH
47152009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4716
4717 * ftfont.c (ftfont_open): Fix checking of the return value of
4718 FT_Load_Char. Fix setting font->underline_thickness.
4719
e173bbce
CY
47202009-04-04 Chong Yidong <cyd@stupidchicken.com>
4721
4722 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
4723 (Fterminal_parameters, Fterminal_parameter)
4724 (Fset_terminal_parameter): In doc string, refer to terminal
4725 objects rather than terminal ids.
4726
693a2698
EZ
47272009-04-04 Eli Zaretskii <eliz@gnu.org>
4728
4729 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
4730 ret_lim_data. (Bug#2867)
4731
d5221487
CY
47322009-04-03 Chong Yidong <cyd@stupidchicken.com>
4733
4734 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
4735 so they don't get wider than the window, matching 2006-01-23
4736 change to the partner function in xdisp.c (Bug#2800).
4737
223509a3
KH
47382009-04-03 Kenichi Handa <handa@m17n.org>
4739
4740 * print.c (print_object): Make each lowest sub_char_table start a
4741 new line (Bug#2866).
4742
74fcd0b1
KH
47432009-04-02 Kenichi Handa <handa@m17n.org>
4744
4745 * fontset.c (fontset_font): Record no-font when a fontset
4746 explicitly tells not to try another font-specs.
4747
c542407d
SM
47482009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
4749
4750 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
4751
e3869731
KH
47522009-03-30 Kenichi Handa <handa@m17n.org>
4753
d8d2f142
KH
4754 * fontset.c (fontset_from_font): Specify only registry in a
4755 font-spec for all characters supported by that registry.
4756
e3869731
KH
4757 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
4758 even if HAVE_M17N_FLT is not defined.
4759
5da5f805
CY
47602009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
4761
4762 * ftfont.c: Conditionalize prototyping and use of
4763 ftfont_variation_glyphs.
4764
ab226c50
SM
47652009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4766
9628fed7
SM
4767 * frame.c (delete_frame): Work around compiler bug.
4768
4769 * editfns.c (general_insert_function): Adjust to insdel.c changes.
4770 * insdel.c (prepare_to_modify_buffer, signal_before_change):
4771 Some more EMACS_INT.
4772 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
4773
4774 * xdisp.c (dump_glyph): Fix typo.
4775
ae19ba7c
SM
4776 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
4777 (adjust_markers_gap_motion, adjust_markers_for_delete)
4778 (adjust_markers_for_insert, adjust_point)
4779 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
4780 (make_gap, copy_text, count_size_as_multibyte, insert)
4781 (insert_and_inherit, insert_before_markers)
4782 (insert_before_markers_and_inherit, insert_1)
4783 (count_combining_before, count_combining_after, insert_1_both)
4784 (insert_from_string, insert_from_string_before_markers)
4785 (insert_from_string_1, insert_from_gap, insert_from_buffer)
4786 (insert_from_buffer_1, adjust_after_replace)
4787 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
4788 (replace_range_2, del_range, del_range_1, del_range_byte)
4789 (del_range_both, del_range_2, modify_region)
4790 (prepare_to_modify_buffer, signal_before_change)
4791 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
4792 for buffer positions and sizes.
4793 * lisp.h: Adjust prototypes accordingly.
4794
4795 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
4796 (non_regular_inserted, non_regular_nbytes, read_non_regular)
4797 (Finsert_file_contents): Use EMACS_INT for buffer positions.
4798
ab226c50
SM
4799 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
4800
46dfb8fb
JD
48012009-03-27 Jan Djärv <jan.h.d@swipnet.se>
4802
4803 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
4804 lines and columns so we keep the same pixel height and width.
4805
4806 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
4807 the property _NET_WM_STATE has changed.
46dfb8fb
JD
4808 (x_handle_net_wm_state): New function to update frame parameter
4809 fullscreen.
4810 (x_term_init): Initialize atoms for _NET_WM_STATE.
4811
4812 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
4813
d347e494
SM
48142009-03-27 Kevin Ryde <user42@zip.com.au>
4815
4816 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
4817 Gpm_GetEvent as an error that justifies closing the filedescriptor.
4818 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
4819 (Fgpm_mouse_stop): Pass that new parameter.
4820 * termhooks.h (close_gpm): Adjust prototype.
4821
84db11d6
SM
48222009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
4823
c95a5008
SM
4824 * lisp.h (Fx_focus_frame): Declare.
4825
84db11d6
SM
4826 * callint.c (Fcall_interactively): For '^' just delegate the work to
4827 handle-shift-selection.
4828 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
4829
0a1958d6
CY
48302009-03-24 Chong Yidong <cyd@stupidchicken.com>
4831
0bfdff23
CY
4832 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
4833
0a1958d6
CY
4834 * data.c (Qinteractive_form): New variable.
4835 (Finteractive_form): Use it.
4836
4837 * eval.c (Fcommandp): Use Qinteractive_form.
4838
58aec0d6
JR
48392009-03-24 Jason Rumney <jasonr@gnu.org>
4840
4841 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
4842 Calculate total size precisely. Decode environment variables
4843 before substituting. (Bug#38)
4844
553dd618
KH
48452009-03-24 Kenichi Handa <handa@m17n.org>
4846
4847 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 4848 encoding (Bug#2722).
553dd618 4849
c39ea606
JD
48502009-03-23 Jan Djärv <jan.h.d@swipnet.se>
4851
4852 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
4853 that gdpy is set.
4854
bc9b2b5e
AM
48552009-03-22 Alan Mackenzie <acm@muc.de>
4856
4857 * callint.c (Finteractive): Clarify the doc string - even
4858 promptless elements need \n separators.
4859
9f995a76
JR
48602009-03-22 Jason Rumney <jasonr@gnu.org>
4861
4862 * w32term.c (syms_of_w32term): Doc fix for
4863 x-use-underline-position-properties.
4864
22749e9a
EZ
48652009-03-21 Eli Zaretskii <eliz@gnu.org>
4866
4867 * w32.c (getpwuid): Change argument type to unsigned.
4868 (struct w32_id): Change type of `rid' member to unsigned.
4869 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
4870 argument ID to unsigned. All callers changed.
4871 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
4872
e00553bf
EZ
48732009-03-20 Eli Zaretskii <eliz@gnu.org>
4874
4875 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
4876 negative, produce a float value.
4877
4878 * dired.c (make_uid, make_gid): New functions.
4879 (Ffile_attributes): Use them to avoid negative UID and GID.
4880
f761d6b6
JB
48812009-03-20 Juanma Barranquero <lekktu@gmail.com>
4882
4883 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
4884 (syms_of_keyboard) <command-hook-internal, input-method-function>:
4885 Fix typos in docstrings.
4886
d507f8d7
KH
48872009-03-19 Kenichi Handa <handa@m17n.org>
4888
4889 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
4890 changed, use font_load_for_lface to get a new font object.
4891 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
4892
4893 * frame.c (x_set_font): Handle the case that ARG is a cons.
4894
c68845e0
GM
48952009-03-19 Glenn Morris <rgm@gnu.org>
4896
4897 * fileio.c (Fsubstitute_in_file_name): Doc fix.
4898
bfa49dd1
CY
48992009-03-19 Chong Yidong <cyd@stupidchicken.com>
4900
4901 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
4902
8458d4c1
KH
49032009-03-19 Kenichi Handa <handa@m17n.org>
4904
4905 * charset.c (load_charset_map_from_file): When a mapfile can't be
4906 loaded, signal an error.
4907
78e7d1fe
EZ
49082009-03-18 Eli Zaretskii <eliz@gnu.org>
4909
4910 * dired.c (Ffile_attributes): Make sure UID and GID are always
4911 positive, even if the value is too large for a positive EMACS_INT.
4912 Doc fix.
4913
4914 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
4915
5da9fdfa
YM
49162009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4917
4918 * xmenu.c (xdialog_show): Move Fredisplay call ...
4919 (Fx_popup_dialog): ... here.
4920
7519c40d
SM
49212009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
4922
4923 * dired.c (file_name_completion): Disable the first optimization just
4924 installed, since it is not implemented correctly.
4925
2cd298e2
SM
49262009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4927
4928 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 4929 only if the entry can affect bestmatch.
2cd298e2
SM
4930 Stop the search early, as Ftry_completion already does.
4931
48d37adf
CY
49322009-03-17 Chong Yidong <cyd@stupidchicken.com>
4933
e10c9c93 4934 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 4935
9286b16a
CY
49362009-03-15 Chong Yidong <cyd@stupidchicken.com>
4937
4938 * keyboard.c (parse_menu_item): Don't display remappings as menu
4939 equivalent bindings (Bug#788).
4940
f7b146dc
JR
49412009-03-15 Jason Rumney <jasonr@gnu.org>
4942
4943 * w32term.h (WM_EMACS_PAINT): New message.
4944 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
4945 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
4946 before passing to lisp thread. (Bug#950)
4947
f761d6b6 49482009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 4949
d93f9575
CY
4950 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
4951 variable as it was never reset.
4952 (ns_term_init): Remove initialization of Lisp-settable defaults
4953 and ns_expand_space.
4954 (-setPanelFromDefaultValues): Remove ns_expand_space.
4955 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
4956 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
4957 i.e. no additional spacing, similar to Carbon port.
4958
d93f9575
CY
4959 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
4960 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 4961
305018ec
JD
49622009-03-14 Jan Djärv <jan.h.d@swipnet.se>
4963
4964 * sound.c (alsa_configure): Remove call to deprecated
4965 snd_pcm_sw_params_set_xfer_align.
4966
f761d6b6 49672009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
4968
4969 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
4970 after clicking in a detached tool bar.
4971 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
4972
46e722a9
SM
49732009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
4974
348db3dd
SM
4975 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
4976 int/Lisp_Object mixup).
46e722a9 4977
a3d16f39
KH
49782009-03-13 Kenichi Handa <handa@m17n.org>
4979
4980 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 4981 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
4982 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
4983 (set_fontset_font): Change ARG to a vector. Handle range_list in
4984 ARG correctly.
4985 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 4986 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
4987 the above change.
4988 (fontset_from_font): Fix previous change.
fe24f56a 4989 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
4990 entry. If FONTSET is the default fontset, don't set the extra
4991 slot of the returning char-table.
4992
b066e6b6
JB
49932009-03-12 Juanma Barranquero <lekktu@gmail.com>
4994
4995 * nsfns.m (Fx_close_connection): Doc fix.
4996 (Fns_do_applescript): Reflow docstring.
4997 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
4998 (Fx_display_pixel_width, Fx_display_pixel_height)
4999 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5000 Fix typos in docstrings.
5001 (Fns_set_alpha): Fix typos in error messages.
5002
d472514e 50032009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 5004
d472514e 5005 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
5006 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5007 were used for such events.
5008
d472514e
JB
5009 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5010 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 5011
d472514e 5012 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
5013 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5014
fb930676
KH
50152009-03-11 Kenichi Handa <handa@m17n.org>
5016
ff85581a
KH
5017 * font.h (font_open_by_spec): Extern it.
5018
c50b7e98
KH
5019 * font.c (font_open_by_spec): New function.
5020 (font_open_by_name): Use font_open_by_spec.
5021
fb930676
KH
5022 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5023 fontset of the frame.
5024
5025 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5026 modify the default font of frames that use this fontset.
5027 (num_auto_fontsets): New variable.
5028 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5029 name. Be sure to set FONTSET_ASCII to the correct font name.
5030 (update_auto_fontset_alist): New function.
5031
df4e8455
JB
50322009-03-11 Juanma Barranquero <lekktu@gmail.com>
5033
5034 * makefile.w32-in: Update dependencies.
5035
0a375797
AR
50362009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5037
5038 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5039
61313fa3
SM
50402009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5041
5042 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5043
b55103fb
CY
50442009-03-10 Chong Yidong <cyd@stupidchicken.com>
5045
5046 * lread.c (Feval_buffer): Doc fix.
5047
dde2559c
KH
50482009-03-09 Kenichi Handa <handa@m17n.org>
5049
5050 * charset.c (Qfile_name_handler_alist): Extern it.
5051 (load_charset_map_from_file): Temporarily bind
5052 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5053
df4e8455 50542009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 5055
47f588bb
GM
5056 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5057 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 5058
4ddf94bd
AR
50592009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5060
4c9bdfc2
AR
5061 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5062 (x_set_window_size): Change back to calculated method of setting
5063 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
5064 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5065 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5066
fe41ae9e
AR
5067 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5068
4c9bdfc2
AR
5069 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5070 accelerator in parens under GNUstep.
5071
825d0875
KH
50722009-03-06 Kenichi Handa <handa@m17n.org>
5073
5074 These changes are to detect incorrect composition sequence without
f3b3be74 5075 looking ahead the source. (Bug#2370)
825d0875
KH
5076
5077 * coding.h: Include "composite.h".
5078 (enum compisition_state): New enum.
5079 (struct compisition_status): New struct.
5080 (struct iso_2022_spec): New member cmp_status.
5081 (struct emacs_mule_spec): New struct.
5082 (struct coding_system): New members ctext_extended_segment_len and
5083 embedded_utf_8. Change the union member
5084 spec.emacs_mule_full_support to spec.emacs_mule.
5085
5086 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5087 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 5088 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
5089 (ADD_COMPOSITION_DATA): New arg nbytes.
5090 (emacs_mule_char): New arg cmp_status.
5091 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5092 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5093 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5094 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5095 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5096 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5097 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5098 (EMACS_MULE_COMPOSITION_END): New macro.
5099 (emacs_mule_finish_composition): New function.
5100 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5101 (decode_coding_emacs_mule): Avoid long looking ahead while
5102 handling composition.
5103 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5104 (ENCODE_COMPOSITION_RULE): New macro.
5105 (finish_composition): New function.
5106 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5107 (DECODE_COMPOSITION_START): New implementation.
5108 (DECODE_COMPOSITION_END): Likewise.
5109 (STORE_COMPOSITION_RULE): New macro.
5110 (decode_coding_iso_2022): Avoid long looking ahead while handling
5111 composition, CTEXT extended segment, and embedded UTF-8.
5112 (setup_coding_system): For a coding of type iso-2022, reset
5113 CODING_ISO_EXTSEGMENT_LEN (coding) and
5114 CODING_ISO_EMBEDDED_UTF_8 (coding).
5115 (get_translation): Delete arguments last_block, from_nchars,
5116 to_nchars. Callers changed.
5117 (produce_chars): Don't modify charbuf. Adjusted for the change of
5118 get_translation.
98a326f7 5119 (produce_composition): Adjust for the new annotation sequence.
825d0875 5120 (handle_composition_annotation): Likewise.
98a326f7 5121 (consume_chars): Adjust for the change of get_translation.
825d0875 5122
ccbc4452
AR
51232009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5124
4ddf94bd 5125 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 5126
988a7ddb
KH
51272009-03-05 Kenichi Handa <handa@m17n.org>
5128
5129 * font.c (font_select_entity): New function.
5130 (font_find_for_lface): Use font_select_entity to select a font.
5131
5132 * fontset.c (fontset_find_font): If a font found without
a8a3728b 5133 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
5134 font with C restriction.
5135
98a326f7 51362009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 5137
be1bce46 5138 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 5139
10ea2b82
JR
51402009-03-04 Jason Rumney <jasonr@gnu.org>
5141
2c93b248 5142 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 5143 characters that have already been read. (Bug#2569)
2c93b248 5144
10ea2b82
JR
5145 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5146 Log an error message if check_image_size failed.
5147 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 5148 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 5149
71a0c011
EZ
51502009-03-02 Eli Zaretskii <eliz@gnu.org>
5151
5152 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5153 when decoding process output.
5154
2f63bba8
RS
51552009-03-01 Richard M Stallman <rms@gnu.org>
5156
5157 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5158
5159 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5160
0a9564cb
EZ
51612009-02-28 Eli Zaretskii <eliz@gnu.org>
5162
5163 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5164 (decode_coding_emacs_mule, decode_coding_iso_2022)
5165 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5166 (decode_coding_raw_text, decode_coding_charset)
5167 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5168 Honor inhibit-eol-conversion. (Bug #2186)
5169
449148b3
JR
51702009-02-28 Jason Rumney <jasonr@gnu.org>
5171
5172 * coding.c (detect_coding_charset): If not checking latin extra,
5173 fail on characters between 0x80 and 0xA0. (Bug#2354)
5174
a4aee864
EZ
51752009-02-28 Eli Zaretskii <eliz@gnu.org>
5176
5177 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5178 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5179
d88bee5a
GM
51802009-02-27 Glenn Morris <rgm@gnu.org>
5181
5182 * callint.c (Finteractive): Doc fix.
5183
a808f22d
KH
51842009-02-27 Kenichi Handa <handa@m17n.org>
5185
5186 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5187
caf8d60c
CY
51882009-02-27 Chong Yidong <cyd@stupidchicken.com>
5189
5190 * font.c (font_style_to_value): Set value for unknown symbols to
5191 100 instead of 255.
b61137ea
CY
5192 (weight_table, slant_table, width_table): Treat "unspecified" as
5193 the default value.
caf8d60c 5194
1a0de25c
JB
51952009-02-26 Juanma Barranquero <lekktu@gmail.com>
5196
5197 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5198
8fc45744
JB
51992009-02-25 Juanma Barranquero <lekktu@gmail.com>
5200
107bd7d1
JB
5201 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5202 error as soon as a recursive load is detected.
8fc45744 5203
f097e223
AR
52042009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5205
5206 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5207 before caching.
5208
8810a12f
KH
52092009-02-24 Kenichi Handa <handa@m17n.org>
5210
5211 * fontset.c (fontset_find_font): Fix the condition for checking
5212 unavailable font.
5213
2c7d1565
GM
52142009-02-24 Glenn Morris <rgm@gnu.org>
5215
5216 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5217 whitespace that confuses documentation.
5218
a20878b6
MB
52192009-02-23 Miles Bader <miles@gnu.org>
5220
5221 * process.c (Flist_system_processes, Fprocess_attributes)
5222 (syms_of_process): Rename `system-process-attributes' to
5223 `process-attributes'.
5224
b3b58c01
AS
52252009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5226
1b3b981b
AS
5227 * coding.h (struct coding_system): Make safe_charsets a pointer to
5228 unsigned char.
5229 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5230 being 255.
5231 (SAFE_CHARSET_P): Likewise.
5232 (setup_iso_safe_charsets): Properly setup safe_charsets.
5233 (Fdefine_coding_system_internal): Likewise.
5234 (setup_coding_system): Likewise. Remove unneeded casts.
5235 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5236 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5237 unneeded casts.
5238
b3b58c01
AS
5239 * insdel.c (del_range_2): Don't modify gap contents when called
5240 from decode_coding_object. (Bug#1809)
5241
0b6f228c
CY
52422009-02-21 Chong Yidong <cyd@stupidchicken.com>
5243
5244 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5245 Qfont_object.
5246 (Ftype_of): Recognize font objects.
5247
5248 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5249
5250 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5251 moved to data.c.
5252
52f8870b
AR
52532009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5254
5255 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5256 async_iconified. Based on a patch by Christian Lynbech
5257 <christian.lynbech@tieto.com>.
5258 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5259
7087d5e9
GM
52602009-02-20 Glenn Morris <rgm@gnu.org>
5261
5262 * syntax.c (Fskip_chars_forward): Fix doc typo.
5263
41d2ceef
CY
52642009-02-20 Chong Yidong <cyd@stupidchicken.com>
5265
5266 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5267
1a3b7ca6
CY
52682009-02-19 Chong Yidong <cyd@stupidchicken.com>
5269
5270 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5271
73cce38d
KH
52722009-02-19 Kenichi Handa <handa@m17n.org>
5273
5274 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5275 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5276
a51092ee
DN
52772009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5278
5279 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5280
c423ecca
KH
52812009-02-18 Kenichi Handa <handa@m17n.org>
5282
5283 * font.c (font_check_otf_features): Fix handling of `nil' element.
5284 (Ffont_spec): Describe :lang and :otf in the docstring.
5285
4c1958f4
AS
52862009-02-16 Andreas Schwab <schwab@suse.de>
5287
5288 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5289 string.
5290
5704f39a
KH
52912009-02-16 Kenichi Handa <handa@m17n.org>
5292
5293 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5294 (Bug#1723)
5704f39a 5295
8f0085aa
CY
52962009-02-14 Chong Yidong <cyd@stupidchicken.com>
5297
a057d86a 5298 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5299
5300 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5301 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5302
aff01dd9
EZ
53032009-02-14 Eli Zaretskii <eliz@gnu.org>
5304
5305 * msdos.c (MAX_SCREEN_BUF): New macro.
5306 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5307 Encode the entire run of glyphs sharing the same face, instead of
5308 doing that one glyph at a time (fixes a bug with displaying
5309 double-size characters).
5310
ba301db3
AR
53112009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5312
5313 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5314
5315 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5316 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5317 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5318
5319 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5320 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5321
51d861de
SM
53222009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5323
ac146f82 5324 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5325 invisible areas.
5326
7fed8996
JR
53272009-02-12 Jason Rumney <jasonr@gnu.org>
5328
631ea4fb
JR
5329 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5330 (add_font_entity_to_list): Call check_face_name even when family
5331 is unspecified.
5332
cb4a3e42
JR
5333 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5334 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5335 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5336
7fed8996 5337 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5338 raster fonts. (Bug#2219)
7fed8996 5339
895416e3
KH
53402009-02-12 Kenichi Handa <handa@m17n.org>
5341
5342 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5343 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5344 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5345 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5346 (find_automatic_composition): While looking forward and backward,
5347 check static composition. Fix where to stop looking forward.
5348 (composition_adjust_point): Fix checking of static composition.
5349 (Fcomposition_get_gstring): Pay attention to
1dacf998 5350 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5351
5352 * lisp.h (fast_looking_at): Extern it.
5353
5354 * search.c (fast_looking_at): New function.
5355
51d861de 5356 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
5357 <struct glyph>.u.cmp.to.
5358 (append_composite_glyph): Likewise.
5359
51d861de 5360 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
5361 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5362 composition.
51d861de 5363 (append_composite_glyph): Adjust for the change of
895416e3
KH
5364 <strcut glyph>.u.cmp.to.
5365
8510724d
JB
53662009-02-11 Juanma Barranquero <lekktu@gmail.com>
5367
5368 * casetab.c (init_casetab_once):
5369 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5370 * font.c (font_update_lface):
5371 * fontset.c (Fnew_fontset):
5372 * ftfont.c (ftfont_drive_otf):
5373 * xfont.c (xfont_open):
5374 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5375
294fa707
SM
53762009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5377
5378 * fileio.c (Fwrite_region): !NILP -> CONSP.
5379
b5bfebec
AS
53802009-02-10 Andreas Schwab <schwab@suse.de>
5381
5382 * process.c (send_process): Properly relocate pointer into data
adab88bd 5383 when using encoded data. (Bug#2272)
b5bfebec 5384
cb84a2be
KH
53852009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
5386
5387 * coding.c (detect_coding_charset): Fix previous change.
5388
89e09428
JR
53892009-02-08 Jason Rumney <jasonr@gnu.org>
5390
5391 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 5392 disappeared while hourglass was displayed. (Bug #2193)
89e09428 5393
4470a277
AS
53942009-02-07 Andreas Schwab <schwab@suse.de>
5395
5396 * unexelf.c (unexec): Fix error message.
5397
3175b12a
AR
53982009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
5399
5400 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 5401 when modal window is active. (Bug #2152)
3175b12a
AR
5402 (applicationShouldTerminate:): Remove now-unneeded while loop
5403 around NSRunAlertPanel.
5404
5405 * nsmenu.m (popupSession): New file-global variable.
5406 (pop_down_menu): End the popupSession before closing dialog.
5407 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
5408 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
5409 don't query NSApp for events (just sleep instead).
5410
8434d0b8
EZ
54112009-02-07 Eli Zaretskii <eliz@gnu.org>
5412
51d861de
SM
5413 * coding.c (syms_of_coding) <translation-table-for-input>:
5414 Modify doc string to discourage use for character code unification.
8434d0b8 5415
aa82edfd
CY
54162009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5417
5418 * atimer.c (run_timers): Update pending_atimers.
5419
2d283c7c
CY
54202009-02-06 Chong Yidong <cyd@stupidchicken.com>
5421
eb306cab
CY
5422 * image.c (svg_load_image): Fix last change.
5423
2d283c7c
CY
5424 * xfns.c (Fx_create_frame): Signal an error if no font is
5425 found (Bug#2147).
5426
4d8e170e
JB
54272009-02-05 Juanma Barranquero <lekktu@gmail.com>
5428
5429 * character.c (syms_of_character) <script-representative-chars>:
5430 Fix typo in docstring.
5431
c96169a0
AR
54322009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5433
5434 * nsmenu.m (pop_down_menu): New function.
5435 (ns_popup_dialog): Call it on unwind.
5436 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
5437 call timer_check() (Bug#2154).
5438 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
5439 handling_signal is set.
5440 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
5441
31fd7c5c 5442 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
5443
5444 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
5445
5446 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
5447
51d861de
SM
5448 * keyboard.c (poll_for_input_1, handle_async_input):
5449 Set handling_signal under HAVE_NS.
c96169a0 5450
aacd8ba1
GM
54512009-02-04 Glenn Morris <rgm@gnu.org>
5452
5453 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
5454
4cb75c4b
KH
54552009-02-04 Kenichi Handa <handa@m17n.org>
5456
5457 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
5458
5459 * charset.c (Fchar_charset): New optional arg restriction.
5460
5461 * coding.h (coding_system_charset_list): Extern it.
5462
5463 * coding.c (coding_system_charset_list): New function.
5464
5465 * composite.c: Include coding.h and termhooks.h.
5466 (composition_gstring_p): Fix for the terminal case.
5467 (composition_gstring_width): Likewise.
5468 (fill_gstring_body): Likewise.
5469 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
5470 the frame.
5471 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
5472 is within a composition.
867d4bb3 5473 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
5474
5475 * term.c (encode_terminal_code): Fix handling of composition.
5476 (produce_composite_glyph): For static composition, get pixel_width
5477 from struct composition.
5478
826ba17e
AS
54792009-02-02 Andreas Schwab <schwab@suse.de>
5480
5481 * unexelf.c (unexec): Handle unaligned bss offset.
5482
8ad093db
AR
54832009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5484
5485 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
5486 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 5487
8ad093db
AR
5488 * keyboard.c (handle_interrupt): Don't call
5489 quit_throw_to_read_char() under NS.
d0a76a6e 5490
8ad093db
AR
5491 * blockinput.h: Remove NS-specific code.
5492
4d18a7a2
DN
54932009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
5494
db878925
DN
5495 * dispnew.c (window_change_signal): Don't try to get the size of a
5496 suspended tty frame.
5497 * term.c (Fresume_tty): Resize if the size has changed while the
5498 tty was suspended.
5499
4d18a7a2
DN
5500 * alloc.c (mark_stack): Properly conditionalize previous change.
5501
8984df7c
JB
55022009-01-30 Juanma Barranquero <lekktu@gmail.com>
5503
5504 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
5505 * w32term.c (w32_read_socket) [SYNC_INPUT]:
5506 Remove; this code is not used on Windows.
5507
75f4f1ac
EZ
55082009-01-30 Eli Zaretskii <eliz@gnu.org>
5509
5510 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
5511 EOLs that also has stray ^M characters.
5512
07a1e794
JB
55132009-01-30 Juanma Barranquero <lekktu@gmail.com>
5514
5515 * atimer.c (run_timers, alarm_signal_handler):
5516 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
5517 * w32inevt.c (w32_console_read_socket):
5518 * w32term.c (w32_read_socket):
5519 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
5520
a8b11cc9
CY
55212009-01-30 Chong Yidong <cyd@stupidchicken.com>
5522
5523 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
5524 Initialize it as a relative filename pattern.
5525 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
5526 (Fcall_process_region): Simplify temp file creation using
5527 temporary-file-directory.
5528
c279587b
EZ
55292009-01-29 Eli Zaretskii <eliz@gnu.org>
5530
5531 * msdos.c: Rename pending_signals to msdos_pending_signals.
5532 (sig_suspender, sigprocmask): Adjust.
5533
a8fe3242
CY
55342009-01-29 Chong Yidong <cyd@stupidchicken.com>
5535
5536 * keyboard.c (pending_signals): New var.
5537 (poll_for_input, input_available_signal, init_keyboard): Set it.
5538 (process_pending_signals): New function.
5539
5540 * lisp.h (QUIT): Check pending_signals instead of
5541 interrupt_input_pending. Use process_pending_signals.
5542
51d861de 5543 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 5544
51d861de 5545 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
5546
5547 * sysdep.c (emacs_write): Use process_pending_signals.
5548
5549 * xterm.c (XTread_socket): Update pending_signals.
5550
5551 * w32term.c (w32_read_socket): Update pending_signals.
5552
5553 * w32inevt.c (w32_console_read_socket): Update pending_signals.
5554
6570a1c4
KH
55552009-01-29 Kenichi Handa <handa@m17n.org>
5556
5557 * xftfont.c (xftfont_has_char): New function.
5558 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
5559
d72a4afa
AR
55602009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5561
5562 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
5563 under GNUstep.
5564 (ns_query_color): New declaration.
5565
5566 * nsterm.m (ns_confirm_quit): New variable.
5567 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
5568 (EmacsApp-applicationShouldTerminate:): Use it.
5569 (EmacsPrefsController): Let user set it.
5570 (ns_query_color): New function.
5571 (ns_defined_color): Use it.
5572 (ns_initialize): Drop.
5573 (ns_term_init): Add two lines from ns_initialize(), and set
5574 input_interrupt_mode to nil.
5575
5576 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 5577 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 5578
9fe78804
KH
55792009-01-28 Kenichi Handa <handa@m17n.org>
5580
5581 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
5582 (fontset_get_font_group): Remember that no font-group is specified
5583 for C.
9fe78804 5584
fa57de36
CY
55852009-01-27 Chong Yidong <cyd@stupidchicken.com>
5586
930600e9
CY
5587 * fns.c (concat): Check for string overflow (bug#1787).
5588
fa57de36
CY
5589 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
5590 Quadruple undo limits (bug#1501).
5591
7179ce7b
KH
55922009-01-27 Kenichi Handa <handa@m17n.org>
5593
5594 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
5595 directly use GT_Get_Char_index.
5596
5597 * xftfont.c (struct xftfont_info): New member `index'.
5598
5599 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 5600 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 5601
5be8fcc0
CY
56022009-01-26 Kenichi Handa <handa@m17n.org>
5603
5604 * fontset.c (fontset_find_font): Fix handling of non-cons return
5605 value of fontset_get_font_group.
5606 (fontset_font): Revert last change.
5607
19ae3e61
JR
56082009-01-26 Jason Rumney <jasonr@gnu.org>
5609
5610 * w32font.c (w32font_list_internal): Return quickly if registry is
5611 unknown. Simplify final return.
5612 (add_font_entity_to_list): Break complex logic down into more
5613 manageable chunks. Move unknown registry check to
5614 w32font_list_internal.
5615
8612b71a
AR
56162009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
5617
5618 Changes to remove Feval calls from GUI under NS.
5619
d8038940
JB
5620 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
5621 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
5622 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
5623
5624 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
5625 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
5626 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
5627 instead of NON_ASCII_KEYSTROKE_EVENT.
5628 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
5629 (EmacsApp-applicationShouldTerminate:): Query user.
5630 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
5631 instead of Feval.
5632
5633 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
5634
5635 * keyboard.c (kbd_buffer_get_event): Check for it.
5636 (keys_of_keyboard): Define lispy keys for
5637 ns-put/unput-working-text.
5638
5639 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
5640 versions.
5641 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
5642
6288ae55
CY
56432009-01-25 Chong Yidong <cyd@stupidchicken.com>
5644
5645 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 5646 setting current_buffer directly. (Bug#2044)
6288ae55 5647
289e7f8f
CY
56482009-01-24 Chong Yidong <cyd@stupidchicken.com>
5649
5ce87308 5650 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 5651 any work. (Bug#1952, bug#1990).
5ce87308 5652
64cc3cf6 5653 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 5654
b3243e6f
AR
56552009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5656
5657 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
5658 (ns_no_defaults): New declaration.
5659 (main): Use it.
e0d2e69a 5660
d900b2af 5661 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 5662
d900b2af 5663 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 5664
d900b2af
AR
5665 * nsterm.m (ns_no_defaults): New variable.
5666 (ns_initialize): Don't read defaults when ns_no_defaults.
5667 (EmacsView-readSelectionFromPasteboard:)
5668 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 5669 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
5670 (ns_dumpglyphs_stretch): New function.
5671 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 5672 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 5673
e0d2e69a
AR
5674 * nsimage.m (setPixmapData:): Set to ignore image DPI.
5675
3ac71f5d
CY
56762009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
5677
5678 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
5679 call for Sparc64.
5680
3fe53a83
AR
56812009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5682
5683 * nsfns.m:
5684 * nsgui.h:
5685 * nsmenu.m:
5686 * nsselect.m:
5687 * nsterm.h:
5688 * nsterm.m: Remove '23' comments that indicated code added during
5689 update from emacs-20 -> emacs-23.
5690
10f87c6f 56912009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
5692
5693 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 5694 ns_alternate_modifier. (Bug#1217)
a3b53a85 5695
c7cef62d
AR
5696 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
5697 Display all shortcuts, including those w/o super modifier.
5698
575fb8bd
AR
5699 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
5700
918b848b
CY
57012009-01-22 Chong Yidong <cyd@stupidchicken.com>
5702
5703 * fileio.c (Vwrite_region_post_annotation_function)
5704 (Vwrite_region_annotation_buffers): New vars.
5705 (build_annotations_unwind): Just reset
5706 Vwrite_region_annotation_buffers.
5707 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
5708 Call write-region-post-annotation-function.
5709 (build_annotations): Add to Vwrite_region_annotation_buffers if
5710 buffer changes.
5711
a39e2539
AR
57122009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5713
5714 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
5715 Tiger.
51d861de
SM
5716 * nsfns.m (ns_do_applescript):
5717 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 5718
35ed44db
AR
57192009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5720
5721 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
5722
cbe0b5bf
AR
57232009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5724
5725 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 5726
6049d3a0
AR
5727 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
5728
5729 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
5730 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
5731 handle Ctrl-tab. (Bug#1841)
5732 (ns_get_color): Use unsigned long long for scanned hex string value.
5733 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 5734 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 5735 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 5736 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 5737 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 5738 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 5739 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 5740
d3810c21 5741 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 5742 DPI. (Bug#1316)
d3810c21
AR
5743 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
5744 values in onTiger section.
4c7077c3 5745
e301e634
CY
57462009-01-19 Chong Yidong <cyd@stupidchicken.com>
5747
7f82490b
CY
5748 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
5749 Check return value of font_spec_from_name.
64cc3cf6 5750 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
5751
5752 * font.c (font_spec_from_name): Return Qnil if font name could not
5753 be parsed.
5754 (font_parse_name): Treat a `?' character as part of an XLFD.
5755
e301e634
CY
5756 * fns.c (Fsubstring): Doc fix.
5757
1c0db158
KH
57582009-01-19 Kenichi Handa <handa@m17n.org>
5759
51d861de 5760 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
5761 (ftfont_list): Likewise.
5762
acf20901
JB
57632009-01-18 Juanma Barranquero <lekktu@gmail.com>
5764
fff4e459
JB
5765 * dbusbind.c (Fdbus_register_signal):
5766 * process.c (conv_sockaddr_to_lisp):
5767 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
5768
acf20901
JB
5769 * callproc.c (Fgetenv_internal): Doc fix.
5770
e7abcdfb
CY
57712009-01-16 Chong Yidong <cyd@stupidchicken.com>
5772
5773 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
5774 it is not even used.
5775
b60861e6
GM
57762009-01-16 Glenn Morris <rgm@gnu.org>
5777
5778 * font.c (Ffont_variation_glyphs): Silence compiler.
5779
8db52afe
JB
57802009-01-15 Juanma Barranquero <lekktu@gmail.com>
5781
5782 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
5783 Reported by David Robinow <drobinow@gmail.com>.
5784
4cddb209
KH
57852009-01-15 Kenichi Handa <handa@m17n.org>
5786
51d861de 5787 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 5788
f247f67b
JR
57892009-01-14 Jason Rumney <jasonr@gnu.org>
5790
5791 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 5792 never a fontset. (Bug#1562)
f247f67b 5793
f56a4450
KH
57942009-01-14 Kenichi Handa <handa@m17n.org>
5795
5796 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 5797 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 5798
4e99855e
CY
57992009-01-13 Chong Yidong <cyd@stupidchicken.com>
5800
5801 * font.c (font_clear_prop): If clearing the family, clear the font
5802 width index too.
5803
fff4e459 5804 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 5805
24f01470
JB
58062009-01-12 Juanma Barranquero <lekktu@gmail.com>
5807
5808 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
5809 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
5810 functions, use sizeof.
5811
a41240a3
MR
58122009-01-12 Martin Rudalics <rudalics@gmx.at>
5813
5814 * keyboard.c (read_char): Fix case where last_nonmenu_event
5815 returned a bad value with submenus. (Bug#447)
5816
944636b8
CY
58172009-01-12 Chong Yidong <cyd@stupidchicken.com>
5818
5819 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
5820 family, clear the font width index too.
5821
0dad7c6f
JR
58222009-01-11 Jason Rumney <jasonr@gnu.org>
5823
5824 * keyboard.c (cmd_error_internal): Exit when errors occur before
5825 frame creation and not in daemon mode. (Bug#1836)
5826
7c2363af
CY
58272009-01-10 Chong Yidong <cyd@stupidchicken.com>
5828
5829 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
5830 of a display vector, backtrack.
5831 (try_window_reusing_current_matrix): Check glyph type before
5832 referencing charpos member.
5833
97b1b294
EZ
58342009-01-10 Eli Zaretskii <eliz@gnu.org>
5835
5836 Fix Bug #876:
5837
5838 * coding.c (inhibit_null_byte_detection): New variable.
5839 (detect_coding, detect_coding_system): Don't pay attention to null
5840 bytes if inhibit_null_byte_detection is non-zero.
51d861de 5841 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
5842 <inhibit-iso-escape-detection>: Doc fix.
5843
4624b6e3
JR
58442009-01-09 Jason Rumney <jasonr@gnu.org>
5845
5846 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 5847 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
5848 Only report Unicode Plane 2 fonts as unicode-sip.
5849
323b840c
CY
58502009-01-09 Chong Yidong <cyd@stupidchicken.com>
5851
51d861de
SM
5852 * xfaces.c (Fx_font_family_list): Delete function.
5853 Move compatibility version to faces.el.
323b840c 5854
51d861de 5855 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 5856
eba7400d
MR
58572009-01-09 Martin Rudalics <rudalics@gmx.at>
5858
5859 * frame.c (x_set_frame_parameters): Remember requested value for
5860 fullscreen before it's reset by the parameter handler.
5861
4b09796d
GM
58622009-01-09 Glenn Morris <rgm@gnu.org>
5863
5864 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 5865 (last_command_event): ... and update all users.
4b09796d
GM
5866 (last_input_char): For clarity, rename to...
5867 (last_input_event): ... and update all users.
5868 (last-command-char, last-input-char): Move to subr.el as aliases.
5869 * cmds.c, commands.h: Update for last_command_char rename.
5870
14ccea62
CY
58712009-01-08 Chong Yidong <cyd@stupidchicken.com>
5872
51d861de 5873 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 5874
5f004711
JR
58752009-01-08 Jason Rumney <jasonr@gnu.org>
5876
5877 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
5878 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
5879 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
5880 Don't declare.
fff4e459 5881 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
5882 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
5883
b71f6f73
KH
58842009-01-07 Kenichi Handa <handa@m17n.org>
5885
50b06221 5886 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 5887 remember the coding system used for decoding in
50b06221
KH
5888 coding_system (Bug#1039).
5889
b71f6f73 5890 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 5891 breaking the loop. (Bug#870)
b71f6f73
KH
5892 (decode_coding_utf_16, decode_coding_emacs_mule)
5893 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5894 (decode_coding_charset): Likewise.
5895
56f668f7
MR
58962009-01-05 Martin Rudalics <rudalics@gmx.at>
5897
5898 * frame.c (x_set_frame_parameters): Make sure height (width) get
5899 applied when fullwidth (fullheight) is set. (Bug#1522)
5900
5da9424d
JB
59012009-01-04 Juanma Barranquero <lekktu@gmail.com>
5902
5903 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
5904 (utc_base): Declare as ULONGLONG, not long double.
5905 (convert_time_raw): Delete.
5906 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
5907 (initialize_utc_base): New function.
5908 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
5909 (convert_from_time_t): Use initialize_utc_base; compute result with
5910 64-bit arithmetic.
5911 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
5912
c4605e09
EZ
59132009-01-03 Eli Zaretskii <eliz@gnu.org>
5914
9acef61c 5915 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
5916 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
5917 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
5918 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
5919 [!subprocesses]: Define.
5920 (syms_of_process) [!subprocesses]: Intern and staticpro them.
5921 (Flist_system_processes, Fsystem_process_attributes)
5922 [!subprocesses]: Call list_system_processes and
5923 system_process_attributes instead of returning Qnil.
5924
9acef61c
JB
5925 * dosfns.c (system_process_attributes, list_system_processes):
5926 New functions.
c4605e09
EZ
5927
5928 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
5929
5930 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
5931 Don't use the default (no-op) implementation.
5932
8b7d0a16
JR
59332009-01-03 Jason Rumney <jasonr@gnu.org>
5934
a6d46bc1
JR
5935 * keyboard.c (parse_modifiers_uncached): Wheel events are
5936 clicks (bug#687).
5937
8b7d0a16
JR
5938 * w32term.c (x_query_colors, x_query_color): New functions.
5939
5940 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
5941 (svg_load_image): Cast returned pointers from dynamically loaded
5942 functions. Eliminate W32 specific code.
5943
bfe11752
DN
59442009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
5945
89e2438a
DN
5946 * nsfns.m (x_set_foreground_color, x_set_background_color)
5947 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
5948 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
5949 x_ prefix instead of ns_. Update references.
5950 (syms_of_nsfns): Add a FIXME comment.
5951
5952 * nsterm.m (x_set_cursor_type): New prototype.
5953 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
5954
bfe11752
DN
5955 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
5956 for Solaris instead of incorrectly providing Qutime and Qcutime.
5957
031da700
EZ
59582009-01-02 Eli Zaretskii <eliz@gnu.org>
5959
5960 * w32.c (process_times): Compute sum of utime and stime.
5961 (system_process_attributes): Add Qtime to the alist.
5962
5963 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
5964 and add them to the alist.
5965
5966 * process.c (top level) <Qtime, Qctime>: New variables.
5967 (syms_of_process): staticpro them.
5968 (Fsystem_process_attributes): Add their documentation to the doc
5969 string.
5970
5971 * process.h: Declare Qtime and Qctime.
5972
df23bf08
JR
59732009-01-02 Jason Rumney <jasonr@gnu.org>
5974
9acef61c 5975 * image.c (Qgobject): New symbol.
df23bf08
JR
5976 (syms_of_image): Initialize it.
5977 (init_svg_functions): Load some functions from gobject library.
5978
5bbdf7aa
DN
59792009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
5980
5981 * frame.c (make_terminal_frame): Remove redundant code and useless
5982 block.
5983
63136da6
AS
59842009-01-01 Andreas Schwab <schwab@suse.de>
5985
5986 * process.c (conv_sockaddr_to_lisp): Add workaround for
5987 getsockname bug on BSD.
5988
9ef69046
CY
59892009-01-01 Chong Yidong <cyd@stupidchicken.com>
5990
d6fafbe0
CY
5991 * xfns.c (x_create_tip_frame): Set border width of the X window.
5992
51d861de 5993 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 5994
f9c34147
JR
59952009-01-01 Jason Rumney <jasonr@gnu.org>
5996
9acef61c 5997 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
5998 Don't block input, as per earlier xterm.c changes.
5999
f5497e45
AR
60002008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6001
6002 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6003 (ns_appkit_version_int): New function.
6004 (x-server-version): Use ns_appkit_version_int and follow 21+
6005 convention of returning 3 integers.
6006
c19cab20
KH
60072008-12-30 Kenichi Handa <handa@m17n.org>
6008
6009 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6010 (CHAR_SURROGATE_PAIR_P): New macro.
6011
6012 * font.h (struct font_driver): New member get_variation_glyphs.
6013
9acef61c 6014 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
6015 (Ffont_variation_glyphs): New function.
6016 (syms_of_font): Defsubr it.
6017
6018 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6019 ftfont_variation_glyphs.
6020 (setup_otf_gstring): New function.
6021 (ftfont_drive_otf): Use it.
6022 (ftfont_shape_by_flt): Handle variation selector.
6023 (ftfont_variation_glyphs): New function.
6024
28cd591f
MR
60252008-12-30 Martin Rudalics <rudalics@gmx.at>
6026
6027 * frame.c (Vemacs_iconified): Remove.
6028
7f714baf
JR
60292008-12-30 Jason Rumney <jasonr@gnu.org>
6030
6031 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 6032 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 6033
9d2d22ab
CY
60342008-12-30 Chong Yidong <cyd@stupidchicken.com>
6035
6036 * indent.c (Fvertical_motion): Don't advance iterator if we have
6037 reseated to the desired position.
6038
6039 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6040 checking for pos match.
6041
545312c2
KH
60422008-12-30 Kenichi Handa <handa@m17n.org>
6043
1ede3eb6
KH
6044 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6045 just get the low 8-bit of the code.
6046
545312c2
KH
6047 * font.c (font_intern_prop): Validate str as multibyte.
6048
bd7bbf29
DN
60492008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6050
31e0750e
DN
6051 * dispextern.h (struct face): Move lface and hash from the middle
6052 of bitfields.
6053
bd7bbf29
DN
6054 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6055
b5672e7c
DN
60562008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6057
6058 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6059 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6060 instead of intervals.h.
6061
d704470f
AS
60622008-12-26 Andreas Schwab <schwab@suse.de>
6063
6064 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6065 cons.
6066
54b33868
MR
60672008-12-26 Martin Rudalics <rudalics@gmx.at>
6068
6069 * textprop.c (Qminibuffer_prompt): New variable.
6070 (syms_of_textprop): Initialize it.
6071 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6072 in minibuffer-prompt face. (Bug#1662)
6073
40b615d6
JR
60742008-12-25 Jason Rumney <jasonr@gnu.org>
6075
6076 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6077
baae5c2d
JR
60782008-12-24 Jason Rumney <jasonr@gnu.org>
6079
6080 * ralloc.c (r_alloc_reset_variable): New function.
6081
6082 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 6083 record of what points where. (Bug#716)
baae5c2d 6084
a9051c88
DN
60852008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6086
6087 * minibuf.c (read_minibuf): Follow the non-interactive case when
6088 running as a daemon, before detaching.
6089
8b146312
AS
60902008-12-22 Andreas Schwab <schwab@suse.de>
6091
6092 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6093 * gtkutil.c (free_widget_value): Use xfree instead of free.
6094
56f2de10
MR
60952008-12-22 Martin Rudalics <rudalics@gmx.at>
6096
6097 * frame.c (delete_frame): New function derived from
6098 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6099 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6100 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6101 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6102 * frame.h: Extern delete_frame.
6103 * window.c (window_loop):
6104 * terminal.c (delete_terminal):
6105 * xterm.c (x_connection_closed):
6106 * xfns.c (Fx_hide_tip):
9acef61c 6107 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 6108
1fc200d6
JR
61092008-12-21 Jason Rumney <jasonr@gnu.org>
6110
6111 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6112 when character maps to .notdef character.
6113
5e252df2
SM
61142008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6115
6116 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6117
99b72cc4
JR
61182008-12-20 Jason Rumney <jasonr@gnu.org>
6119
6120 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 6121 a graphical frame on Windows. (Bug#1325)
99b72cc4 6122
acc49a52
JD
61232008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6124
6125 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6126
6ea15123
CY
61272008-12-20 Chong Yidong <cyd@stupidchicken.com>
6128
6129 * minibuf.c (Fread_buffer): Doc fix.
6130
b2dab6c8
JR
61312008-12-20 Jason Rumney <jasonr@gnu.org>
6132
54ea0c87 6133 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 6134 server name in UNC paths. (Bug#719)
54ea0c87 6135
b2dab6c8 6136 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 6137 charbuf. (Bug#1035)
b2dab6c8 6138
6d1921be
DN
61392008-12-19 Daniel Engeler <engeler@gmail.com>
6140
6141 * sysdep.c (serial_configure): Fix typo.
6142
53934c98
DN
61432008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6144
6145 * sysdep.c: Include alloca.h.
f4f634e8
DN
6146 (system_process_attributes): Add implementation for Solaris.
6147
6148 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 6149
06e111a6
DN
61502008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6151
6152 Reorganize implementation of Flist_system_processes and
6153 Fsystem_process_attributes. No functional changes.
6154 * process.c: Don't #include pwd.h, grp.h and limits.h.
6155 (Flist_system_processes): Just call list_system_processes.
6156 (Fsystem_process_attributes): Just call system_process_attributes.
6157 (procfs_list_system_processes, time_from_jiffies)
6158 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6159 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6160
6161 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6162 (list_system_processes): Rename from
6163 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6164 Provide a do nothing implementation.
6165 (system_process_attributes): Rename from
6166 procfs_list_system_processes.
6167 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6168 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6169
6170 * w32.c (list_system_processes): Rename from
6171 w32_list_system_processes.
6172 (system_process_attributes): Rename from
6173 w32_system_process_attributes.
6174
6175 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6176
6177 * process.h (w32_list_system_processes)
6178 (w32_system_process_attributes): Remove.
362654a6
JB
6179 (list_system_processes, system_process_attributes):
6180 New prototypes.
06e111a6 6181
6a705b23
KH
61822008-12-19 Kenichi Handa <handa@m17n.org>
6183
6184 * xfont.c (xfont_decode_coding_xlfd): New function.
6185 (xfont_encode_coding_xlfd): New function.
6186 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6187 (xfont_list): Decode and encode XLFD by iso-8859-1.
6188 (xfont_match): Likewise.
6189 (xfont_list_family): Likewise.
6190 (xfont_open): Likewise.
6191
d66c0241 6192 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6193 names are utf-8.
6194
d66c0241 6195 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6196 names are utf-8.
6197
5a130941
JD
61982008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6199
6200 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6201 changed.
bfd20325
JD
6202 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6203 clicked on a detached tool bar button.
5a130941 6204
fd95644b
DN
62052008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6206
6207 * emacs.c (main): Print and error and exit when no data is read
6208 from the pipe.
6209
e6eee6ae
JR
62102008-12-17 Jason Rumney <jasonr@gnu.org>
6211
6212 * w32font.c (w32font_has_char): Always return -1.
6213
a35dd56b
KH
62142008-12-16 Kenichi Handa <handa@m17n.org>
6215
6216 * font.c (font_open_entity): Fix previous change.
6217
0e3635c2
DN
62182008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6219
6220 * process.c: Include <limits.h>.
6221
d4835507 62222008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6223
6224 * font.c (font_update_drivers): Fix mistake in reconstructing the
6225 driver list.
6226
62272008-12-16 Chong Yidong <cyd@stupidchicken.com>
6228
6229 * font.c (font_clear_cache): Fix format of font cache data.
6230
e2cbc401
CY
62312008-12-15 Chong Yidong <cyd@stupidchicken.com>
6232
6233 * xftfont.c (xftfont_open): Free Xft font pattern if
6234 XftFontOpenPattern fails.
6235
6236 * xterm.c (x_free_frame_resources): Remove extraneous call to
6237 free_frame_faces.
6238
b131d535
CY
62392008-12-13 Chong Yidong <cyd@stupidchicken.com>
6240
6241 * xterm.c (x_delete_display): Move xim_close_dpy call to
6242 x_delete_terminal.
6243 (x_delete_terminal): Call xim_close_dpy.
6244
e6df5336
JR
62452008-12-13 Jason Rumney <jasonr@gnu.org>
6246
6247 * w32font.c (intern_font_name): New function.
6248 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6249 (w32font_open_internal, Fx_select_font): Decode font name.
6250 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6251
6252 * w32font.h (intern_font_name): Declare new function.
6253
6254 * w32uniscribe.c (add_opentype_font_name_to_list):
6255 Use intern_font_name.
6256
20d68145
CY
62572008-12-13 Chong Yidong <cyd@stupidchicken.com>
6258
9f2554de
CY
6259 * frame.c (Fdelete_frame): Call free_font_driver_list.
6260
3d9bec9a
CY
6261 * font.c (free_font_driver_list): Implement missing function.
6262
20d68145
CY
6263 * w32term.c (w32_term_init): Don't initialize the image cache
6264 here; it will be done in init_frame_faces.
6265
6266 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6267 (struct x_display_info): Remove unused member null_pixel. New
6268 member xim_callback_data.
6269
6270 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6271 (xim_initialize): Save pointer to callback function data.
6272 (xim_close_dpy): Free callback function data. Call XCloseIM,
6273 reverting 2008-11-04 change by David Smith.
6274 (x_term_init): Don't initialize the image cache here; it will be
6275 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6276 (x_delete_display): Free x_dnd_atoms member.
6277
96f9306b
KH
62782008-12-13 Kenichi Handa <handa@m17n.org>
6279
6dec9044
JB
6280 * font.c (font_rescale_ratio): Moved from xfaces.c.
6281 Argument type changed. Handle a font-spec too.
96f9306b 6282 (font_score): Check Vface_font_rescale_alist.
6dec9044 6283 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6284
6285 * xfaces.c (font_rescale_ratio): Moved to font.c.
6286
8d5b4964
CY
62872008-12-13 Chong Yidong <cyd@stupidchicken.com>
6288
6289 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6290
e6df5336
JR
62912008-12-12 Jason Rumney <jasonr@gnu.org>
6292
6293 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6294 Vwindow_system_version to the real w32 major version.
6295
97c6058a
DN
62962008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6297
6298 * term.c (init_tty): Move setting the terminal name before the
6299 potential user: maybe_fatal.
6300
ec4e88d7
CY
63012008-12-11 Chong Yidong <cyd@stupidchicken.com>
6302
d4835507
JB
6303 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6304 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6305
b4233ec9
JR
63062008-12-11 Jason Rumney <jasonr@gnu.org>
6307
8ec71e23 6308 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6309 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6310
b4233ec9 6311 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6312 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6313
011a0143
JB
63142008-12-11 Juanma Barranquero <lekktu@gmail.com>
6315
6316 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6317
3c309f34
JB
63182008-12-11 Juanma Barranquero <lekktu@gmail.com>
6319
6320 * process.c (Fsystem_process_attributes, syms_of_process):
6321 Fix typo in name of Ssystem_process_attributes.
6322 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6323
fedc6ab5
JB
63242008-12-11 Juanma Barranquero <lekktu@gmail.com>
6325
6326 * syntax.c (Fmodify_syntax_entry): Doc fix.
6327
ba3de0e8
JB
63282008-12-10 Juanma Barranquero <lekktu@gmail.com>
6329
6330 * font.c (Ffont_spec): Move usage to end of docstring.
6331
174f1c74
JR
63322008-12-10 Jason Rumney <jasonr@gnu.org>
6333
6334 * w32font.c (Qcham): New symbol.
6335 (font_supported_scripts): Add cham, and comments for other new
6336 scripts in bitfield from OpenType spec.
9d32f818
JR
6337 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6338 contain characters beyond the bmp.
174f1c74 6339
7b649478
KH
63402008-12-10 Kenichi Handa <handa@m17n.org>
6341
6342 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6343 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6344 Qunicode_sip.
6345
2133e2d1
JB
63462008-12-10 Juanma Barranquero <lekktu@gmail.com>
6347
6348 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6349 (Fcoding_system_put): Use QCdefault_char.
6350 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6351
9af886ee
CY
63522008-12-09 Chong Yidong <cyd@stupidchicken.com>
6353
74d819eb
CY
6354 * xftfont.c (syms_of_xftfont): Fix typo.
6355
4ccfa1c0 6356 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 6357
7c19d3ae
DN
63582008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6359
6360 * emacs.c (main): Close daemon_pipe on exec.
6361
567826bb
CY
63622008-12-08 Chong Yidong <cyd@stupidchicken.com>
6363
6364 * termchar.h (struct tty): New members termcap_term_buffer and
6365 termcap_strings_buffer.
6366
6367 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 6368 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
6369 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6370 All callers changed.
6371 (init_tty): Store termcap data and string buffers in new struct
6372 tty members termcap_term_buffer and termcap_strings_buffer.
6373 (delete_tty): Free them.
4ccfa1c0 6374 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 6375
aa96c42b
SZ
63762008-12-07 Seiji Zenitani <zenitani@mac.com>
6377
6378 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 6379 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 6380
b7e1d896
CY
63812008-12-06 Chong Yidong <cyd@stupidchicken.com>
6382
6383 * coding.c (make_conversion_work_buffer): Disable buffer
6384 modification hooks in the work buffer.
6385
b5ec91a5
EZ
63862008-12-05 Eli Zaretskii <eliz@gnu.org>
6387
6388 * process.c (procfs_system_process_attributes): If `nread' has a
6389 negative value, assign zero to it.
6390
a5d2a52b
CY
63912008-12-05 Chong Yidong <cyd@stupidchicken.com>
6392
68c5540b 6393 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 6394
7bf1bb21
KH
63952008-12-05 Kenichi Handa <handa@m17n.org>
6396
6397 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
6398 second character is a combining character.
6399
2fdc7d00
EZ
64002008-12-05 Eli Zaretskii <eliz@gnu.org>
6401
6402 * process.c (procfs_system_process_attributes): Don't use cmd,
6403 cmdsize, and q without initializing them first.
6404
bf6bfba8
JR
64052008-12-04 Jason Rumney <jasonr@gnu.org>
6406
6407 * w32font.c (w32font_draw): Initialize orig_clip before getting
6408 it, and delete it when finished.
6409
a3b1a468
DN
64102008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
6411
6412 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
6413 case when running as a daemon before detaching.
6414
8b8be8eb
JB
64152008-12-03 Juanma Barranquero <lekktu@gmail.com>
6416
805f2638 6417 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 6418
b1bde622
KH
64192008-12-03 Kenichi Handa <handa@m17n.org>
6420
e500c47d
KH
6421 * font.c (font_at): Set `multibyte' at first.
6422
ca516334
KH
6423 * coding.c (decode_coding_charset): Check type of an element of
6424 vector VALIDS.
7bf1bb21 6425 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 6426
4ccfa1c0 6427 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
6428 (font_for_char): Likewise.
6429
1e5ecd37
CY
64302008-12-03 Chong Yidong <cyd@stupidchicken.com>
6431
d5b01609 6432 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
6433 (font_update_lface): Handle fonts with corrupted size specs,
6434 i.e. non-int and non-float.
d5b01609 6435
11e3a6e4 6436 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 6437 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 6438 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 6439
ab06788b
CY
6440 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
6441
1e5ecd37 6442 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 6443 underline_minimum_offset for underline position.
1e5ecd37 6444
63c125ab
DN
64452008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
6446
6447 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
6448
6449 * character.c (c_string_width): Specify the type for LEN.
6450
3a8406e1
KH
64512008-12-03 Kenichi Handa <handa@m17n.org>
6452
4ccfa1c0 6453 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 6454 (decode_coding_utf_8): Likewise.
4ccfa1c0 6455 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 6456 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 6457
651df7d9
CY
64582008-12-02 Chong Yidong <cyd@stupidchicken.com>
6459
6460 * keyboard.c (make_lispy_position): Only use PT if the selected
6461 window is current.
6462
1f625c6c
AS
64632008-12-02 Andreas Schwab <schwab@suse.de>
6464
f7741ce9
AS
6465 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
6466
1f625c6c
AS
6467 * doprnt.c (doprnt1): Fix size of charbuf.
6468
92bc2678
CY
64692008-12-02 Chong Yidong <cyd@stupidchicken.com>
6470
6471 * keyboard.c (timer_check): Revert last change.
6472
93b9e8cc
JB
64732008-12-02 Juanma Barranquero <lekktu@gmail.com>
6474
6475 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
6476
fd7a37d5
JB
64772008-12-01 Juanma Barranquero <lekktu@gmail.com>
6478
6479 * makefile.w32-in: Update dependencies.
6480 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
6481
c115043b
AS
64822008-12-01 Andreas Schwab <schwab@suse.de>
6483
6484 * font.c (register_font_driver): Use xmalloc.
6485 (font_put_frame_data): Likewise.
6486
f5668d2a
CY
64872008-12-01 Chong Yidong <cyd@stupidchicken.com>
6488
860d96be
CY
6489 * xfaces.c (realize_x_face): Make abort condition clearer.
6490
f5668d2a
CY
6491 * gtkutil.c (update_frame_tool_bar): Initialize variable.
6492
379c17e7
CY
64932008-11-30 Chong Yidong <cyd@stupidchicken.com>
6494
6495 * keyboard.c (timer_check): After a timer runs, ensure that the
6496 selected window's buffer is current.
6497
35f36d65
JB
64982008-11-30 Juanma Barranquero <lekktu@gmail.com>
6499
f952c61c
JB
6500 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
6501 It was accidentally restored by the Unicode merge.
6502
35f36d65
JB
6503 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
6504
b23077df
JB
65052008-11-29 Juanma Barranquero <lekktu@gmail.com>
6506
6507 * w32proc.c: Include "coding.h".
6508 (Fw32_short_file_name): Encode filename passed to Windows API.
6509 (Fw32_long_file_name): Encode filename passed to Windows API and
6510 decode back the result. (Bug#1433)
6511
b8ebe9dd
KH
65122008-11-29 Kenichi Handa <handa@m17n.org>
6513
8cc53f96
KH
6514 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
6515 not before accessing it.
6516
b8ebe9dd
KH
6517 * charset.c (Fdefine_charset_internal): After calculating
6518 min_char, max_char, and fastmap, copy the charset structure again.
6519 (encode_char): Fix the previous change.
6520
59bc82c0
SZ
65212008-11-28 Seiji Zenitani <zenitani@mac.com>
6522
6523 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
6524
6525 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
6526
6527 * nsterm.m (x_set_frame_alpha): New function.
6528
32247e3d
EZ
65292008-11-27 Eli Zaretskii <eliz@gnu.org>
6530
6531 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
6532
b003e5ff
JB
65332008-11-27 Juanma Barranquero <lekktu@gmail.com>
6534
6535 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
6536 pointer to check_face_name.
6537
708550f5
KH
65382008-11-27 Kenichi Handa <handa@m17n.org>
6539
6540 * category.h (SET_CATEGORY_SET): Call set_category_set.
6541 (set_category_set): Extern it.
6542
6543 * category.c (hash_get_category_set): New function.
6544 (Fmodify_category_entry): Adjusted for the change of
6545 char_table_ref_and_range. Call hash_get_category_set to get a
6546 category set to store in the table.
6547
6548 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
6549 Funify_charset.
6550
2ae37cf0 6551 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
6552 (DECODE_CHAR): Check if the decoder vector is ready.
6553 (ENCODE_CHAR): Check if the encoder char-table is ready.
6554 (maybe_unify_char): Extern it.
6555
6556 * charset.c (Vchar_unified_charset_table): Delete it.
6557 (inhibit_load_charset_map): New variable.
6558 (temp_charset_work): New variable.
6559 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
6560 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
6561 New macros.
6562 (load_charset_map): Meaning of control_flag changed. If
6563 inhibit_load_charset_map is nonzero, setup a table in
6564 temp_charset_work.
6565 (load_charset): New argument control_flag.
6566 (map_charset_for_dump): New function.
6567 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
6568 map_charset_for_dump.
6569 (Fdefine_charset_internal): If the charset method is MAP, load
6570 mapping tables by calling load_charset.
6571 (Funify_charset): Don't load a mapping table but directly set
6572 Vchar_unify_table.
6573 (maybe_unify_char): New function.
6574 (decode_char): Don't handle the deleted method MAP_DEFERRED.
6575 Handle the case of inhibit_load_charset_map being nonzero.
6576 (encode_char): Don't handle the deleted method MAP_DEFERRED.
6577 Handle the case of inhibit_load_charset_map being nonzero.
6578 (Fclear_charset_maps): Just free temp_charset_work.
6579 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
6580 variable.
6581
6582 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
6583 change of char_table_ref_and_range.
6584 (char_table_ref_and_range): Change the meaning of argument FROM
6585 and TO. Now the caller must provide initial values for *FROM
6586 and *TO.
6587
6588 * fontset.c (fontset_add): Adjusted for the change of
6589 char_table_ref_and_range.
6590 (fontset_get_font_group): Likewise.
6591 (Ffontset_info): Likewise.
6592
6593 * keymap.c (describe_vector): Adjusted for the change of
6594 char_table_ref_and_range. For char-table, put boundary between
6595 non-ASCII and 8-bit characters.
6596
6597 * print.c (print_object): For bool-vector, delete unnecessary
6598 check of ASCII_BYTE_P.
6599
9196133b
JR
66002008-11-26 Jason Rumney <jasonr@gnu.org>
6601
6602 * w32font.c (w32font_open_internal): Don't include external
9acef61c 6603 leading in font height. (Bug#879)
9196133b 6604
9f688acf
GM
66052008-11-26 Glenn Morris <rgm@gnu.org>
6606
6607 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
6608 redefinition with ifdef. (Bug#1383)
6609
90d19aff
AR
66102008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6611
6612 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
6613
4ccfa1c0 66142008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
6615
6616 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
6617 New EmacsView methods.
6618 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
6619 Fixes bug #1048,1357,1414.
6620
66212008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6622
6623 Fix bug #1362.
6624 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
6625 is not an indexed color.
6626 * nsterm.m (free_indexed_color): Add argument checking.
6627 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
6628
e7d5ecb3
CY
66292008-11-24 Chong Yidong <cyd@stupidchicken.com>
6630
6631 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
6632 Document confirm-after-completion value for
6633 minibuffer-completion-confirm.
6634
c285743c
JR
66352008-11-24 Jason Rumney <jasonr@gnu.org>
6636
6637 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
6638 warning.
6639
b0857706
JR
66402008-11-23 Jason Rumney <jasonr@gnu.org>
6641
6642 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
6643 restored before returning.
6644
6645 * w32font.c (check_face_name): New function.
6646 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 6647 fonts. (Bug#642)
b0857706 6648
ee50ff07
MR
66492008-11-22 Martin Rudalics <rudalics@gmx.at>
6650
6651 * buffer.c (Fswitch_to_buffer): Reword and mention new option
6652 confirm-nonexistent-file-or-buffer in doc-string.
6653
b8ff72fa
SM
66542008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
6655
6656 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
6657 Fix copy/paste typo. Add checks.
6658
cee53ed4
KH
66592008-11-21 Kenichi Handa <handa@m17n.org>
6660
6661 * coding.c (detect_coding_iso_2022): Reject invalid composition
6662 sequence.
6663 (DECODE_COMPOSITION_START): If the current source is the last
6664 block, and the current composition doesn't end, regard this
6665 sequence as invalid.
6666 (decode_coding_iso_2022): Handle invalid composition sequence.
6667
f6ef1e65
MR
66682008-11-20 Martin Rudalics <rudalics@gmx.at>
6669
6670 * window.c (coordinates_in_window): Don't return
6671 ON_VERTICAL_BORDER for the rightmost position of a mode/header
6672 line when the window is not the rightmost one. (Bug#1372)
6673
e08b1705
MR
66742008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
6675
6676 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
6677
ad98e89f
EZ
66782008-11-15 Eli Zaretskii <eliz@gnu.org>
6679
6680 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
6681 and bright_bg if noninteractive is non-zero.
6682
fb098a4b
CY
66832008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6684
6685 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
6686 x_draw_glyph_string_background.
6687
6688 * w32term.c (x_draw_glyph_string): Likewise.
6689
ce952b6e
CY
66902008-11-15 Chong Yidong <cyd@stupidchicken.com>
6691
6692 * xterm.c (x_draw_glyph_string): Stop drawing the background of
6693 the next glyph string once past the overhang width.
6694
6695 * nsterm.m (ns_draw_glyph_string): Likewise.
6696
6697 * w32term.c (x_draw_glyph_string): Likewise.
6698
26ea7079
CY
66992008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
6700
6701 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
6702 double file close.
6703
1c33c906
MR
67042008-11-14 Martin Rudalics <rudalics@gmx.at>
6705
6706 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
6707 dedicated status of window before attempting to display another
6708 buffer in it.
6709
8fc29035
JB
67102008-11-14 Juanma Barranquero <lekktu@gmail.com>
6711
6712 * msdos.c (Fmsdos_long_file_names):
6713 (syms_of_msdos) <dos-unsupported-char-glyph>:
6714 * dosfns.c (Fint86): Fix typos in docstrings.
6715
55fb4286
EZ
67162008-11-14 Eli Zaretskii <eliz@gnu.org>
6717
6718 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
6719
3fda0315
KY
67202008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
6721
6722 * puresize.h (BASE_PURESIZE): Increase to 1260000.
6723
7e849c17
CY
67242008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
6725
6726 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
6727
6728 * frame.h: Negative alpha means "don't touch".
6729
6730 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
6731
6732 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
6733
b9fd67bd
DN
67342008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
6735
6736 * hftctl.c:
6737 * chpdef.h:
6738 * acldef.h: Remove files used only for systems no longer supported.
6739
6740 * Makefile.in: Fix .o alphabetical ordering.
6741 (hftctl.o): Remove dependency, file removed.
6742 (keymap.o, print.o): Depend on charset.h.
6743
d5998e03
KH
67442008-11-10 Kenichi Handa <handa@m17n.org>
6745
2ae37cf0 6746 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 6747
be70e183
CY
67482008-11-08 Chong Yidong <cyd@stupidchicken.com>
6749
6750 * dired.c (file_name_completion): If completion_ignore_case is
6751 enabled, ignore case when checking completion-regexp-list.
6752
7cf94eac
EZ
67532008-11-08 Eli Zaretskii <eliz@gnu.org>
6754
6755 * vm-limit.c (get_lim_data): Fix last change.
6756
ee107a89
KH
67572008-11-08 Kenichi Handa <handa@m17n.org>
6758
6759 * character.c (Fget_byte): New function.
6760 (syms_of_character): Defsubr Fget_byte.
6761
5fd15622
CY
67622008-11-07 Chong Yidong <cyd@stupidchicken.com>
6763
6764 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
6765 cursor position is valid after scrolling.
6766
13d62fad
JB
67672008-11-06 Juanma Barranquero <lekktu@gmail.com>
6768
6769 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
6770
a1dd2936
GM
67712008-11-06 Glenn Morris <rgm@gnu.org>
6772
6773 * xterm.c (handle_one_xevent): Don't let popup menus cause
6774 mouse-autoselect-window related window switching. (Bug#1261)
6775
860cd236
CY
67762008-11-04 David Smith <davidsmith@acm.org> (tiny change)
6777
6778 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
6779
653a3150
AS
67802008-11-04 Andreas Schwab <schwab@suse.de>
6781
6782 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
6783
870f5cac
CY
67842008-11-03 Chong Yidong <cyd@stupidchicken.com>
6785
6786 * xfns.c (Fx_wm_set_size_hint): New function.
6787
1e02f3cb
MR
67882008-11-03 Martin Rudalics <rudalics@gmx.at>
6789
6790 * textprop.c (Fprevious_single_char_property_change): Return 0
6791 when there's no change in a string. (Bug#1301)
6792
e630dfc6
MR
67932008-11-02 Martin Rudalics <rudalics@gmx.at>
6794
6795 * frame.c (do_switch_frame): New argument NORECORD passed to
6796 Fselect_window.
6797 (Fselect_frame): New argument NORECORD passed to
6798 do_switch_frame.
6799 (Fset_frame_selected_window): New argument NORECORD passed to
6800 Fselect_frame.
6801 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
6802 in call of do_switch_frame.
6803 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
6804 Handle NORECORD argument in call of Fselect_frame.
6805 * lisp.h (do_switch_frame, Fselect_frame)
6806 (Fset_frame_selected_window): Adjust declarations.
6807 * window.c (select_frame_norecord): New function.
6808 (run_window_configuration_change_hook): Use it and call
6809 Fselect_frame with NORECORD set.
6810 (Fselect_window): Pass NORECORD to Fselect_frame.
6811 (Fset_window_configuration): Handle NORECORD argument in call of
6812 do_switch_frame.
6813 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
6814 Fset_frame_selected_window.
6815 * keyboard.c (command_loop_1): Handle NORECORD in call of
6816 Fselect_frame (currently ifdefd).
6817
9020b223
GM
68182008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
6819
6820 * emacs.c (USAGE2): Untabify.
6821
793ffee8
SM
68222008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
6823
6824 * composite.c (fill_gstring_header): Fix copy/paste typo.
6825
ab6d1131
MR
68262008-10-31 Martin Rudalics <rudalics@gmx.at>
6827
6828 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
6829 (Fother_window): Rename argument and rewrite doc-string.
6830 (select_window_norecord): Fix return value. (Bug#1276)
6831
601a9cf1
JB
68322008-10-30 Juanma Barranquero <lekktu@gmail.com>
6833
6834 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
6835 new frames overriding foreground for tooltips. Based on similar patch
6836 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
6837
813b0652
CY
68382008-10-29 Chong Yidong <cyd@stupidchicken.com>
6839
6840 * emacs.c (Fdaemon_initialized): Initialize nfd.
6841
4414f58f
MR
68422008-10-29 Martin Rudalics <rudalics@gmx.at>
6843
6844 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
6845 (Fwindow_text_height): Clarify doc-strings.
6846 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
6847 doc-string of window-scroll-functions.
6848
ecdcaa09
RS
68492008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
6850
6851 * category.c (syms_of_category): Fix typo in docstring.
6852
23fe745a
JB
68532008-10-28 Juanma Barranquero <lekktu@gmail.com>
6854
6855 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
6856 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
6857 Fix typos in docstrings.
6858
ff808935
DN
68592008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
6860
6861 * emacs.c (daemon_pipe): Make non-static.
6862 (IS_DAEMON): Move definition ...
6863 * lisp.h (IS_DAEMON): ... here.
6864 (daemon_pipe): Declare.
6865 (is_daemon): Remove.
6866 * dispnew.c (init_display): Use IS_DAEMON.
6867
fc012771
SM
68682008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6869
6870 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
6871 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
6872
6873 * emacs.c (is_daemon): Remove.
6874 (main): Don't set is_daemon.
6875 (IS_DAEMON): New macro.
6876 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 6877 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
6878 parent exits.
6879 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
6880
d8bdbe6f
CY
68812008-10-27 Chong Yidong <cyd@stupidchicken.com>
6882
d1a072bf
CY
6883 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
6884 over-sized glyph, draw it with the default glyph width.
6885
e2e325aa
CY
6886 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6887 glyph, draw it with the default glyph width.
6888
6889 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
6890 glyph, draw it with the default glyph width.
6891
d8bdbe6f
CY
6892 * xdisp.c (try_scrolling): When computing the distance from the
6893 scroll margin to PT, try moving some distance past the window
6894 bottom before giving up.
6895
7bfac547
MR
68962008-10-27 Martin Rudalics <rudalics@gmx.at>
6897
6898 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
6899 (Fset_window_buffer): Explain in doc-string that a window can be
6900 "strongly" dedicated to its buffer.
6901
4ff029f6
DN
69022008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
6903
6904 * emacs.c (daemon_name): New variable.
6905 (main): Deal with --daemon=SERVER_NAME.
6906 (Fdaemonp): Return a name if one was passed to --daemon.
6907
5790ef40
DN
69082008-10-26 Romain Francoise <romain@orebokech.com>
6909
f9bd0df9 6910 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
6911 (main): Create a pipe before forking, make the parent exit only after
6912 the child has closed its end of the pipe. Move closing the
6913 descriptors ...
6914 (Fdaemon_initialized): ... here. New function.
6915
f5385255
SM
69162008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
6917
4d632321
SM
6918 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
6919 the previous unoptimized table.
6920
f5385255
SM
6921 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
6922 the distinction between non-nil and non-t value of `dedicated'.
6923
6c56a0f3
CY
69242008-10-25 Chong Yidong <cyd@stupidchicken.com>
6925
6926 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 6927 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 6928
fec89261
MR
69292008-10-25 Martin Rudalics <rudalics@gmx.at>
6930
6931 * window.c (Fget_buffer_window, Fdelete_windows_on)
6932 (Freplace_buffer_in_windows): Make buffer argument optional and
6933 rename to buffer_or_name.
6934
34fcddd0
CY
69352008-10-24 Chong Yidong <cyd@stupidchicken.com>
6936
f5385255
SM
6937 * xdisp.c (handle_single_display_spec, handle_display_prop):
6938 Undo 2005-05-16 change.
34fcddd0
CY
6939 (handle_stop): Pop iterator if it's loaded with an empty string.
6940 (get_overlay_strings_1): Don't save iterator if it's loaded with
6941 an empty string (bug#1201).
6942
064766f2
KH
69432008-10-24 Kenichi Handa <handa@m17n.org>
6944
6945 * ftfont.c (ftfont_otf_features): Fix previous change.
6946 (ftfont_otf_capability): Check FeatureList.FeatureCount before
6947 calling ftfont_otf_features.
6948
f9bd0df9 69492008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
6950
6951 * font.c (font_match_p): Fix for the case that a vector of
6952 characters is in script-representative-chars.
6953
1dae9197
MA
69542008-10-24 Michael Albinus <michael.albinus@gmx.de>
6955
6956 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 6957 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
6958 (xd_read_queued_messages): Catch Qdbus_error from the macros.
6959 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 6960 macro. (Bug#1186)
1dae9197 6961
f9bd0df9 69622008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
6963
6964 * s/sol2-10.h: New file.
6965
878a4584
JB
69662008-10-23 Juanma Barranquero <lekktu@gmail.com>
6967
6968 * xdisp.c (fill_glyph_string): Fix typo in source (though the
6969 poor beast has survived 9+ years and the jump from xterm.c!).
6970
cd265ca6
MR
69712008-10-23 Martin Rudalics <rudalics@gmx.at>
6972
6973 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
6974 Reword doc-string.
f5385255 6975 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 6976
472a4dc9
JB
69772008-10-23 Juanma Barranquero <lekktu@gmail.com>
6978
6979 * character.c (syms_of_character) <script-representative-chars>:
6980 <unicode-category-table>: Doc fixes.
6981
159bd5a2
NF
69822008-10-23 Noah Friedman <friedman@splode.com>
6983
6984 * coding.c (make_conversion_work_buffer): Check that
6985 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
6986 Fget_buffer_create.
6987
49f9c344
KH
69882008-10-23 Kenichi Handa <handa@m17n.org>
6989
6990 * font.c (font_add_log): Check the values of extra properties.
6991
12bb3111
MR
69922008-10-22 Martin Rudalics <rudalics@gmx.at>
6993
6994 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
6995 Reword doc-string.
6996 (Fset_window_parameter): Use NILP.
6997 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 6998 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 6999
bbeb4e99
JB
70002008-10-22 Juanma Barranquero <lekktu@gmail.com>
7001
7002 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7003
70042008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
7005
7006 * nsfns.m (ns_appkit_version): New function.
7007 (x-server-version): Use it.
7008 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7009 (x-server-vendor): Don't check_ns().
7010
7011 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7012
a9b555d3
JB
70132008-10-22 Juanma Barranquero <lekktu@gmail.com>
7014
7015 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7016 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7017
4626499f
KH
70182008-10-22 Kenichi Handa <handa@m17n.org>
7019
e3681952
KH
7020 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7021 scripts.
7022
4626499f
KH
7023 * category.c (word_boundary_p): Check scripts instead of charset.
7024 Handle nil value in word-separating-categories and
7025 word-combining-categories.
7026 (syms_of_category): Fix docstrings of word-separating-categories
7027 and word-combining-categories.
7028
1560f91a
EZ
70292008-10-21 Eli Zaretskii <eliz@gnu.org>
7030
7031 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7032 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7033
f4668441
MR
70342008-10-21 Martin Rudalics <rudalics@gmx.at>
7035
7036 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7037 Rename arg "buffer" to "buffer_or_name".
7038 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7039 it optional.
7040 (no_switch_window): Remove since the return value is not used.
a9b555d3 7041 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
7042 Consider window as dedicated when Fwindow_dedicated_p returns a
7043 non-nil value.
7044 * lisp.h: Remove prototype for no_switch_window.
7045
fd75ddb2
JD
70462008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7047
7048 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 7049 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 7050
07295713
KH
70512008-10-21 Kenichi Handa <handa@m17n.org>
7052
7053 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7054 check Vlatin_extra_code_table.
7055
712adc82
EZ
70562008-10-20 Eli Zaretskii <eliz@gnu.org>
7057
7058 * fileio.c (Fset_file_modes): Doc fix.
7059
f549eb0b
MA
70602008-10-19 Michael Albinus <michael.albinus@gmx.de>
7061
7062 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7063 in arrays.
7064
aac0c6e3
MR
70652008-10-19 Martin Rudalics <rudalics@gmx.at>
7066
7067 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7068 Mention kill-buffer in doc-string.
7069 (Fset_window_buffer): Reinsert tem check removed in last commit.
7070 (Fenlarge_window, Fshrink_window): Have argument names and
7071 doc-string follow Elisp manual more closely.
7072
70732008-10-18 Eli Zaretskii <eliz@gnu.org>
7074
7075 * fileio.c (Fset_file_modes): Doc fix.
7076
70772008-10-18 Martin Rudalics <rudalics@gmx.at>
7078
7079 * window.c (Fwindow_width, Fset_window_start)
7080 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
7081 (Fdelete_windows_on, Freplace_buffer_in_windows):
7082 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
7083 (Fwindow_dedicated_p): Make window argument optional.
7084 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7085 (Fset_window_buffer): Respect any non-nil dedicated value for
7086 window. Rename "buffer" argument to "buffer_or_name".
7087
70882008-10-18 Ulrich Mueller <ulm@gentoo.org>
7089
7090 * m/sh3.h: New file, machine description for SuperH.
7091
70922008-10-17 Martin Rudalics <rudalics@gmx.at>
7093
7094 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7095
70962008-10-17 Kenichi Handa <handa@m17n.org>
7097
7098 * ftfont.c (ftfont_otf_features): Fix indexing
7099 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7100
71012008-10-16 Magnus Henoch <mange@freemail.hu>
7102
7103 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7104 (Fdbus_call_method_asynchronously): Ditto.
7105 This change makes C-h f display the argument list.
7106
71072008-10-16 Chong Yidong <cyd@stupidchicken.com>
7108
7109 * fileio.c (Fexpand_file_name): Doc fix.
7110
7111 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7112 of :foreground and :background equivalent to unspecified (20.x
7113 compatibility).
7114
71152008-10-15 Eli Zaretskii <eliz@gnu.org>
7116
7117 * buffer.c (syms_of_buffer): Doc fix.
7118
71192008-10-14 Kenichi Handa <handa@m17n.org>
7120
7121 * font.c (font_clear_prop): When clearing font width, clear the
7122 average width field too.
7123
71242008-10-12 Andreas Schwab <schwab@suse.de>
7125
7126 * ftfont.c (ftfont_shape_by_flt): Make static.
7127 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7128
7129 * font.c: Don't include <m17n-flt.h>.
7130
71312008-10-10 Eli Zaretskii <eliz@gnu.org>
7132
7133 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7134
71352008-10-09 Eli Zaretskii <eliz@gnu.org>
7136
7137 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7138 away code.
7139
71402008-10-09 Chong Yidong <cyd@stupidchicken.com>
7141
7142 * dispnew.c (update_text_area): Avoid looping due to large glyph
7143 overhangs (bug#1070).
7144
71452008-10-09 Kenichi Handa <handa@m17n.org>
7146
7147 * fontset.c (face_for_char): If face->fontset is negative, just
7148 return ascii_face.
7149
f5385255
SM
7150 * font.c (font_delete_unmatched): Fix previous change.
7151 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
7152
71532008-10-09 Martin Rudalics <rudalics@gmx.at>
7154
7155 * frame.c (Fraise_frame): On text-only terminals select frame in
7156 order to make it visible. (Bug#1061)
7157
71582008-10-08 Chong Yidong <cyd@stupidchicken.com>
7159
7160 * fontset.c (fontset_find_font): Check frame validity.
7161
71622008-10-07 Chong Yidong <cyd@stupidchicken.com>
7163
a9b555d3 7164 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7165 (xg_display_close): Allow Emacs to close all displays (bug#985).
7166
71672008-10-06 Andreas Schwab <schwab@suse.de>
7168
f5385255 7169 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7170
71712008-10-06 Chong Yidong <cyd@stupidchicken.com>
7172
f5385255 7173 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7174
a9b555d3 7175 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7176
7177 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7178 during initialization.
7179
71802008-10-04 Eli Zaretskii <eliz@gnu.org>
7181
7182 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7183 whole thing on MSDOS frames as well as on a TTY.
7184
7185 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7186 well as for TTY.
7187 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7188 well as on a TTY.
7189
7190 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7191 as well as for TTY.
7192
7193 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7194
7195 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7196 MSDOS frames as well.
7197
71982008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7199
7200 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7201 correct arguments.
b71ac3dd 7202 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7203
72042008-10-03 Glenn Morris <rgm@gnu.org>
7205
7206 * emacs.c (USAGE1): Add --daemon.
7207
72082008-10-02 Eli Zaretskii <eliz@gnu.org>
7209
7210 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7211 100, so it's in percents as advertised.
7212
72132008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7214
7215 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7216 (ns_output.current_cursor, ns_output.desired_cursor)
7217 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7218 (FRAME_NEW_CURSOR_COLOR): Remove.
7219
7220 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7221 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7222 enumeration (HOLLOW_BOX_CURSOR, etc.).
7223
7224 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7225 (draw_window_cursor): Simplify code.
f5385255
SM
7226 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7227 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7228 updates manually.
a9b555d3
JB
7229 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7230 Use core Emacs cursor types.
aac0c6e3 7231
b8ff72fa 7232 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7233
72342008-10-02 Martin Rudalics <rudalics@gmx.at>
7235
7236 * process.c (Faccept_process_output): Fix doc-string.
7237
72382008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7239
7240 * gmalloc.c (__sbrk): Also define for uClibc.
7241
7242 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7243 for uClibc.
7244
72452008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7246
7247 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7248 styles.
7249 (nsfont_open): Reenable the cache.
7250
72512008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7252
7253 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7254 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7255
72562008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7257
7258 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7259 a suspended terminal.
7260
72612008-09-30 Michael Albinus <michael.albinus@gmx.de>
7262
7263 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7264
72652008-09-30 Eli Zaretskii <eliz@gnu.org>
7266
7267 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7268
72692008-09-30 Chong Yidong <cyd@stupidchicken.com>
7270
7271 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7272 in a continued line coincides with a line beginning.
7273
72742008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7275
7276 * nsfont.m (nsfont_trait_distance): Fix bug.
7277 (nsfont_list): Return a list rather than a vector (syncs with Handa
7278 changes of 2008-05-14).
7279 (nsfont_open): Improve logging.
7280
72812008-09-29 Andreas Schwab <schwab@suse.de>
7282
7283 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7284
72852008-09-28 Martin Rudalics <rudalics@gmx.at>
7286
7287 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7288 name as char-resolve-modifiers.
7289 Reported by: Markus Triska <markus.triska@gmx.at>
7290
72912008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7292
7293 * dispnew.c (init_display): Return earlier when running as a daemon.
7294
72952008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7296
7297 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7298
72992008-09-27 Eli Zaretskii <eliz@gnu.org>
7300
7301 * composite.c (Fcomposition_get_gstring)
7302 (Fcompose_region_internal, Fcompose_string_internal)
7303 (Ffind_composition_internal): Doc fix.
7304 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7305 (syms_of_composite) <auto-composition-function>: Doc fix.
7306 (syms_of_composite) <composition-function-table>: Doc fix.
7307
73082008-09-25 Chong Yidong <cyd@stupidchicken.com>
7309
7310 * search.c (wordify): New argument for lax word-ends.
7311 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7312
73132008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7314
7315 * lisp.h (is_daemon): Declare.
7316 * dispnew.c (init_display): Do not try to initialize the terminal
7317 when running as a daemon.
7318
73192008-09-22 Chong Yidong <cyd@stupidchicken.com>
7320
7321 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7322 x_display_pixel_height.
7323
73242008-09-22 Martin Rudalics <rudalics@gmx.at>
7325
7326 * undo.c (record_point): Don't call Fundo_boundary for first
7327 change. (Bug#731)
7328
73292008-09-22 Juanma Barranquero <lekktu@gmail.com>
7330
7331 * emacs.c (Fdaemonp): Doc fix.
7332
73332008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7334
7335 * emacs.c (main): Place #ifdef in the proper place.
7336
73372008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7338
7339 * emacs.c (standard_args): Add --daemon.
7340 (main): Disconnect from the terminal when --daemon is passed.
7341 (is_daemon): New variable.
7342 (Fdaemonp): New function.
7343 (syms_of_emacs): Defsubr it.
7344
73452008-09-20 Chong Yidong <cyd@stupidchicken.com>
7346
7347 * xdisp.c (get_next_display_element): Handle string display
7348 correctly when checking for the end of a box run.
7349
73502008-09-20 Glenn Morris <rgm@gnu.org>
7351
7352 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7353 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7354 (Frename_file): Avoid copying to trash if a rename involves
7355 a delete. (Bug#964).
7356
73572008-09-20 Eli Zaretskii <eliz@gnu.org>
7358
7359 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7360 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7361 frames as well as termcap frames.
7362 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7363 get_named_tty.
7364
73652008-09-19 Eli Zaretskii <eliz@gnu.org>
7366
7367 * process.c (procfs_system_process_attributes): Fix cmdline in
7368 case /proc/PID/cmdline is empty.
7369
7370 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7371 x_display_pixel_height.
7372
73732008-09-19 Juanma Barranquero <lekktu@gmail.com>
7374
7375 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7376
7377 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7378 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7379
73802008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7381
7382 * dispextern.h (struct it): Move line_wrap away from the middle of
7383 bitfields. Move voffset in struct iterator_stack_entry after the
7384 bitfields. Move tab_width near after another short.
7385
73862008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
7387
7388 * frame.h (struct frame): Move alpha from the middle of bitfields.
7389
7390 * window.h (struct window): Move frozen_window_start_p after the
7391 rest of the bitfields to reduce padding.
7392
73932008-09-18 Chong Yidong <cyd@stupidchicken.com>
7394
7395 * xterm.h (x_display_info): Remove `height' and `width' members.
7396
7397 * nsterm.h (ns_display_info): Remove `height' and `width' members.
7398
7399 * w32term.h (w32_display_info): Remove `height', `width',
7400 `height_in', and `width_in' members.
7401
b8ff72fa
SM
7402 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7403 New functions.
aac0c6e3
MR
7404 (x_calc_absolute_position): Use them.
7405 (x_term_init): Omit removed `height' and `width' members.
7406
b8ff72fa
SM
7407 * w32term.c (x_display_pixel_height, x_display_pixel_width):
7408 New functions.
aac0c6e3
MR
7409 (w32_read_socket, x_calc_absolute_position): Use them.
7410 (w32_initialize_display_info, w32_term_init): Omit removed members
7411 of w32_display_info.
7412
b8ff72fa
SM
7413 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
7414 New functions.
7415 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 7416
b8ff72fa
SM
7417 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7418 New functions.
aac0c6e3
MR
7419 (x_calc_absolute_position): Use them.
7420 (x_term_init): Omit removed `height' and `width' members.
7421
7422 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
7423 (compute_tip_xy):
7424 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
7425 * xmenu.c (menu_position_func): Use x_display_pixel_height and
7426 x_display_pixel_width.
7427
74282008-09-18 Kenichi Handa <handa@m17n.org>
7429
7430 * composite.c (fill_gstring_header): Don't check FROM and TO here.
7431 (composition_compute_stop_pos): Fix handling of static composition.
7432 (Fcomposition_get_gstring): Check FROM and TO at first.
7433
74342008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
7435
46e722a9 7436 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
7437 mixup (YAILOM).
7438
74392008-09-17 Chong Yidong <cyd@stupidchicken.com>
7440
7441 * indent.c (Fvertical_motion): Use position reported by iterator
7442 instead of PT for determining screen motion (bug#943).
7443
74442008-09-17 Romain Francoise <romain@orebokech.com>
7445
7446 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
7447
74482008-09-17 Kenichi Handa <handa@m17n.org>
7449
7450 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
7451
7452 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
7453 if necessary.
7454
74552008-09-16 Kenichi Handa <handa@m17n.org>
7456
7457 * coding.c (make_conversion_work_buffer): Avoid calling
7458 Fget_buffer_create if it is not necessary.
7459
74602008-09-15 Martin Rudalics <rudalics@gmx.at>
7461
7462 * window.c (Fselect_window): Don't update window_select_count and
7463 use_time when norecord is not nil.
7464
74652008-09-14 Kenichi Handa <handa@m17n.org>
7466
7467 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
7468 specpdl_ptr.
7469
74702008-09-12 Kenichi Handa <handa@m17n.org>
7471
7472 * indent.c (scan_for_column): Don't handle automatic composition
7473 if the current buffer is not associated with a window.
7474
7475 * composite.c (composition_reseat_it): If the current buffer is
7476 not associated with a window, ignore the automatic composition.
7477 (find_automatic_composition): Likewise.
7478
74792008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7480
7481 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
7482 (Fgpm_mouse_stop): Use it.
7483 * termhooks.h (close_gpm): Declare.
7484 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
7485 connection if Gpm_GetEvent fails.
7486
7487 * window.c (set_window_buffer): Always preserve current-buffer.
7488
74892008-09-12 Glenn Morris <rgm@gnu.org>
7490
7491 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
7492
74932008-09-11 Glenn Morris <rgm@gnu.org>
7494
7495 * charset.c (charset-map-path): Doc fix.
7496
74972008-09-10 Kenichi Handa <handa@m17n.org>
7498
7499 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
7500
7501 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
7502 compose a grapheme cluster with the preceding base glyph.
7503
7504 * composite.c (composition_compute_stop_pos): Fix previous change.
7505 Reset cmp_it->id to -1 at first.
7506
75072008-09-10 Glenn Morris <rgm@gnu.org>
7508
7509 * Makefile.in (character.o, chartab.o): Fix config.h typo.
7510
75112008-09-09 Chong Yidong <cyd@stupidchicken.com>
7512
7513 * keyboard.c (read_key_sequence): Reapply translation maps when
7514 switching keyboards.
7515
75162008-09-09 Kenichi Handa <handa@m17n.org>
7517
7518 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
7519 characters.
7520
7521 * composite.c (FORWARD_CHAR): Fix calculation
7522 of (POSITION).pos_byte.
7523 (composition_compute_stop_pos): Limit the search of composition to
7524 at most 500 characters ahead. If we reach the limit or find a
7525 newline, set cmp_it->ch to -2 and return 0.
7526 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
7527
75282008-09-08 Kenichi Handa <handa@m17n.org>
7529
7530 * indent.c (Fvertical_motion): Be sure to set
7531 it_overshoot_expected if it.cmp_it.id is non-negative.
7532
75332008-09-07 Andreas Schwab <schwab@suse.de>
7534
7535 * callproc.c (Fcall_process): Don't hold references to string data
7536 across garbage collection. Move initialisation of new_argv down
7537 to avoid compiler bug.
7538
75392008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7540
7541 * process.c (Fsystem_process_attributes): Doc fix.
7542
75432008-09-07 Chong Yidong <cyd@stupidchicken.com>
7544
7545 * callproc.c (Fcall_process): Canonicalize current directory name.
7546
7547 * xdisp.c (move_it_to): When moving by vpos, ensure that the
7548 iterator advances to the next line if the current line ends in a
7549 continued tab.
7550
75512008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
7552
7553 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
7554 member to point to cmp_from.
7555
7556 * xdisp.c: Doc fix for references to gidx data member.
7557
75582008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7559
7560 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
7561
75622008-09-07 Kenichi Handa <handa@m17n.org>
7563
7564 * composite.c (FORWARD_CHAR): Check STOP after
7565 incrementing (POSITION).pos.
7566
75672008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7568
7569 * process.c (Fsystem_process_attributes): Doc fix.
7570
75712008-09-06 Chong Yidong <cyd@stupidchicken.com>
7572
7573 * keyboard.c (Ftop_level): Doc fix.
7574
75752008-09-06 Eli Zaretskii <eliz@gnu.org>
7576
7577 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
7578 minibuffer, don't let lower part of menu invade the echo area.
7579
7580 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
7581 "char *q" to access menu text and advance through it. Revert the
7582 change that displayed ">" instead of ASCII character 0x10.
7583
75842008-09-05 Eli Zaretskii <eliz@gnu.org>
7585
7586 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
7587 toggle boxes and radio buttons on MS-DOS as well.
7588
75892008-09-05 Kenichi Handa <handa@m17n.org>
7590
7591 * composite.c (autocmp_chars): Check lookback count.
7592 (composition_compute_stop_pos): Set cmp_it->lookback.
7593 (composition_reseat_it): Check lookback count.
7594 (struct position_record): New struct.
7595 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
7596 (find_automatic_composition): New function.
7597 (composition_adjust_point): Use find_automatic_composition.
7598
7599 * dispextern.h (struct composition_it): New member lookback.
7600
76012008-09-02 Chong Yidong <cyd@stupidchicken.com>
7602
7603 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
7604 if moving by a single line.
7605
76062008-09-02 Andreas Schwab <schwab@suse.de>
7607
7608 * xterm.c (x_delete_display): Fix merge error.
7609
7610 * fileio.c (Fexpand_file_name): Remove unused variables.
7611
76122008-09-02 Eli Zaretskii <eliz@gnu.org>
7613
7614 * fileio.c (Fexpand_file_name): Copy argument `name' into local
7615 storage on all platforms, not just on DOS_NT.
7616
76172008-09-02 Jason Rumney <jasonr@gnu.org>
7618
b8ff72fa
SM
7619 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
7620 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
7621
76222008-09-01 Chong Yidong <cyd@stupidchicken.com>
7623
7624 * xfaces.c (Finternal_set_alternative_font_family_alist)
7625 (Finternal_set_alternative_font_registry_alist): Properly copy
7626 entire alist structure.
7627
76282008-09-01 Kenichi Handa <handa@m17n.org>
7629
d66c0241 7630 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 7631 representative chars of the script is a vector.
d66c0241
JB
7632 (ftfont_list): Handle the case where the representative chars of
7633 the script is a vector.
aac0c6e3
MR
7634
7635 * character.c (syms_of_character): Docstring of
7636 script-representative-chars fixed.
7637
76382008-08-31 Eli Zaretskii <eliz@gnu.org>
7639
7640 * msdos.c (BUILD_CHAR_GLYPH): New macro.
7641 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
7642 the menu. Allocate larger buffer for `text', to account for
7643 possible ^C characters.
7644
76452008-08-31 Martin Rudalics <rudalics@gmx.at>
7646
7647 * xdisp.c (prepare_menu_bars): Don't call
7648 Vwindow_size_change_functions with arg Qt.
7649
76502008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
7651
7652 * font.h (font_range):
7653 * fileio.c (report_file_error):
46e722a9
SM
7654 * composite.c (composition_update_it): Yet another int/Lisp_Object
7655 mixup (YAILOM).
aac0c6e3
MR
7656
76572008-08-30 Glenn Morris <rgm@gnu.org>
7658
7659 * data.c (Fmake_variable_frame_local): Doc fix.
7660
7661 * frame.c (Fmodify_frame_parameters): Doc fix.
7662
76632008-08-30 Eli Zaretskii <eliz@gnu.org>
7664
7665 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
7666 needed by GetTokenInformation.
7667 (w32_system_process_attributes): Check return values of all system
7668 APIs.
7669
7670 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
7671 only when the state changes.
7672 (IT_update_begin, IT_update_end): Add termscript trace.
7673
7674 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
7675 clipboard is unavailable. Set dst to NULL if it doesn't point to
7676 malloc'ed data.
7677 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
7678 passing random values to xfree.
7679
7680 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 7681 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
7682
76832008-08-29 Jason Rumney <jasonr@gnu.org>
7684
7685 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
7686
76872008-08-29 Eli Zaretskii <eliz@gnu.org>
7688
7689 * composite.c (fill_gstring_body): Avoid compiler warnings.
7690
7691 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
7692 LGLYPH_SET_CODE to avoid compiler warnings.
7693
2ae37cf0 7694 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
7695
7696 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
7697
7698 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
7699 LGLYPH_SET_CODE.
7700
77012008-08-29 Kenichi Handa <handa@m17n.org>
7702
7703 * fileio.c (report_file_error): Don't downcase the first character
7704 of errstring if it is still unibyte.
7705
77062008-08-29 Kenichi Handa <handa@m17n.org>
7707
7708 These changes are to re-implement the automatic composition so
7709 that it doesn't use text properties.
7710
7711 * Makefile.in (ftfont.o): Depend on composite.h.
7712 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
7713
7714 * character.h (Vunicode_category_table): Extern it.
7715
7716 * character.c (Vunicode_category_table): New variable.
7717 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
7718
7719 * chartab.c (optimize_sub_char_table): Perform more greedy
7720 optimization.
7721
b8ff72fa
SM
7722 * composite.h (enum composition_method):
7723 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
7724 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
7725 (Vcomposition_function_table): Extern it.
7726 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
7727 (composition_gstring_put_cache, composition_gstring_from_id)
7728 (composition_gstring_p, composition_gstring_width)
7729 (composition_compute_stop_pos, composition_reseat_it)
7730 (composition_update_it, composition_adjust_point): Extern them.
7731 (Fcomposition_get_gstring): EXFUN it.
7732
d66c0241 7733 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
7734 (Vcomposition_function_table)
7735 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
7736 (gstring_hash_table, gstring_work, gstring_work_headers):
7737 New variables.
aac0c6e3
MR
7738 (gstring_lookup_cache, composition_gstring_put_cache)
7739 (composition_gstring_from_id, composition_gstring_p)
7740 (composition_gstring_width, fill_gstring_header)
7741 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
7742 (composition_reseat_it, composition_update_it)
b8ff72fa 7743 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
7744 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
7745 and gstring_work_headers. DEFVAR_LISP composition-function-table.
7746 Defsubr compostion_get_gstring.
7747
7748 * dispextern.h (struct glyph): New union u.cmp. Delete the member
7749 cmp_id.
7750 (struct glyph_string): Delete the member gidx. New members
7751 cmp_id, cmp_from, and cmp_to.
7752 (enum it_method): Delete GET_FROM_COMPOSITION.
7753 (struct composition_it): New struct.
7754 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
7755 Delete c, len, cmp_id, cmp_len in u.comp.
7756
7757 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 7758 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 7759 (enum lglyph_indices): Likewise.
b8ff72fa 7760 (font_range): Adjust extern.
aac0c6e3
MR
7761 (font_fill_lglyph_metrics): Extern it.
7762
7763 * font.c (QCf): New variable.
7764 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7765 (font_prepare_composition): Delete this function.
7766 (font_range): Type and arguments changed.
7767 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
7768 (font_fill_lglyph_metrics): New function.
b8ff72fa 7769 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 7770 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
7771 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
7772 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
7773
7774 * fontset.h (font_for_char): Extern it.
7775
7776 * fontset.c (font_for_char): New function.
7777
7778 * ftfont.c: Include composite.h.
7779 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 7780 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
7781
7782 * indent.c: Include composite.h and dispextern.h.
7783 (check_composition): Delete this function.
7784 (scan_for_column): Handle composition by
7785 composition_compute_stop_pos, composition_reseat_it, and
7786 composition_update_it.
7787 (compute_motion): Likewise.
7788 (Fvertical_motion): Fix checking of composition.
7789
7790 * keyboard.c (adjust_point_for_property): Check composition by
7791 composition_adjust_point.
7792
b8ff72fa 7793 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
7794 struct glyph_string.
7795
b8ff72fa
SM
7796 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
7797 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
7798 struct glyph.
7799 (produce_composite_glyph): Likewise.
7800
b8ff72fa
SM
7801 * w32term.c (x_draw_composite_glyph_string_foreground):
7802 Adjust for the change of struct glyph_string.
aac0c6e3
MR
7803 (x_draw_glyph_string): Likewise.
7804
7805 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
7806 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
7807
7808 * xdisp.c: Include font.h.
7809 (it_props): Delete the entry for Qauto_composed.
7810 (init_iterator): Initialize it->cmp_it.id to -1.
7811 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 7812 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
7813 (handle_auto_composed_prop): Delete it.
7814 (handle_composition_prop): Handle only static composition.
7815 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
7816 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 7817 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
7818 (pop_it): Likewise.
7819 (get_next_element): Delete next_element_from_composition.
7820 (CHAR_COMPOSED_P): New macro.
7821 (get_next_display_element): For automatic composition, get a face
7822 from the font in the glyph-string.
7823 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 7824 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
7825 (next_element_from_string): Check if the character at the current
7826 position is composed by CHAR_COMPOSED_P.
7827 (next_element_from_buffer): Likewise.
d66c0241
JB
7828 (next_element_from_composition): Adjust for the change of struct it.
7829 Update it->cmp_it.
b8ff72fa
SM
7830 (dump_glyph): Adjust for the change of struct glyph.
7831 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
7832 it and struct glyph. Don't handle automatic composition here.
7833 (fill_gstring_glyph_string): New function.
7834 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 7835 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
7836 (BUILD_GSTRING_GLYPH_STRING): New macro.
7837 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
7838 automatic composition.
b8ff72fa 7839 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 7840 struct glyph.
b8ff72fa 7841 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 7842
b8ff72fa 7843 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
7844 the change of struct glyph_string.
7845 (x_draw_glyph_string): Likewise.
7846
78472008-08-29 Glenn Morris <rgm@gnu.org>
7848
7849 * buffer.c (word-wrap): Doc fix.
7850 * xdisp.c (truncate-partial-width-windows): Doc fix.
7851 Increase default to 50.
7852
78532008-08-29 Chong Yidong <cyd@stupidchicken.com>
7854
7855 * xdisp.c (update_tool_bar_unwind): New function.
7856 (update_tool_bar): Temporarily set selected frame before building
7857 tool-bar items.
7858
78592008-08-28 Michael Albinus <michael.albinus@gmx.de>
7860
7861 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
7862 snprintf, respectively.
7863 (xd_append_arg): Convert strings with Fstring_make_unibyte.
7864
78652008-08-28 Chong Yidong <cyd@stupidchicken.com>
7866
7867 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
7868 LDFLAGS to GNUstep CC invocation.
7869
78702008-08-27 Chong Yidong <cyd@stupidchicken.com>
7871
7872 * indent.c (Fvertical_motion): Revert last change. Handle the
7873 general case where we are moving forward, and PT spans multiple
7874 screen lines.
7875
7876 * eval.c (find_handler_clause): Temporarily increase
7877 max-lisp-eval-depth while printing the backtrace buffer, to
7878 guarantee that help-mode code can run.
7879
78802008-08-27 Eli Zaretskii <eliz@gnu.org>
7881
7882 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
7883 colors under -rv.
7884 (IT_set_frame_parameters): Don't swap foreground and background
7885 colors if `(reverse . t)' is present in the frame properties.
7886 (internal_terminal_init): Call init_frame_faces only for the
7887 initial frame.
7888
78892008-08-27 Andreas Schwab <schwab@suse.de>
7890
7891 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
7892
78932008-08-27 Andreas Schwab <schwab@suse.de>
7894
7895 * search.c (search_buffer): Set char_base to zero only at the end.
7896
78972008-08-27 Kenichi Handa <handa@m17n.org>
7898
b8ff72fa 7899 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
7900
79012008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
7902
7903 * xterm.c (x_term_init): Temporarily hide the partially
7904 initialized terminal while calling vendor-specific-keysyms.
7905
79062008-08-26 Eli Zaretskii <eliz@gnu.org>
7907
7908 * msdos.c (internal_terminal_init): Most initializations done only
7909 once, especially initial_screen_colors[] and termscript open.
7910
79112008-08-26 Chong Yidong <cyd@stupidchicken.com>
7912
7913 * eval.c (Fcondition_case): Doc fix.
7914
7915 * widgetprv.h (EmacsFramePart): Change font member to the new font
7916 struct.
7917
7918 * widget.c: Include character.h and font.h for XSETFONT.
7919 (setup_frame_gcs): Compute X font id from font struct, just once.
7920
79212008-08-26 Eli Zaretskii <eliz@gnu.org>
7922
7923 * term.c (get_named_tty): Fix last change.
7924
79252008-08-26 Chong Yidong <cyd@stupidchicken.com>
7926
7927 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 7928 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
7929
79302008-08-25 Eli Zaretskii <eliz@gnu.org>
7931
7932 * frame.c (do_switch_frame): Mark previously displayed frame as
7933 obscured for FRAME_MSDOS_P frames as well.
7934
79352008-08-24 Eli Zaretskii <eliz@gnu.org>
7936
7937 * frame.c (make_terminal_frame): Initialize f->terminal,
7938 f->terminal->reference_count, and scroll bars on MS-DOS as well.
7939 Set the top frame to newly created frame.
7940 (Fmake_terminal_frame): Reuse the_only_display_info.
7941
7942 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
7943 estimating available memory.
7944
b97439ce 79452008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
7946
7947 * nsterm.m (ns_draw_window_cursor): Don't call
7948 NSDisableScreenUpdates and NSEnableScreenUpdates on
7949 non-NS_IMPL_COCOA systems.
7950
79512008-08-23 Andreas Schwab <schwab@suse.de>
7952
7953 * process.c (procfs_system_process_attributes): Fix use of
7954 uninitialized variables.
7955
79562008-08-23 Eli Zaretskii <eliz@gnu.org>
7957
7958 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
7959
7960 * dispnew.c (init_display): Remove MS-DOS specific conditions for
7961 calling tty-set-up-initial-frame-faces.
7962
b8ff72fa
SM
7963 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
7964 Allow MSDOS frames along with X frames.
aac0c6e3
MR
7965
7966 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
7967 addition to output_termcap.
7968
7969 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
7970
7971 * termchar.h (FRAME_TTY): Support output_msdos_raw.
7972 (struct tty_display_info) [MSDOS]: Add fields related to mouse
7973 highlight.
7974
7975 * process.c [!subprocesses]: Define QCname.
7976 (syms_of_process): Intern and staticpro it.
7977
7978 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
7979 Adjust for changes in encoding/decoding routines.
7980 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
7981 encode_coding and decode_coding.
7982
b8ff72fa 7983 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
7984
7985 * dosfns.c: Include frame.h before termhooks.h.
7986 (dos_cleanup): Use CURTTY ()->termscript instead of a global
7987 variable termscript.
7988
7989 * s/msdos.h (USER_FULL_NAME): Define.
7990 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
7991
7992 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
7993 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
7994 pw->pw_gecos.
7995
7996 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
7997 SELECTED_FRAME as additional (1st) argument.
7998 (tty_read_avail_input): Handle output_msdos_raw in
7999 addition to output_termcap.
8000
8001 * msdos.c: Include frame.h before termhooks.h.
8002 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8003 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8004 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8005 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8006 (IT_set_terminal_modes, IT_reset_terminal_modes)
8007 (IT_set_frame_parameters): Use tty->termscript instead of a global
8008 variable termscript.
8009 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8010 global variable terminal_coding. Don't refer to
8011 Vnonascii_translation_table.
8012 (internal_terminal_init): Set Vwindow_system in current_kboard.
8013 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8014 Announce date and time of session start, if termscript is open.
8015 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
8016 term.c:init_tty). Open termscript only of not already open.
8017 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
8018 here instead of dos_ttraw. Don't initialize display if this is an
8019 initial tty. Don't set FRAME_FONT.
8020 (Vwindow_system_version): Bump to 23.
8021 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8022 is available, set up mouse_position_hook.
8023 (dos_ttraw, IT_set_terminal_modes): If called with initial
8024 terminal, do nothing.
8025 (IT_set_frame_parameters): Handle the Qtty_type frame
8026 parameter by calling internal_terminal_init.
8027 (dos_set_window_size, show_mouse_face)
8028 (clear_mouse_face, IT_note_mode_line_highlight)
8029 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8030 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8031 (initialize_msdos_display): New function.
8032 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8033 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8034 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8035 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 8036 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
8037 (request_sigio, unrequest_sigio): Don't define, now defined on
8038 sysdep.c.
8039 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8040
8041 * term.c [MSDOS]: Include msdos.h.
8042 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8043 conditional to DOS_NT. Allow only one call to this function in a
8044 session. Don't allocate a new struct tty_display_info; instead,
8045 reuse the_only_display_info. Call get_tty_size to get screen
8046 dimensions. Call init_baud_rate to set bad_rate.
8047 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8048 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 8049 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
8050 (get_tty_terminal, get_named_tty, Ftty_type)
8051 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8052 output_termcap.
b8ff72fa
SM
8053 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8054 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 8055 only when subprocesses are supported.
aac0c6e3
MR
8056
8057 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8058 f->output_data.x.
8059 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8060 terminal devices.
8061
5582fbc7 8062 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
8063 x_output.
8064 (FRAME_FONT): Use output_data.tty.
8065 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
8066 (struct x_display_info): Rename from display_info. Update all users in
8067 msdos.c.
aac0c6e3 8068 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 8069 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
8070 (dos_ttraw): Update prototype.
8071
8072 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8073 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8074
80752008-08-23 Jason Rumney <jasonr@gnu.org>
8076
8077 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8078 (fn_TIFFSetDirectory): New library function used.
8079 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8080 (tiff_load): Use :index to select among multiple images. Set count
8081 property when multiple images exist.
8082 (gif_format): Use :index, not :image.
8083
80842008-08-23 Chong Yidong <cyd@stupidchicken.com>
8085
8086 * xdisp.c (try_scrolling): Check INT_MAX instead of
8087 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8088 to obtain INT_MAX.
8089
80902008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8091
8092 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8093
80942008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8095
8096 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8097 GNUstep library location.
8098
80992008-08-21 Chong Yidong <cyd@stupidchicken.com>
8100
8101 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8102 before using it.
8103
8104 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8105
81062008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8107
8108 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8109 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8110 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8111 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8112 (EmacsApp-cursor_blink_handler): Remove declaration.
8113 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8114 match 01 Feb 2008 changes in xterm.c.
8115 (ns_read_socket): Add cast to avoid warning.
8116 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8117 GNUstep.
8118
81192008-08-20 Chong Yidong <cyd@stupidchicken.com>
8120
8121 * xselect.c (x_get_foreign_selection): Return nil if desired
8122 selection could not be obtained, instead of signalling an error.
8123
81242008-08-20 David Reitter <david.reitter@gmail.com>
8125
8126 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8127 * nsterm.m: Remove ns-specific code for cursor blinking.
8128 (ns_draw_window_cursor): Clear cursor properly rather than
8129 redrawing the area. Respect width of bar cursors.
8130 These changes enable the use of generic blink-cursor-mode and
8131 generic cursor types in NS and support smooth cursor movements (do
8132 not blink off after command).
8133 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8134 Nextstep, too.
8135
81362008-08-19 Kenichi Handa <handa@m17n.org>
8137
8138 * font.c (Vfont_log_deferred): New variable.
8139 (font_add_log): Check Vfont_log_deferred.
8140 (font_deferred_log): New function.
8141
8142 * font.h (font_deferred_log): Extern it.
8143
8144 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8145 for sorting.
8146 (face_for_char): Use deferred log.
8147
81482008-08-18 Kenichi Handa <handa@m17n.org>
8149
8150 * fontset.c (face_for_char): Add font log.
8151
8152 * font.c (font_add_log): Add the font properties :script, :lang,
8153 and :otf in the log.
8154
81552008-08-17 Chong Yidong <cyd@stupidchicken.com>
8156
8157 * xdisp.c: Remove dead code.
8158 (handle_invisible_prop, next_overlay_string): Defer call to
8159 setup_for_ellipsis.
8160 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8161
81622008-08-15 Chong Yidong <cyd@stupidchicken.com>
8163
8164 * xfaces.c (lookup_derived_face): Properly handle possible zero
8165 return value of get_lface_attributes.
8166 (merge_faces): Don't tell lookup_derived_face to signal an error
8167 if face is not found.
8168
8169 * dired.c (Fdirectory_files): Doc fix.
8170
8171 * process.c (make_process): Initialize kill_without_query struct
8172 member.
8173
81742008-08-15 Eli Zaretskii <eliz@gnu.org>
8175
8176 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8177 Alternative calculation of totphys for Visual Studio 6.
8178
8179 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8180
8181 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8182 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8183 All users changed.
8184 (stat): Only root directory passed to GetDriveType. Allow RAM
8185 disk as well as local fixed disk when w32-get-true-file-attributes
8186 is set to `local'.
8187 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8188 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8189 (w32_cached_id, w32_add_to_cache): New functions.
8190 (get_name_and_id): Look account names in the cache before calling
8191 lookup_account_sid.
8192 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8193 New initialization flags.
8194 (globals_of_w32): Initialize them to zero.
8195 (w32_system_process_attributes): Use w32_cached_id and
8196 w32_add_to_cache.
8197
81982008-08-14 Lawrence Mitchell <wence@gmx.li>
8199
8200 * lread.c (Fread_char, Fread_char_exclusive): If no character
8201 event is read before timeout is reached, return nil, rather than
8202 converting to a number.
8203
82042008-08-14 Chong Yidong <cyd@stupidchicken.com>
8205
8206 * fns.c (use_dialog_box): Doc fix.
8207
8208 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8209 on OS X.
8210
82112008-08-13 Chong Yidong <cyd@stupidchicken.com>
8212
8213 * frame.c (Qns_parse_geometry): New var.
8214 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8215
82162008-08-11 Chong Yidong <cyd@stupidchicken.com>
8217
8218 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8219 space character in calculating tabs.
8220
82212008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8222
8223 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8224
82252008-08-10 Glenn Morris <rgm@gnu.org>
8226
8227 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8228 silence gcc "limited range of data type" warnings in some
8229 make_fixnum_or_float calls.
8230
82312008-08-09 Eli Zaretskii <eliz@gnu.org>
8232
8233 * w32.c (w32_system_process_attributes): If the process does not
8234 exist, return nil.
8235
8236 * w32.c: Include thelp32.h, psapi.h and coding.h.
8237 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8238 declarations.
8239 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8240 (Process32Next_Proc): New typedefs.
8241 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8242 (g_b_init_process32_next, g_b_init_open_thread_token)
8243 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8244 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8245 (g_b_init_get_process_working_set_size)
8246 (g_b_init_global_memory_status_ex): New static variables.
8247 (globals_of_w32): Initialize them.
8248 (create_toolhelp32_snapshot, process32_first, process32_next)
8249 (open_thread_token, impersonate_self, revert_to_self)
8250 (get_process_memory_info, get_process_working_set_size)
8251 (global_memory_status, global_memory_status_ex): New wrapper
8252 functions.
8253 (w32_list_system_processes, w32_system_process_attributes)
8254 (enable_privilege, restore_privilege, ltime, process_times):
8255 New functions.
8256 (convert_time_raw): New function.
8257 (convert_time): Remove conversion of FILETIME into time in 100
8258 nsec units, call convert_time_raw instead.
8259
8260 * process.h (w32_list_system_processes, w32_system_process_attributes):
8261 Add prototypes.
8262 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8263 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8264 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8265 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8266
8267 * process.c (Fsystem_process_attributes): Doc fix.
8268
82692008-08-08 Chong Yidong <cyd@stupidchicken.com>
8270
8271 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8272 a continued multi-char glyph; if so, advance to the actual glyph.
8273
82742008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8275
8276 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8277
8278 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8279 (.m.o): Use it.
8280 * config.in: Regenerate.
8281
82822008-08-07 Chong Yidong <cyd@stupidchicken.com>
8283
8284 * xdisp.c (redisplay_window): Revert last change.
8285 (try_window): Check bottom scroll margin too.
8286
82872008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8288
8289 * config.in: Regenerate.
8290
8291 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8292 -list-load-path-shadows'.
8293 (nsgui.h): Reduce number of things depending on it.
8294
82952008-08-06 Chong Yidong <cyd@stupidchicken.com>
8296
8297 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8298 instead of window-end which does the wrong thing at eob.
8299 (try_cursor_movement): Minor optimization.
8300 (redisplay_window): If scroll margin is defined, don't assume
8301 window doesn't need scrolling.
8302
83032008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8304
8305 * config.in: Regenerate.
8306
8307 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8308 (mostlyclean): Don't delete *.d under NS.
8309
8310 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8311
83122008-08-06 Kenichi Handa <handa@m17n.org>
8313
8314 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8315
83162008-08-06 Andreas Schwab <schwab@suse.de>
8317
8318 * config.in: Regenerate.
8319
83202008-08-05 Chong Yidong <cyd@stupidchicken.com>
8321
8322 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8323 forcing a window start.
8324
8325 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8326 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8327
83282008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8329
8330 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8331 argument.
8332
83332008-08-05 Juanma Barranquero <lekktu@gmail.com>
8334
8335 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8336 <scroll-down-aggressively, before-change-functions>:
8337 <after-change-functions>: Reflow docstrings.
8338
83392008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8340 Ken Raeburn <raeburn@gnu.org>
8341
8342 Dock menu customization, based on a patch by Ken Raeburn, plus some
8343 other fixes.
8344 * nsmenu.m (dockMenu): New variable.
8345 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8346
8347 * nsterm.h (dockMenu): Declare.
8348
8349 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8350 (ns_term_init): Initialize dockMenu.
8351 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8352 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8353 left.
8354
8355 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8356
83572008-08-04 Chong Yidong <cyd@stupidchicken.com>
8358
8359 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8360
8361 * config.in: Regenerate.
8362
83632008-08-04 Seiji Zenitani <zenitani@mac.com>
8364
8365 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8366
83672008-08-04 Chong Yidong <cyd@stupidchicken.com>
8368
8369 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8370
83712008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8372
8373 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8374
8375 * keyboard.h: Comment an #endif.
8376
8377 * lisp.h (have_menus_p): Adjust comment.
8378
8379 * menu.c (find_and_return_menu_selection): Fix comparison with
8380 client_data.
8381
8382 * nsmenu.m (popup_activated_flag): New variable.
8383 (popup_activated): New function.
8384 (menu-or-popup-active-p): New exported lisp definition.
8385 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
8386 when popup done.
8387 (ns_popup_dialog): Set popup_activated_flag.
8388
8389 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
8390 version for GNUstep (handled by conditional typedef in nsterm.m).
8391 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
8392 in rgb.txt).
8393
8394 * process.c (init_process): Use DARWIN_OS, not DARWIN.
8395
8396 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
8397
8398 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
8399
8400 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
8401 shortcircuit if popup_activated like GTK and X toolkit.
8402
8403 * m/inter386.h: Change DARWIN to DARWIN_OS.
8404
8405 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
8406 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
8407 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
8408 comment on NO_SOCK_SIGIO.
8409
84102008-08-03 Chong Yidong <cyd@stupidchicken.com>
8411
8412 * nsterm.m (windowDidResize): Remove stopModal call.
8413
84142008-08-03 Andreas Schwab <schwab@suse.de>
8415
8416 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
8417 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
8418
84192008-08-02 Chong Yidong <cyd@stupidchicken.com>
8420
8421 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
8422 Don't use uninitialized pointer variable when using getrlimit.
8423
84242008-08-02 Jason Rumney <jasonr@gnu.org>
8425
8426 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
8427
84282008-08-02 Eli Zaretskii <eliz@gnu.org>
8429
8430 * alloc.c (NSTATICS): Bump to 0x640.
8431
8432 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
8433
8434 * lisp.h: Add prototype for directory_files_internal.
8435
8436 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
8437 New functions.
8438 (syms_of_process): Defsubr them. Add initializations for various
8439 Q* symbols used in procfs_system_process_attributes.
8440 (procfs_list_system_processes, procfs_system_process_attributes)
8441 [HAVE_PROCFS]: New functions.
8442 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
8443 (procfs_get_total_memory): New functions.
8444
84452008-08-01 Juanma Barranquero <lekktu@gmail.com>
8446
8447 * xfaces.c (Fx_load_color_file): Fix previous change;
8448 it is #ifdef WINDOWSNT, not WINDOWS_NT.
8449
84502008-08-01 Michael Albinus <michael.albinus@gmx.de>
8451
8452 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
8453
84542008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8455
8456 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
8457
84582008-08-01 Chong Yidong <cyd@stupidchicken.com>
8459
8460 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
8461
8462 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
8463 define NSApplicationDelegateReplySuccess.
8464 (EmacsView -converstationIdentifier): Use long instead of
8465 NSInteger for GNUstep, since it doesn't have NSInteger.
8466
8467 * xmenu.c: Revert last change.
8468
8469 * keyboard.h: Fix last change.
8470
84712008-08-01 Juanma Barranquero <lekktu@gmail.com>
8472
8473 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
8474 on Windows.
8475
84762008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8477
8478 Warning clearing and clean-up in NS port.
8479 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
8480 Add prototypes.
8481 * nsgui.h (FACE_DEFAULT): Remove, unused.
8482 (XGCValues): Change colors to unsigned long.
8483 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
8484 nsterm.m.
8485 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
8486 (ns_list_fonts): Remove, unused.
8487 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
8488 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
8489 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
8490 (nsfont_draw): Compare face colors to 0, not nil.
8491 * nsmenu.m (struct widget_value): Drop unneeded declaration.
8492 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
8493 (-addSubmenuWithTitle:): Use NSMenuItem class.
8494 (ns_popup_menu): Use NO, not NULL, for enabled setting.
8495 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
8496 (ns_clip_to_row): Make gc arg a BOOL.
8497 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
8498 ns_clip_to_row() call.
8499 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
8500 used). Cast FRAME_FONT assignments.
8501 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
8502 (ns_string_to_lispmod): Change arg to const char.
8503 (ns_term_init): Use NSMenuItem class.
8504 (EmacsApp -openFile:): Move to different section of file.
8505 (EmacsApp -application:openFiles:): Don't return a value, call
8506 -replyToOpenOrPrint:.
8507 (EmacsView -keyDown:): Fix up cast.
8508 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
8509 (EmacsView -menuDown:): Cast tag in call to
8510 find_and_call_menu_selection().
8511 (ns_list_fonts): Remove, unused.
8512 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
8513 (ns_fontname_to_xlfd): Make static.
8514 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
8515 Remove prototypes (now in keyboard.h).
8516 (next_menubar_widget_id): Remove, unused.
8517 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
8518 Remove prototypes (now in keyboard.h).
8519 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
8520
85212008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
8522
8523 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
8524 (floatfns.o): Depend on syssignal.h.
8525 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
8526
8527 * systty.h: Fix previous change that removed BSD_TERMIOS.
8528 Add comments to #ifdefs.
8529
85302008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8531
8532 * w32fns.c (w32-load-color-file): Remove.
8533 (x-open-connection): Use renamed Fx_load_color_file.
8534 * xfaces.c (x-load-color-file): Add.
8535 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
8536 Emacs.clr.
8537 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
8538
85392008-07-31 Michael Albinus <michael.albinus@gmx.de>
8540
8541 * dbusbind.c (Fdbus_call_method_asynchronously)
8542 (Fdbus_method_error_internal): New defuns.
8543 (xd_read_message): Handle also reply messages.
8544 (Vdbus_registered_functions_table): Extend docstring.
8545
85462008-07-31 Juanma Barranquero <lekktu@gmail.com>
8547
8548 * keyboard.c (gobble_input): Fix previous change.
8549
85502008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8551
8552 * bitmaps/README:
8553 * xfns.c:
8554 * termcap.c:
8555 * term.c:
8556 * syswait.h:
8557 * systty.h:
8558 * systime.h:
8559 * syssignal.h:
8560 * sysdep.c:
8561 * process.h:
8562 * process.c:
8563 * print.c:
8564 * ndir.h:
8565 * lread.c:
8566 * keyboard.c:
8567 * getpagesize.h:
8568 * floatfns.c:
8569 * fileio.c:
8570 * emacs.c:
8571 * doc.c:
8572 * dispnew.c:
8573 * dired.c:
8574 * data.c:
8575 * callproc.c:
8576 * buffer.c:
8577 * README:
8578 * Makefile.in:
8579 * s/template.h:
8580 * s/msdos.h:
8581 * m/vax.h: Remove VMS support.
8582 * s/vms.h:
8583 * vlimit.h:
8584 * uaf.h:
8585 * temacs.opt:
8586 * param.h:
8587 * ioctl.h: Remove file.
8588
85892008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8590
8591 * s/ms-w32.h (MULTI_KBOARD): Remove.
8592 * xterm.c:
8593 * xselect.c:
8594 * xfns.c:
8595 * window.c:
8596 * w32term.c:
8597 * w32fns.c:
8598 * terminal.c:
8599 * termhooks.h:
8600 * term.c:
8601 * sysdep.c:
8602 * keyboard.h:
8603 * keyboard.c:
8604 * frame.h:
8605 * frame.c:
8606 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
8607 * config.in: Regenerate.
8608
86092008-07-30 Jason Rumney <jasonr@gnu.org>
8610
8611 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
8612
8613 * w32font.c (w32font_encode_char): Leave as unicode if in range.
8614 (w32font_open_internal): Get unicode version of textmetrics.
8615 Don't enable or disable glyph indices here.
8616 (w32font_open): Disable use of glyph indices.
8617
8618 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
8619
86202008-07-30 Chong Yidong <cyd@stupidchicken.com>
8621
8622 * minibuf.c (Vread_buffer_function): Doc fix.
8623
86242008-07-30 John Paul Wallington <jpw@pobox.com>
8625
8626 * minibuf.c (read_buffer_completion_ignore_case): New var.
8627 (Fread_buffer): Use it.
8628
86292008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
8630
8631 * systty.h (sensemode): Remove empty #if. Remove reference to
8632 BSD_TERMIOS, unused.
8633
8634 * sysdep.c: Remove reference to DGUX.
8635 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
8636
8637 * config.in: Regenerate.
8638
86392008-07-30 Jason Rumney <jasonr@gnu.org>
8640
8641 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
8642
86432008-07-29 Jason Rumney <jasonr@gnu.org>
8644
8645 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
8646 is populated.
8647 (uniscribe_encode_char): Always use uniscribe.
8648 Avoid using context if cache is populated.
8649
86502008-07-29 Jan Djärv <jan.h.d@swipnet.se>
8651
8652 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
8653 open menu.
8654
8655 * gtkutil.c (menu_nav_ended): Remove.
8656 (create_menus): Remove signal connect for menu_nav_ended.
8657
86582008-07-28 Chong Yidong <cyd@stupidchicken.com>
8659
8660 * xdisp.c (redisplay_window): Check return value of
8661 compute_window_start_on_continuation_line before forcing a window
8662 start.
8663
86642008-07-28 Jason Rumney <jasonr@gnu.org>
8665
8666 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
8667
8668 * w32term.c (w32_enable_unicode_output, cleartype_active):
8669 Remove obsolete display options.
8670 (x_draw_glyph_string_background): Don't use old cleartype_active
8671 workaround.
8672 (w32_initialize): Remove cleartype_active initialization.
8673 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
8674
86752008-07-28 Andreas Schwab <schwab@suse.de>
8676
8677 * lisp.h (init_weak_hash_tables, syms_of_font)
8678 (xd_read_queued_messages, syms_of_dbusbind): Declare.
8679 (remove_hash_entry): Don't declare.
8680 * eval.c (maybe_call_debugger): Make static and move before use.
8681 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
8682 * xdisp.c: Include "gtkutil.h" if USE_GTK.
8683 * xterm.h (x_set_frame_alpha): Declare.
8684
86852008-07-28 Jan Djärv <jan.h.d@swipnet.se>
8686
8687 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
8688 (create_menus): Connect selection-done to menu_nav_ended.
8689
86902008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8691
8692 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
8693 Set Vx_resource_name to a fallback. Replace read of 'buffered'
8694 parameter with read of 'alpha' one.
8695 (Qns_frame_parameter): Remove.
5582fbc7 8696 * nsselect.m (selection-coding-system)
aac0c6e3
MR
8697 (next-selection-coding-system, Vselection_coding_system)
8698 (Vnext_selection_coding_system): Drop.
8699
87002008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8701
8702 * nsfns.m (do-applescript, do_applescript): Rename to
8703 ns-do-applescript, ns_do_applescript, and move within file.
8704
87052008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
8706
8707 Remove support for Mac Carbon.
8708 * mactoolbox.c:
8709 * macterm.h:
8710 * macterm.c:
8711 * macselect.c:
8712 * macmenu.c:
8713 * macgui.h:
8714 * macfns.c:
8715 * mac.c: Remove file.
8716 * s/darwin.h:
8717 * m/intel386.h:
8718 * xfaces.c:
8719 * xdisp.c:
8720 * window.c:
8721 * tparam.c:
8722 * termhooks.h:
8723 * termcap.c:
8724 * term.c:
8725 * syssignal.h:
8726 * sysselect.h:
8727 * sysdep.c:
8728 * process.c:
8729 * lread.c:
8730 * lisp.h:
8731 * keyboard.c:
8732 * image.c:
8733 * fringe.c:
8734 * frame.h:
8735 * frame.c:
8736 * fontset.c:
8737 * font.h:
8738 * font.c:
8739 * fns.c:
8740 * fileio.c:
8741 * emacs.c:
8742 * dispnew.c:
8743 * dispextern.h:
8744 * config.in:
8745 * atimer.c:
2ae37cf0 8746 * Makefile.in: Remove code for Carbon.
aac0c6e3 8747
f0131492 87482008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
8749
8750 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
8751
87522008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8753
8754 * macterm.h (kCGBitmapByteOrder32Host): New define for
8755 non-universal SDKs.
8756
8757 * image.c (mac_create_cg_image_from_image, image_load_image_io)
8758 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8759
8760 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
8761 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
8762
87632008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
8764
8765 * w32inevt.c: Include dispextern.h.
8766
87672008-07-26 Andreas Schwab <schwab@suse.de>
8768
8769 * print.c (print_object): Fix off-by-one in last change.
8770
87712008-07-25 Juanma Barranquero <lekktu@gmail.com>
8772
8773 * term.c (syms_of_term): Don't initialize default_orig_pair,
8774 default_set_foreground and default_set_background on Windows.
8775
87762008-07-25 Jason Rumney <jasonr@gnu.org>
8777
8778 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
8779 ScriptItemize. Clean up return value checking. Remove unused
8780 variables.
8781 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
8782 shaping engine.
8783
8784 * w32font.c (w32font_has_char): Handle the case where we can't
8785 determine the script for a character.
8786
87872008-07-25 Chong Yidong <cyd@stupidchicken.com>
8788
8789 * term.c (syms_of_term): Initialize default_orig_pair,
8790 default_set_foreground, and default_set_background.
8791
8792 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
8793 clash (bug#86).
8794 (getloadavg): Callers changed.
8795
8796 * image.c (svg_load_image): Fix last change.
8797 (svg_load_image): Use rsvg_handle_get_dimensions to check that
8798 image size is valid. Use g_object_unref instead of deprecated
8799 rsvg_handle_free to free rsvg handle.
8800 (x_from_xcolors): Don't initialize pixmap (silence compiler).
8801
88022008-07-25 Jason Rumney <jasonr@gnu.org>
8803
8804 * w32font.c (w32font_encode_char): Encode characters outside BMP as
8805 surrogates before looking up glyph index.
8806 (w32font_text_extents): Encode as surrogates if falling back to
8807 functions that need UTF-16 wide chars.
8808
8809 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
8810 BMP as surrogates before looking up glyph index.
8811
88122008-07-25 Chong Yidong <cyd@stupidchicken.com>
8813
8814 * image.c (svg_load_image): Check for failure in return value of
8815 rsvg_handle_get_pixbuf. Free rsvg handle when done.
8816
88172008-07-25 Jason Rumney <jasonr@gnu.org>
8818
8819 * w32font.c (Fx_select_font): Reverse sense of second arg.
8820
88212008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
8822
8823 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
8824 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
8825
8826 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
8827 (PURESIZE): Use it.
8828
88292008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
8830
8831 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
8832 * m/alpha.h (TEXT_END):
8833 * m/ibmrs6000.h (TEXT_END):
8834 * m/macppc.h (TEXT_END):
8835 * s/darwin.h (TEXT_END):
8836 * s/msdos.h (TEXT_END): Remove, unused.
8837 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
8838 * s/cygwin.h: Remove comment.
8839
8840 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
8841 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
8842 * m/intel386.h (DOT_GLOBAL_START):
8843 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
8844 (USG): Remove, file not used on USG platforms.
8845
8846 * Makefile.in (HAVE_X11): Remove empty #else.
8847
88482008-07-24 Andreas Schwab <schwab@suse.de>
8849
8850 * fileio.c (Finsert_file_contents): Properly adjust undo list
8851 after format conversion.
8852
88532008-07-24 Jan Djärv <jan.h.d@swipnet.se>
8854
8855 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
8856 (menu_nav_ended): Remove.
8857 (create_menus): Remove signal connect for menu_nav_ended.
8858 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
8859 create_menus.
8860 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
8861
88622008-07-23 Jason Rumney <jasonr@gnu.org>
8863
8864 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
8865 with opened font.
8866 (w32font_open): Set font type to gdi.
8867
8868 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
8869
88702008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
8871
8872 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
8873 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
8874 defines it.
8875 * unexec.c (ADDR_CORRECT): Define unconditionally.
8876
8877 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
8878
8879 * unexec.c: Remove code depending on !COFF and USG, the file is
8880 not used for such systems.
8881
8882 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
8883 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
8884 (LD_SWITCH_SYSTEM_1): Remove, update users.
8885
8886 * s/darwin.h (DATA_END):
8887 * m/intel386.h (DATA_END):
8888 * m/ibmrs6000.h (DATA_END):
8889 * m/alpha.h (DATA_END): Remove, unused.
8890
8891 * config.in: Regenerate.
8892 * s/ms-w32.h (subprocesses): Define unconditionally.
8893 * s/template.h (subprocesses): Update comment.
8894 * s/vms.h (subprocesses):
8895 * s/usg5-4.h (subprocesses):
8896 * s/hpux10-20.h (subprocesses):
8897 * s/gnu-linux.h (subprocesses):
8898 * s/cygwin.h (subprocesses):
8899 * s/bsd-common.h (subprocesses):
8900 * s/aix4-2.h (subprocesses):
8901 * s/darwin.h (subprocesses): Do not define, defined by default now.
8902
8903 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
8904 Remove all references.
8905 (temacs): Add GNUstep specific ld flags.
8906
8907 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
8908 similarly to what X does.
8909
89102008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8911
8912 * nsfns.m (x-list-fonts): Remove.
8913 (syms_of_nsfns): Drop the x-list-fonts declaration.
8914 * nsterm.m: Get rid of remaining "//" comments.
8915
89162008-07-22 Chong Yidong <cyd@stupidchicken.com>
8917
8918 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
8919
8920 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
8921 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
8922 (Fns_own_selection_internal, Fx_disown_selection_internal)
8923 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
8924
8925 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
8926 ... */' style of docstrings. Doc fixes.
8927
89282008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8929
8930 * terminfo.c (UP, BC, PC): Undo previous change.
8931
8932 * nsfns.m: Rename ns prefixed functions/variables to the
8933 corresponding x versions. Update references.
8934
89352008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
8936
8937 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
8938
89392008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
8940
8941 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
8942 Remove forwarding functions.
8943 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
8944 non-static.
8945 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
8946 non-static.
8947 (ns_frame_parm_handlers): Use the new names.
8948 (syms_of_nsfns): Move to the end of file.
8949
8950 * nsterm.m (syms_of_nsterm): Move to the end of file.
8951
8952 * dispnew.c (init_display): Remove code for X10.
8953
89542008-07-22 Jason Rumney <jasonr@gnu.org>
8955
8956 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
8957 bare drive.
8958
89592008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8960
8961 * nsterm.m (syms_of_nsterm): Remove debugging println.
8962
89632008-07-22 David Reitter <david.reitter@gmail.com>
8964
8965 * nsfns.m (do_applescript, F_do_applescript): NS version of the
8966 Carbon implementation of the same functionality: execute arbitrary
8967 AppleScript code.
8968
89692008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
8970
8971 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
8972 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
8973 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
8974 (Fx_display_mm_height, Fx_display_mm_width)
8975 (Fx_display_backing_store, Fx_display_visual_class)
8976 (Fx_display_save_under, Fx_open_connection)
8977 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
8978 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
8979 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
8980 (Fx_display_pixel_width, Fx_display_pixel_height)
8981 (Fx_display_usable_bounds, Fx_display_planes)
8982 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
8983 ... */' style of docstrings.
8984
89852008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
8986
8987 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
8988 on this platform.
8989 (mips):
8990 * m/iris4d.h (mips): Do not define.
8991 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
8992
8993 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
8994
8995 * image.c:
8996 * nsfns.m:
8997 * nsselect.m:
8998 * nsterm.h:
8999 * nsterm.m: Rename ns prefixed functions/variables to the
9000 corresponding x versions. Update references.
9001
9002 * m/ibms390x.h (NO_REMAP): Do not undefine.
9003
9004 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9005
90062008-07-21 Chong Yidong <cyd@stupidchicken.com>
9007
9008 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9009 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9010 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9011 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9012 (Fns_display_mm_height, Fns_display_mm_width)
9013 (Fns_display_backing_store, Fns_display_visual_class)
9014 (Fns_display_save_under, Fns_open_connection)
9015 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9016 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9017 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9018 (Fns_display_pixel_width, Fns_display_pixel_height)
9019 (Fns_display_usable_bounds, Fx_display_planes)
9020 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9021
90222008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9023
9024 * print.c (print_object): Check print_depth before searching for
9025 circularities.
9026
90272008-07-21 Michael Albinus <michael.albinus@gmx.de>
9028
9029 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9030 only sprintf.
9031
90322008-07-21 Kenichi Handa <handa@m17n.org>
9033
9034 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9035
90362008-07-20 Andreas Schwab <schwab@suse.de>
9037
9038 * syntax.c (find_start_pos, find_start_value)
9039 (find_start_value_byte, find_start_begv, find_defun_start)
9040 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9041
90422008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9043
9044 * s/sol2-3.h: Insert contents of s/sol2.h.
9045 (LD_SWITCH_SYSTEM): Remove redundant definition.
9046 * s/sol2.h: Remove, unused.
9047
90482008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9049
9050 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9051
90522008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9053
9054 * Makefile.in (ns_appdir): Fix typo in find command.
9055
90562008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9057
9058 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9059
9060 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9061 added not supported anymore.
9062
9063 * s/usg5-4-2.h (LIBS_SYSTEM):
9064 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9065
9066 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9067 * s/lynxos.h (GETPGRP_NO_ARG):
9068 * s/hpux10-20.h (NO_SIOCTL_H):
9069 * s/gnu.h (GETPGRP_NO_ARG):
9070 * s/gnu-linux.h (NO_SIOCTL_H):
9071 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9072 * s/cygwin.h (GETPGRP_NO_ARG):
9073 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9074 (C_DEBUG_SWITCH): Remove duplicate definition.
9075
9076 * m/ibms390.h: Remove boilerplate comments.
9077
9078 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9079
9080 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9081 (wait_reading_process_output): Remove code for SunOS, platform not
9082 supported anymore. Use SOLARIS2 instead of sun.
9083
90842008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9085
9086 * font.c (font_open_by_name): Under NS, default lface height to zero.
9087 (font_open_for_lface): Under NS, set size based on frame fontsize.
9088 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9089 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9090
90912008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9092
9093 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9094 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9095 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9096 YES/NO.
9097 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9098 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9099 * Makefile.in (clean): Clear out build destination dir.
9100
91012008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9102
9103 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9104 xterm, xselect.
9105 * lisp.h: Remove declaration of hash_remove.
9106 * nsgui.h: Remove redefinitions of hash_remove.
9107 * fns.c (hash_remove): Rename to hash_remove_from_table.
9108
91092008-07-19 Seiji Zenitani <zenitani@mac.com>
9110
9111 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9112 strdup() the family UTF8String before modifying it.
9113
91142008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9115
9116 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9117 NS_FACE_BACKGROUND with 0 instead of nil.
9118 * nsfont.m (nsfont_draw): Same.
9119
91202008-07-19 Chong Yidong <cyd@stupidchicken.com>
9121
9122 * nsfns.m (ns_set_background_color): Fix crash.
9123
91242008-07-18 Chong Yidong <cyd@stupidchicken.com>
9125
9126 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9127
91282008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9129
9130 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9131
91322008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9133
9134 * gtkutil.c: Include <config.h> instead of "config.h".
9135
9136 * lisp.h (Foverlay_buffer): Add EXFUN.
9137
9138 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9139 child process to complete child_setup. Undo 2005-09-21 change.
9140
9141 * s/darwin.h: Mention setsid after vfork.
9142
91432008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9144
9145 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9146 Depend on macgui.h.
9147
9148 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9149 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9150
9151 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9152 and f19.
9153 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9154
9155 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9156 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9157 Remove enumerators.
9158
9159 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9160 Check if FACE_FROM_ID returns NULL.
9161
91622008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9163
9164 * w32inevt.c (change_frame_size): Remove extern declaration.
9165 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9166 change_frame_size.
9167
91682008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9169
9170 * getloadavg.c: Revert last change (2008-07-15).
9171
91722008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9173
9174 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9175 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9176 from configure.
9177
91782008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9179
9180 * s/sol2.h:
9181 * s/sol2-4.h: Reorganize conditionals.
9182
9183 * ecrt0.c: Remove code depending on m68000, not used anymore.
9184
9185 * fns.c (hash_remove): Make static.
9186 * lisp.h (hash_remove): Don't prototype.
9187
9188 * m/ibmrs6000.h:
9189 * m/ibms390x.h:
9190 * m/macppc.h: Remove boilerplate comments.
9191
9192 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9193 Solaris, which does not need them.
9194
9195 * m/vax.h: Remove comments about unsupported systems.
9196
9197 * s/darwin.h: Reorganize ifdefs.
9198
91992008-07-17 Andreas Schwab <schwab@suse.de>
9200
9201 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9202
92032008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9204
9205 Use SDATA. Follow coding convention of placing operators at
9206 beginning of next line rather than end of previous line, and placing
9207 spaces around infix operators.
9208
9209 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9210 in case it was defined already.
9211 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9212 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9213 ns_default.
9214 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9215 Lisp_Objects.
9216 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9217 (ns_defined_color, ns_color_to_lisp): Declare.
9218 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9219 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9220 it's accepted even with USE_LISP_UNION_TYPE.
9221 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9222 (update_frame_tool_bar): Remove apparently obsolete tests for
9223 non-integerness of f->tool_bar_lines.
9224 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9225 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9226 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9227 (nsfont_open): Don't confuse NULL for Qnil.
9228 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9229 * menu.h (find_and_call_menu_selection):
9230 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9231 (find_and_return_menu_selection): Always return something.
9232 * frame.h: Include dispextern.h for Display_Info.
9233 (display_x_get_resource): Declare.
9234
92352008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9236
9237 * syntax.c: Remove stdio.h include accidentally introduced in
9238 Emacs.app commit.
9239 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9240 NS_IMPL_COCOA.
9241 * keyboard.c (handle_async_input, input_available_signal): Remove
9242 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9243
92442008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9245
9246 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9247 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9248 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9249 Use SDATA.
9250
9251 * keymap.c: Remove all NS-specific code.
9252 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9253 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9254 where_is_preferred_modifier, return a different value depending on how
9255 preferred is the binding.
9256 (where_is_internal): Adjust accordingly.
9257 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9258 Adjust to new preferred_sequence_p.
9259 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9260 * keyboard.c (parse_solitary_modifier): Not static any more.
9261 * keyboard.h (parse_solitary_modifier): Declare.
9262
92632008-07-16 Andreas Schwab <schwab@suse.de>
9264
9265 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9266 of easymenu.
9267
92682008-07-16 Chong Yidong <cyd@stupidchicken.com>
9269
9270 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9271 that we don't move off the line.
9272
92732008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9274
9275 * keyboard.c (Qsuper): Remove.
9276 (parse_menu_item): Don't call where_is_internal specially for NS.
9277
92782008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9279
9280 * s/gnu-linux.h: Remove boilerplate comments.
9281
9282 * m/alpha.h (__ELF__): Consolidate conditions.
9283
9284 * m/m68k.h (linux): Use GNU_LINUX instead.
9285 Remove boilerplate comments.
9286
9287 * m/intel386.h: Undo refactoring from previous change.
9288 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9289 too, remove dead code.
9290 (linux): Use GNU_LINUX instead.
9291
92922008-07-16 Jason Rumney <jasonr@gnu.org>
9293
9294 * w32gui.h: Repeat 26 June changes lost by last change.
9295
92962008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9297
9298 * systty.h: Remove code for Aix on 386, unsupported platform.
9299
9300 * s/ms-w32.h: Remove boilerplate comments.
9301 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9302
9303 * s/gnu-linux.h (TERM): Remove support.
9304 (HAVE_SYSVIPC): Remove, unused.
9305 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9306 for this system.
9307
9308 * process.c: Remove support for IRIS, unused.
9309 Remove support for TERM, not relevant anymore.
9310
9311 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9312 used with the definition.
9313
9314 * s/aix4-2.h (static): Do not undef.
9315
9316 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9317 only used on Aix.
9318 (HAVE_SYSVIPC): Remove, unused.
9319
9320 * m/hp800.h (CANNOT_DUMP): Do not undef.
9321
9322 * m/alpha.h: Fix comment.
9323
9324 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9325 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9326 used by this configuration.
9327 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9328 * unexec.c: Remove code depending on HPUX and
9329 USG_SHARED_LIBRARIES, not used with this file. Remove code
9330 depending on IRIS, unused. Remove if 0-ed code.
9331
9332 * s/template.h: Remove comments about static.
9333
9334 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9335 Remove if 0-ed code.
9336 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9337 were the same as the default.
9338 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9339 Remove boilerplate comments.
9340 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9341 (HAVE_SYSVIPC): Remove, unused.
9342 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9343
9344 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9345 Remove boilerplate comments.
9346 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9347 Remove boilerplate comments.
9348 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9349 Remove boilerplate comments.
9350 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9351
9352 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9353 USG systems which do not use DATA_SEG_BITS.
9354 Refactor code. Remove boilerplate comments.
9355
9356 * m/ibms390.h:
9357 * m/m68k.h:
9358 * s/bsd-common.h:
9359 * s/cygwin.h:
9360 * s/darwin.h:
9361 * s/freebsd.h:
9362 * s/gnu.h:
9363 * s/msdos.h: Remove boilerplate comments.
9364
9365 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 9366 do not use this file.
aac0c6e3
MR
9367 (IRIS_4D): Remove, unused.
9368
9369 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 9370 do not use this file.
aac0c6e3
MR
9371 (SIGN_EXTEND_CHAR):
9372 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9373 * unexmips.c: Remove file, unused.
9374
9375 * editfns.c (Fuser_full_name): Replace the only use of
9376 USER_FULL_NAME with its value.
9377 * config.in: Regenerate.
9378
93792008-07-16 David Reitter <david.reitter@gmail.com>
9380
9381 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9382 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9383
93842008-07-16 Glenn Morris <rgm@gnu.org>
9385
9386 * emacs.c (system-type): Doc fix.
9387
93882008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
9389
9390 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
9391 If the cache doesn't work, let's fix it, rather than work around it.
9392
93932008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9394
9395 * Makefile.in: Correct additions for nsfont.o in last commit.
9396 * nsfont.m: New file (forgot last commit).
9397
93982008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9399
9400 * callproc.c (set_initial_environment): Initialize
9401 Vprocess_environment under CANNOT_DUMP (fixes crash when
9402 batch-compiling for bootstrap).
9403
94042008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9405 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9406
9407 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
9408 fix crash due to different init order.
9409
94102008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9411
9412 Changes and additions for NeXTstep windowing system (Cocoa and
9413 GNUstep) support.
9414
9415 * Makefile.in:
9416 * config.in: Support defines and build commands for NS port.
9417 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
9418 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
9419 * dispextern.h: Include nsgui.h and add needed typedefs under NS
9420 windowing.
9421 (struct face): Add synth_ital field.
9422 * dispnew.c: Include nsterm.h when compiling under NS windowing.
9423 (init_display): Initialize Vinitial_window_system to "ns" when so
9424 compiled.
9425 * emacs.c: Include GSConfig.h when compiling under GNUstep.
9426 (display_arg): Use under NS.
9427 (main): Under NS, allocate autorelease pool and handle command line
9428 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
9429 (standard_args): Add NS-specific args.
9430 (shut_down_emacs): Shut down NS terminal if compiled under NS.
9431 * font.c (DEFAULT_ENCODING): New variable.
9432 (font_find_for_lface): Use it.
9433 (syms_of_font): Load syms_of_nsfont under NS.
9434 * font.h: Declare nsfont_driver when compiled under NS.
9435 * fontset.c: When compiling under NS, include nsterm.h.
9436 (fontset_from_font): Autoconstruct fontset under NS.
9437 * frame.c (various): Under NS, include nsterm.h, add Qns window system
9438 symbol, document and use it.
9439 (do_switch_frame): When for_deletion under Cocoa, add
9440 Fraise_frame(Qnil).
9441 (x_set_frame_parameters): Ensure font attribute changes are picked up.
9442 (x_get_arg): Allow "yes" and "no" as boolean values.
9443 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
9444 Qright under Cocoa.
9445 (focus-follows-mouse): Default to 0 under NS.
9446 * frame.h (enum output_method): Add output_ns.
9447 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
9448 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
9449 (FRAME_WINDOW_P): NS-specific definition.
9450 * fringe.c (max_used_fringe_bitmap): Make public.
9451 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
9452 (getloadavg): Use NeXT code under descendant OS's.
9453 * image.c (includes and header section, x_create_bitmap_from_data)
9454 (x_create_bitmap_from_file, free_bitmap_record, image_background)
9455 (image_background_transparent, x_clear_image_1)
9456 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9457 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
9458 (x_to_xcolors, x_from_xcolors, x_disable_image)
9459 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
9460 other GUIs, including XPM support using code originally written for
9461 Carbon GUI.
9462 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
9463 using NS API.
9464 (image_ascent): Use font metrics macros instead of direct struct field
9465 access.
9466 * keyboard.c (includes): Add nsterm.h when compiling under NS.
9467 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
9468 Also, handle NS as GTK for menu bar purposes.
9469 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
9470 toolkit where they differ.
9471 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
9472 use cachelist, still needed under NS.
9473 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
9474 (struct widget_value): Define it here for menu.c.
9475 * keymap.c (includes): Include modifier internals.
9476 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
9477 NS.
9478 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
9479 support for preferring sequences using certain modifiers, specified by
9480 the FIRSTONLY argument.
9481 * lisp.h (hash_remove): Rename to avoid name clash when compiling
9482 under NS GNUstep implementation.
9483 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
9484 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
9485 * menu.c: Include nsterm.h under NS.
9486 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
9487 (free_menubar_widget_tree_value, update_submenu_strings)
9488 (find_and_call_menu_selection): Treat NS as X and NT.
9489 (find_and_return_menu_selection): New function, used for popup menus.
9490 * nsgui.h:
9491 * nsterm.h:
9492 * nsfns.m:
9493 * nsimage.m:
9494 * nsmenu.m:
9495 * nsselect.m:
9496 * nsterm.m: New files.
9497 * process.c (wait_reading_process_output): Under NS, call ns_select()
9498 instead of plain select().
9499 * syntax.c (char_quoted): Under NS, avoid a crash when called near
9500 beginning of buffer.
9501 * sysselect.h (init_process): Rename when compiling under Cocoa to
9502 avoid name conflict.
9503 * termhooks.h (display_info): Add ns_display_info to union.
9504 * terminal.c (Fterminal_live_p): Add ns to terminal types.
9505 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
9506 COCOA environment.
9507 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
9508 unexec() signature. (Note, this will dump, but the resulting file
9509 crashes; unexosx is used instead; keeping around for reference and
9510 possible aid in getting dump working under GNUstep.)
9511 * w32gui.h (button_type, widget_value): Remove definitions (now in
9512 keyboard.h).
9513 * window.c: Include nsterm.h when compiling under NS.
9514 * xdisp.c (includes): Include nsterm.h when compiling under NS.
9515 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
9516 other GUI windowing systems.
9517 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
9518 GTK.
9519 (x_consider_frame_title): Under NS, set icon type and frame
9520 modified-state indicator; use ns_set_name_as_filename() when using
9521 formatted title.
9522 (update_window_cursor): Make public when compiling under NS.
9523 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
9524 (hourglass_atimer, Vhourglass_delay
9525 * xfaces.c (header section, init_frame_faces, clear_font_table)
9526 (defined_color, unload_color, x_face_list_fonts)
9527 (prepare_face_for_display): Add NS support parallel to other GUIs.
9528 Emulate GCs like other non-X GUIs.
9529 (split_font_name): Don't lowercase font name under NS.
9530 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
9531 under NS.
9532 * s/darwin.h: Add support for compilation under NS.
9533
95342008-07-15 Jason Rumney <jasonr@gnu.org>
9535
9536 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
9537 (w32_show_hourglass): Rename from show_hourglass.
9538 (w32_hide_hourglass): Rename from hide_hourglass.
9539 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
9540 (Vhourglass_delay): Declare extern.
9541 (hourglass_started): Remove.
9542
9543 * xdisp.c (Vhourglass_delay): Remove static.
9544 (hourglass_started, start_hourglass, cancel_hourglass):
9545 Don't include these versions on WINDOWSNT.
9546
95472008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9548
9549 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
9550 variables (formerly in xfns.c).
9551 (show_hourglass, hide_hourglass): New prototypes (same).
9552 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
9553 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
9554 in xfns.c).
9555 (syms_of_xdisp): Declare/initialize display-hourglass,
9556 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
9557 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
9558 formerly in xfns.c.
9559 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9560 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9561 (start_hourglass, cancel_hourglass): Remove.
9562 (show_hourglass, hide_hourglass): Remove prototypes and static
9563 modifiers.
9564 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
9565 hourglass_atimer, hourglass_shown_p declaration/initialization.
9566 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9567 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9568 (start_hourglass, cancel_hourglass): Remove.
9569 (show_hourglass, hide_hourglass): Remove prototypes and static
9570 modifiers.
9571 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
9572 hourglass_atimer, hourglass_shown_p declaration/initialization.
9573 * w32fns.c (display_hourglass_p, Vhourglass_delay)
9574 (DEFAULT_HOURGLASS_DELAY): Remove.
9575 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
9576 hourglass_shown_p declaration/initialization.
9577
95782008-07-14 Jason Rumney <jasonr@gnu.org>
9579
9580 * w32fns.c (w32_get_arg): Remove wrapper function.
9581 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
9582 directly.
9583 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
9584
95852008-07-14 Kenichi Handa <handa@m17n.org>
9586
9587 * xfont.c (xfont_open): Add workaround for X's bug.
9588
95892008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9590
9591 * fontset.c: Include <stdio.h> unconditionally.
9592
95932008-07-13 Michael Albinus <michael.albinus@gmx.de>
9594
9595 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
9596 for filtering.
9597
95982008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
9599
9600 * s/vms.h: Use __GNUC__ instead of _GNUC_.
9601
9602 * m/macppc.h:
9603 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
9604
9605 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
9606 (SPECIAL_EMACS_INT):
9607 * m/ia64.h (SPECIAL_EMACS_INT):
9608 * m/amdx86-64.h (SPECIAL_EMACS_INT):
9609 * s/gnu.h (NLIST_STRUCT):
9610 * s/aix4-2.h (X11R5_INHIBIT_I18N):
9611 * s/gnu-linux.h (LINUX):
9612 * s/msdos.h (HAVE_FACES):
9613 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
9614
9615 * systty.h:
9616 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
9617 anymore.
9618
96192008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
9620
9621 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
9622 always defined as int.
9623
9624 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
9625 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
9626 * s/gnu-linux.h (HAVE_WAIT_HEADER):
9627 * s/freebsd.h (HAVE_WAIT_HEADER):
9628 * s/bsd-common.h (HAVE_UNION_WAIT):
9629 * s/aix4-2.h (HAVE_WAIT_HEADER):
9630 * m/mips.h (HAVE_UNION_WAIT):
9631 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
9632 (COFF, static): Do not define, they are undefined later in the file.
9633
9634 * process.c (update_status): Don't use a union.
9635 (status_convert):
9636 (sigchld_handler): Use int instead of WAITTYPE.
9637
96382008-07-12 Chong Yidong <cyd@stupidchicken.com>
9639
9640 * indent.c (Fvertical_motion): Restore hscroll before moving to
9641 goal column.
9642
96432008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9644
9645 * lisp.h: Remove left over code.
9646
96472008-07-11 Andreas Schwab <schwab@suse.de>
9648
9649 * lisp.h: Fix logic in last change.
9650
9651 * menu.h: New file.
9652 * menu.c: Include it.
9653 * xmenu.c: Likewise.
9654 * Makefile.in: Update dependencies.
9655
96562008-07-11 Kenichi Handa <handa@m17n.org>
9657
9658 * fontset.c (fontset_from_font): Cancel the previous change.
9659
96602008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9661
9662 * lisp.h:
9663 * w32heap.c:
9664 * emacs.c:
9665 * alloc.c: Replace all references of NO_UNION_TYPE with
9666 USE_LISP_UNION_TYPE.
9667
9668 * m/xtensa.h (NO_UNION_TYPE):
9669 * m/vax.h (NO_UNION_TYPE):
9670 * m/template.h (NO_UNION_TYPE):
9671 * m/sparc.h (NO_UNION_TYPE):
9672 * m/mips.h (NO_UNION_TYPE):
9673 * m/macppc.h (NO_UNION_TYPE):
9674 * m/m68k.h (NO_UNION_TYPE):
9675 * m/iris4d.h (NO_UNION_TYPE):
9676 * m/intel386.h (NO_UNION_TYPE):
9677 * m/ibms390x.h (NO_UNION_TYPE):
9678 * m/ibms390.h (NO_UNION_TYPE):
9679 * m/ibmrs6000.h (NO_UNION_TYPE):
9680 * m/ia64.h (NO_UNION_TYPE):
9681 * m/hp800.h (NO_UNION_TYPE):
9682 * m/arm.h (NO_UNION_TYPE):
9683 * m/amdx86-64.h (NO_UNION_TYPE):
9684 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
9685 defining it the same.
9686
96872008-07-10 Chong Yidong <cyd@stupidchicken.com>
9688
9689 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
9690
96912008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9692
9693 * fileio.c:
50426a04 9694 * sysdep.c:
aac0c6e3
MR
9695 * systty.h:
9696 * m/ibmrs6000.h:
9697 * m/iris4d.h:
9698 * s/aix4-2.h:
9699 * s/freebsd.h:
9700 * s/gnu-linux.h:
9701 * s/hpux10-20.h:
9702 * s/hpux11.h:
9703 * s/netbsd.h:
9704 * s/sol2-3.h:
9705 * s/sol2-4.h:
9706 * s/sol2.h:
9707 * s/usg5-4.h:
9708 * s/vms.h: Remove references to unused variables.
9709
97102008-07-10 Andreas Schwab <schwab@suse.de>
9711
9712 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
9713 pattern before matching the generic family.
9714
97152008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9716
9717 * unexec.c:
9718 * s/vms.h:
9719 * s/usg5-4-2.h:
9720 * s/sol2-5.h:
9721 * s/freebsd.h:
9722 * s/darwin.h: Remove dead code.
9723
9724 * m/template.h:
9725 * m/sparc.h:
9726 * m/mips.h:
9727 * m/m68k.h:
9728 * m/iris4d.h:
9729 * m/intel386.h:
9730 * m/ibms390x.h:
9731 * m/ibms390.h:
9732 * m/ia64.h:
9733 * m/hp800.h:
9734 * m/arm.h:
9735 * m/amdx86-64.h: Remove dead code and references to unused
9736 and compiler defined symbols.
9737
9738 * unexmips.c:
9739 * unexelf.c: Remove references to desupported systems.
9740
9741 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
9742
9743 * m/powermac.h: Remove boilerplate comments.
9744 (NO_REMAP): Remove unused definition.
9745
9746 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
9747 define them.
9748
97492008-07-10 Kenichi Handa <handa@m17n.org>
9750
9751 * xfont.c (xfont_open): Log the reason of failure.
9752
97532008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
9754
9755 * fontset.c (fontset_get_font_group):
9756 * font.c (font_check_otf): Specify argument types.
9757
97582008-07-09 Kenichi Handa <handa@m17n.org>
9759
9760 * coding.c (detect_coding_utf_8): Set detect_info->found only when
9761 non-ASCII char is found.
9762
9763 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
9764 (reorder_font_vector): Change the arg preferred_family to font.
9765 Prefer the spec matching with font.
9766 (fontset_get_font_group): New function.
9767 (fontset_find_font): Change the format of an element of a realized
9768 fontset. Use fontset_get_font_group.
9769 (fontset_font): Try the current fontset, the default fontset, the
9770 fallbacks of the current fontset, and the fallbacks of the default
9771 fontset in this order.
9772 (face_for_char): Delete the shortcut to use the current font.
9773 (fontset_from_font): Don't set fonts for Latin in the fontset.
9774
9775 * font.h (font_make_object, font_match_p): Adjust prototypes.
9776
9777 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
9778
9779 * font.c (font_make_object): New arg entity and pixelsize.
9780 (font_check_otf_features, font_check_otf): New functions.
9781 (font_match_p): Check :lang, :script, and :otf properties.
9782
9783 * xfont.c (xfont_open): Adjust it for the change of
9784 font_make_object.
9785 (xfont_text_extents): Fix initial setting of metrics.
9786
9787 * ftfont.c (struct ftfont_info): New member index, delete member
9788 fc_charset_idx. Make the member order compatible with struct
9789 xftfont_info.
9790 (fc_charset_table): Change charset names to registry names.
9791 (ftfont_pattern_entity): Delete the args registry and
9792 fc_charset_idx. Change the value of :font-entity property
9793 to (FONTNAME . INDEX). Always set :registry property to
9794 `iso10646-1'.
9795 (struct ftfont_cache_data): New struct.
9796 (ftfont_lookup_cache): New arg for_face.
9797 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
9798 (ftfont_driver): Set the member otf_capability.
9799 (ftfont_get_charset): Adjust it for the change of
9800 fc_charset_table.
9801 (OTF_TAG_SYM): New macro.
9802 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
9803 for the change of fc_charset_table.
9804 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
9805 ftfont_pattern_entity. Add FC_INDEX to objset.
9806 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
9807 and ftfont_pattern_entity.
9808 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
9809 font_make_object, struct ftfont_info.
9810 (ftfont_has_char): Use ftfont_get_fc_charset.
9811 (ftfont_otf_features, ftfont_otf_capability): New functions.
9812 (ftfont_shape): Use ftfont_get_otf.
9813 (ftfont_text_extents): Fix initial setting of metrics.
9814
9815 * xftfont.c (struct xftfont_info): New member ft_size. Make the
9816 member order compatible with struct ftfont_info.
9817 (xftfont_open): Add FC_CHARSET to the pattern. Set
9818 xftfont_info->ft_size. Don't unlock the face. Check BDF
9819 properties if appropriate.
9820 (xftfont_close): Unlock the face.
9821 (xftfont_anchor_point, xftfont_shape): Deleted.
9822 (syms_of_xftfont): Don't set members anchor_point and shape of
9823 xftfont_driver.
9824
9825 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
9826 font_make_object.
9827
9828 * w32font.c (w32font_open): Adjust it for the change of
9829 font_make_object.
9830 (w32font_open_internal): Don't set properties of font_object here.
9831
98322008-07-08 Chong Yidong <cyd@stupidchicken.com>
9833
9834 * macfns.c (x_create_tip_frame):
9835 * w32fns.c (x_create_tip_frame):
9836 * xfns.c (x_create_tip_frame): Pass parameter argument to
9837 face-set-after-frame-default.
9838
9839 * xfaces.c (Finternal_merge_in_global_face): Save merged
9840 attributes for the default face back into the face vector.
9841
98422008-07-08 Andreas Schwab <schwab@suse.de>
9843
9844 * fontset.h: Declare fontset_from_font. Don't declare
9845 new_fontset_from_font and fontset_from_font_name.
9846 * xterm.c: Include "fontset.h".
9847 * Makefile.in (xterm.o): Update dependencies.
9848
98492008-07-08 Glenn Morris <rgm@gnu.org>
9850
9851 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
9852 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
9853
98542008-07-07 Chong Yidong <cyd@stupidchicken.com>
9855
9856 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
9857 (x_set_frame_parameters): Don't bind it.
9858
98592008-07-07 Juanma Barranquero <lekktu@gmail.com>
9860
9861 * w32fns.c (map_w32_filename): Declare extern.
9862
98632008-07-07 Jason Rumney <jasonr@gnu.org>
9864
9865 * w32term.c (WS_EX_LAYERED): Define if not already.
9866
98672008-07-06 Chong Yidong <cyd@stupidchicken.com>
9868
9869 * xfaces.c (set_font_frame_param): Don't try to set the font
9870 parameter if it is still unspecified in the lface.
9871
98722008-07-05 Chong Yidong <cyd@stupidchicken.com>
9873
9874 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
9875 face if it didn't already exist.
9876
9877 * xdisp.c (try_window_id): Give up if word-wrapping is on.
9878
98792008-07-05 Andreas Schwab <schwab@suse.de>
9880
9881 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
9882
98832008-07-05 Chong Yidong <cyd@stupidchicken.com>
9884
9885 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
9886 word-wrapping.
9887 (IT_DISPLAYING_WHITESPACE): New macro.
9888 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
9889 when word-wrapping. Simplify word-wrapping logic. Use correct
9890 pixel positions when saving copies of the iterator.
9891 (display_line): Use proper wrap point if the last character on a
9892 line was preceded by whitespace.
9893
98942008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
9895
9896 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
9897
98982008-07-04 Kenichi Handa <handa@m17n.org>
9899
9900 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
9901
9902 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
9903
99042008-07-02 Jason Rumney <jasonr@gnu.org>
9905
9906 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 9907 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
9908
9909 * xdisp.c (next_element_from_display_vector): Move assignment out
9910 of if statement.
9911
99122008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
9913
9914 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
9915
9916 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
9917 (syms_of_fileio): Initialize and export them.
9918 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
9919
9920 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
9921 (Fsystem_move_file_to_trash): New function.
9922 (syms_of_w32fns): Export it to lisp.
9923
99242008-07-01 Jason Rumney <jasonr@gnu.org>
9925
9926 * w32font.c (w32font_text_extents): Don't count overhang as part
9927 of width.
9928
99292008-06-30 Miles Bader <miles@gnu.org>
9930
9931 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
9932 Add `avoid_cursor_p' field.
9933
9934 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
9935 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
9936 (append_glyph, append_composite_glyph, produce_image_glyph)
9937 (append_stretch_glyph): Initialize avoid_cursor_p.
9938 (get_it_property): Rename from `get_line_height_property'.
9939 (x_produce_glyphs): Use get_it_property.
9940 (handle_line_prefix, push_display_prop): New functions.
9941 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
9942 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
9943 New variables.
9944 (syms_of_xdisp): Initialize them.
9945
99462008-06-30 Kenichi Handa <handa@m17n.org>
9947
9948 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
9949 XftDefaultSubstitute (they are called in XftFontMatch).
9950 (xftfont_open): Fix args to ftfont_font_format.
9951
9952 * ftfont.c (fc_charset_table): New member lang.
9953 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 9954 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
9955 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
9956 (ftfont_open): Fix args to ftfont_font_format.
9957 (ftfont_font_format): New arg filename.
9958
99592008-06-30 Chong Yidong <cyd@stupidchicken.com>
9960
9961 * xfaces.c (Finternal_merge_in_global_face): If default face was
9962 modified, realize it again. Update the font face attribute.
9963
99642008-06-29 Jason Rumney <jasonr@gnu.org>
9965
9966 * w32term.c (x_set_frame_alpha): Fix logic.
9967
99682008-06-29 Kenichi Handa <handa@m17n.org>
9969
9970 * fontset.c (Finternal_char_font): Return font-object instead of
9971 font-name.
9972
9973 * composite.c (get_composition_id): Fix the width calculation for TAB.
9974
99752008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
9976
9977 * indent.c (Fvertical_motion): Properly handle float column arg.
9978
99792008-06-28 Jason Rumney <jasonr@gnu.org>
9980
9981 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
9982 (pfnSetLayeredWindowAttributes): New function pointer.
9983 (w32_initialize): Initialize it when supported.
9984 (x_set_frame_alpha): New function.
9985
9986 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
9987 (w32_frame_parm_handlers): Set alpha handler.
9988
9989 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
9990
99912008-06-27 Jason Rumney <jasonr@gnu.org>
9992
9993 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
9994 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
9995 (w32_to_x_charset, x_to_w32_charset)
9996 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
9997 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
9998 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
9999 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10000 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10001 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10002 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10003 (Qw32_charset_unicode): Remove.
10004 (syms_of_w32fns): Update for above changes.
10005
10006 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10007 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10008 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10009 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10010 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10011 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10012 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10013 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10014 (syms_of_w32font): Update for above changes.
10015
100162008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10017
10018 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10019 removed #if.
10020 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10021
100222008-06-26 Juanma Barranquero <lekktu@gmail.com>
10023 Eli Zaretskii <eliz@gnu.org>
10024
10025 * makefile.w32-in (LOCAL_FLAGS):
10026 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10027
10028 * sysdep.c (_spawnlp, _getpid):
10029 Declare with explicit _cdecl instead of _CRTAPI1.
10030
10031 * editfns.c (Fget_internal_run_time):
10032 Check for WINDOWSNT with #ifdef, not #if.
10033
100342008-06-26 Jason Rumney <jasonr@gnu.org>
10035
10036 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10037
10038 * w32term.c (x_draw_glyph_string_foreground)
10039 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10040 Use FONT_HANDLE macro.
10041 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10042
10043 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10044 (uniscribe_encode_char): Use FONT_HANDLE macro.
10045
10046 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10047 (w32font_text_extents): Use precast w32_font.
10048 (w32font_close): Free cached metrics.
10049 (w32font_open_internal): Allocate space for name on stack.
10050
100512008-06-26 Chong Yidong <cyd@stupidchicken.com>
10052
10053 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10054
100552008-06-26 Jason Rumney <jasonr@gnu.org>
10056
10057 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10058 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10059
100602008-06-26 Juanma Barranquero <lekktu@gmail.com>
10061
10062 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10063
100642008-06-26 Jason Rumney <jasonr@gnu.org>
10065
10066 * w32bdf.c, w32bdf.h: Remove obsolete files.
10067
10068 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10069
10070 * w32gui.h: Don't include w32bdf.h.
10071 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10072 Remove obsolete font support.
10073
10074 * w32font.h (struct w32font_info): Remove compat_w32_font.
10075 Add hfont member.
10076 (FONT_COMPAT): Remove obsolete macro.
10077
10078 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10079 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10080 (w32font_open_internal): Remove compat code. Set new hfont member.
10081 (Fx_select_font): Use new hfont member.
10082
10083 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10084 (uniscribe_encode_char): Use new hfont member.
10085
10086 * w32term.c (x_draw_glyph_string_foreground)
10087 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10088 (x_draw_glyph_string): Use metrics in w32font_info.
10089
100902008-06-26 Kenichi Handa <handa@m17n.org>
10091
10092 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10093
100942008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10095
10096 * unexnext.c:
10097 * m/ews4800.h:
10098 * m/hp9000s300.h:
10099 * m/ibm370aix.h:
10100 * m/mips-siemens.h:
10101 * m/ncr386.h:
10102 * m/next.h:
10103 * m/pmax.h:
10104 * m/powerpcle.h:
10105 * m/tandem-s2.h:
10106 * s/386bsd.h:
10107 * s/bsd386.h:
10108 * s/bsd4-1.h:
10109 * s/bsd4-2.h:
10110 * s/bsdos2-1.h:
10111 * s/bsdos2.h:
10112 * s/bsdos3.h:
10113 * s/bsdos4.h:
10114 * s/nextstep.h:
10115 * s/ultrix4-3.h:
10116 * s/usg5-0.h:
10117 * s/usg5-2-2.h:
10118 * s/usg5-2.h:
10119 * s/usg5-4-3.h:
10120 * s/ux4800.h:
10121 * s/uxpds.h:
10122 * s/uxpv.h: Remove support for obsolete systems.
10123 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 10124 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
10125 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10126 Remove, insert contents in s/aix4-2.h.
10127 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10128 * s/bsd4-3.h: Rename to ...
10129 * s/bsd-common.h: ... this.
10130 * data.c:
10131 * doc.c:
10132 * ecrt0.c:
10133 * emacs.c:
10134 * fileio.c:
10135 * floatfns.c:
10136 * keyboard.c:
10137 * mem-limits.h:
10138 * print.c:
10139 * process.c:
10140 * sysdep.c:
10141 * syssignal.h:
10142 * systty.h:
10143 * syswait.h:
10144 * term.c:
10145 * unexec.c:
10146 * unexelf.c:
10147 * unexhp9k800.c:
10148 * m/hp800.h:
10149 * m/ibmrs6000.h:
10150 * m/mips.h:
10151 * m/vax.h:
10152 * s/darwin.h:
10153 * s/freebsd.h:
10154 * s/gnu.h:
10155 * s/ms-w32.h:
10156 * s/msdos.h:
10157 * s/netbsd.h:
10158 * s/template.h: Remove references to obsolete variables.
10159
10160 * Makefile.in: Add dependencies for all unexec files.
10161 (admindir): Remove unused variable.
10162 (UNEXEC_SRC): Remove references.
10163
101642008-06-25 Chong Yidong <cyd@stupidchicken.com>
10165
10166 * xfns.c (x_default_font_parameter): If Xft is available, first
10167 try Monospace-12 for the default font.
10168
101692008-06-25 Jason Rumney <jasonr@gnu.org>
10170
10171 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10172
101732008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10174
10175 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10176
10177 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10178
101792008-06-25 Juanma Barranquero <lekktu@gmail.com>
10180
10181 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10182 <scroll-conservatively>: Fix typo in docstring.
10183
10184 * xselect.c (Fx_send_client_event): Doc fix.
10185
101862008-06-25 Kenichi Handa <handa@m17n.org>
10187
10188 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10189
10190 * font.c (font_parse_fcname): Remove unused variables.
10191 (font_sort_entites): Delete the arg SPEC. Caller changed.
10192 Fix for the case of ! best_only.
10193 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10194
10195 * lisp.h (Fstring_to_unibyte): EXFUN it.
10196
10197 * character.h (str_to_unibyte): Extern it.
10198
10199 * character.c (str_to_unibyte): New function.
10200
10201 * fns.c (Fstring_to_unibyte): New function.
10202 (syms_of_fns): Defsubr it.
10203
102042008-06-24 Kenichi Handa <handa@m17n.org>
10205
10206 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10207 DPI too.
10208 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10209
102102008-06-24 Andreas Schwab <schwab@suse.de>
10211
10212 * Makefile.in (${lispsource}loaddefs.el): Rename from
10213 ../lisp/loaddefs.el.
10214 (bootstrap-clean): Do what distclean does but don't remove
10215 Makefile.
10216 (distclean): Depend on bootstrap-clean and remove Makefile.
10217
102182008-06-24 Chong Yidong <cyd@stupidchicken.com>
10219
10220 * buffer.h (struct buffer): New member word_wrap.
10221
10222 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10223 word-wrap.
10224 (init_buffer_once): Initialize them.
10225
10226 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10227 line_wrap enum possessing three possible values.
10228
10229 * termopts.h: Replace truncate_partial_width_windows with
10230 Vtruncate_partial_width_windows.
10231
10232 * dispnew.c (direct_output_for_insert): Avoid direct output when
10233 inserting a space with word wrap on.
10234
10235 * indent.c (compute_motion): Obey integer values of
10236 truncate-partial-width-windows.
10237
10238 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10239 replacing truncate_partial_width_windows.
10240 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10241 truncate only if the window width is below that integer.
10242 (start_display, resize_mini_window, produce_stretch_glyph)
10243 (display_string, move_it_in_display_line_to): Use line_wrap.
10244 (back_to_previous_visible_line_start, reseat_1): Reset
10245 string_from_display_prop_p.
10246 (display_line): Extend default face to end of line when wrapping.
10247
102482008-06-24 Kim F. Storm <storm@cua.dk>
10249
10250 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10251 to wrap continued lines at word boundaries.
10252
102532008-06-24 Jason Rumney <jasonr@gnu.org>
10254
10255 * font.c (Ffont_face_attributes): Multiply pixel size before point
10256 conversion to avoid multiplying rounding error.
10257
102582008-06-23 Jason Rumney <jasonr@gnu.org>
10259
10260 * w32term.c (x_draw_glyph_string_background)
10261 (x_draw_glyph_string): Remove old bdf font code.
10262
10263 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10264
102652008-06-22 Kenichi Handa <handa@m17n.org>
10266
10267 * font.c (font_find_for_lface): Try the adstyle specified in
10268 the property of LFACE_FONT of LFACE (if any).
10269
102702008-06-21 Seiji Zenitani <zenitani@mac.com>
10271 Ryo Yoshitake <ryo@shiftmode.net>
10272
10273 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10274
102752008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10276
10277 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10278 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10279 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10280 (witness-emacs): Remove.
10281 (lisp, shortlisp): Move loaddefs.el earlier.
10282 (mostlyclean): Forget about witness-emacs.
10283
102842008-06-22 Glenn Morris <rgm@gnu.org>
10285
10286 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10287 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10288
102892008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10290
10291 * Makefile.in (PRECOMP): Remove.
10292 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10293 (witness-emacs): Run `compile-first'.
10294 (.el.elc): Use the new compile-onefile target.
10295
102962008-06-21 Kenichi Handa <handa@m17n.org>
10297
10298 * xftfont.c (xftfont_open): Handle QCembolden only when
10299 FC_EMBOLDEN is defined.
10300
103012008-06-21 Andreas Schwab <schwab@suse.de>
10302
10303 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10304 (.el.elc): Likewise.
10305
103062008-06-21 Miles Bader <miles@gnu.org>
10307
10308 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10309 build dir, not the lisp source dir.
10310
103112008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10312
10313 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10314 (bootstrapclean): Remove.
10315 (.el.elc): New rule.
10316 (PRECOMP): New var.
10317 (../lisp/subdirs.el): Remove.
10318 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10319 (witness-emacs): New target.
10320 (mostlyclean): Remove witness-emacs as well.
10321 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10322 Add witness-emacs dependency.
10323
103242008-06-20 Chong Yidong <cyd@stupidchicken.com>
10325
10326 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10327 defined by the font.
10328
103292008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10330
10331 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10332 (bootstrap-clean): New target that keeps TAGS around.
10333 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10334 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10335
103362008-06-20 Jason Rumney <jasonr@gnu.org>
10337
10338 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10339 Remove obsolete font code.
10340
10341 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10342 to determine language support.
10343
103442008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10345
10346 * sysdep.c (cfsetspeed): New fun extracted from the code.
10347 (cfmakeraw): Move before first use.
10348
103492008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10350
10351 * sysdep.c (cfmakeraw): Provide fallback implementation.
10352 (serial_configure): Provide fallback implementation of cfsetspeed.
10353
103542008-06-20 Kenichi Handa <handa@m17n.org>
10355
10356 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10357 the pattern.
10358
10359 * fontset.c (fontset_from_font): Copy font_spec before changing
10360 the elements.
10361
10362 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10363
103642008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10365
10366 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10367 for explicit `font' parameters.
10368
10369 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10370
103712008-06-19 Kenichi Handa <handa@m17n.org>
10372
10373 * frame.c: Include <ctype.h>.
10374 (x_set_font_backend): Allow spacing characters in the X resource
10375 for FontBackend.
10376
103772008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10378
10379 * w32fns.c, xfns.c (Qfont_param): New var.
10380 (syms_of_w32fns): Initialize it.
10381 (x_default_font_parameter): Record explicit `font' into
10382 `font-parameter'.
10383
103842008-06-18 Kenichi Handa <handa@m17n.org>
10385
10386 * font.c (font_parse_xlfd): Fix previous change.
10387 (font_parse_fcname): Don't use :fc-unknown-spec.
10388 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
10389 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
10390 (font_add_log): Prepend the driver name to the resulting fonts.
10391
10392 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
10393 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
10394 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
10395
10396 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
10397 (QCembolden): New variables.
10398 (syms_of_xftfont): DEFSYM them.
10399 (xftfont_open): Call XftFontMatch. Don't trust the result of
10400 XftTextExtents8 if the pixel_size is less than 5.
10401
104022008-06-18 Andreas Schwab <schwab@suse.de>
10403
10404 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
10405 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
10406
104072008-06-18 Jason Rumney <jasonr@gnu.org>
10408
10409 * w32font.c (w32font_list, w32font_match): Add logging.
10410
10411 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
10412
104132008-06-17 Chong Yidong <cyd@stupidchicken.com>
10414
10415 * font.c (font_parse_fcname): Store divider characters for
10416 unknown-spec list. For known key symbols, intern using correct
10417 symbol name.
10418
104192008-06-17 Kenichi Handa <handa@m17n.org>
10420
10421 * xfaces.c (realize_default_face): If the frame is not on window
10422 system, set the fontset of face to nil.
10423
104242008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10425
10426 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
10427
104282008-06-16 Juanma Barranquero <lekktu@gmail.com>
10429
10430 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
10431 (build_font_name_from_vector): Delete externs.
10432
10433 * xfaces.c (struct font_name): Don't declare.
10434
104352008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
10436
10437 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
10438
104392008-06-16 Chong Yidong <cyd@stupidchicken.com>
10440
10441 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
10442
104432008-06-16 Juanma Barranquero <lekktu@gmail.com>
10444
10445 * font.c (Ffont_spec): Fix usage in docstring.
10446 (Ffont_face_attributes): Doc fix.
10447
104482008-06-16 Andreas Schwab <schwab@suse.de>
10449
10450 * font.c (Ffont_face_attributes): Fix definition.
10451
104522008-06-16 Jason Rumney <jasonr@gnu.org>
10453
10454 * font.h (font_style_symbolic_from_value): Remove.
10455
10456 * font.c (font_style_symbolic_from_value): Remove.
10457 (font_style_symbolic): Revert to pre 2008-06-13 version.
10458
10459 * w32font.c (w32_to_fc_weight): New function.
10460 (w32font_full_name, logfont_to_fcname): Use it.
10461
104622008-06-16 Kenichi Handa <handa@m17n.org>
10463
10464 * font.c (font_check_object): Delete it.
10465 (font_clear_cache): Check if a font-object is alive.
10466 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
10467 font-object to nil.
10468 (font_close_object): Don't check FONT_CLOSE_OBJECT.
10469 (font_at): Don't call font_check_object.
10470 (Ffont_get): Return a symbol for :weight, :slant, and :width.
10471
104722008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
10473
10474 * puresize.h (BASE_PURESIZE): Increase to 1230000.
10475
104762008-06-16 Chong Yidong <cyd@stupidchicken.com>
10477
10478 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
10479
104802008-06-15 Chong Yidong <cyd@stupidchicken.com>
10481
10482 * font.c (font_parse_fcname): Only one decimal point.
10483 (font_unparse_fcname): Handle data in family and foundry indices
10484 as symbols, not strings.
10485 (font_unparse_gtkname, Ffont_face_attributes): New functions.
10486
10487 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
10488
10489 * font.h (font_unparse_gtkname): Add prototype.
10490
104912008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10492
10493 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
10494
104952008-06-15 Andreas Schwab <schwab@suse.de>
10496
10497 * font.c (font_update_drivers): Fix crash when no drivers match.
10498
104992008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
10500
10501 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
10502 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
10503
105042008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
10505
10506 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
10507
105082008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
10509
10510 * process.c (Fserial_process_configure, Fprocess_send_eof):
10511 Use EQ to compare Lisp_Objects.
10512
105132008-06-13 Jason Rumney <jasonr@gnu.org>
10514
10515 * w32fns.c (Fw32_select_font): Remove old font API function.
10516
10517 * w32font.c (logfont_to_fcname): New function.
10518 (Fx_select_font): New font dialog function compatible with
10519 GTK/fontconfig version.
10520
10521 * font.c (font_style_symbolic_from_value): New function.
10522 (font_style_symbolic): Use it.
10523
10524 * font.h (font_style_symbolic_from_value): Declare new function.
10525
105262008-06-13 Juanma Barranquero <lekktu@gmail.com>
10527
10528 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
10529 <font-width-table>: Fix typos in docstrings.
10530
105312008-06-13 Daniel Engeler <engeler@gmail.com>
10532
10533 These changes add serial port access.
10534 * process.c: Add HAVE_SERIAL.
10535 (Fdelete_process, Fprocess_status, Fset_process_buffer)
10536 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
10537 (list_processes_1, select_wrapper, Fstop_process)
10538 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
10539 (status_notify): Modify to handle serial processes.
10540 [HAVE_SERIAL] (Fserial_process_configure)
10541 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
10542 New functions.
10543 * process.h (struct Lisp_Process): Add `type'.
10544 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
10545 New functions.
10546 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
10547 serial ports.
b71ac3dd 10548 (serial_open, serial_configure): New functions.
aac0c6e3
MR
10549 * w32.h: Add FILE_SERIAL.
10550 (struct _child_process): Add ovl_read, ovl_write.
10551
105522008-06-13 Kenichi Handa <handa@m17n.org>
10553
10554 * dispextern.h (enum lface_attribute_index): New member
10555 LFACE_FOUNDRY_INDEX.
10556
10557 * font.c (font_score): Delete arg alternate_families. Check only
10558 weight, slant, width, and size. Ignore the difference of alias
10559 style symbols.
10560 (font_sort_entites): Adjust for the above change. Reflect the
10561 order of font-driver to scores.
10562 (font_list_entities): Don't check alternate_familes here.
10563 (font_clear_prop): Handle foundry.
10564 (font_update_lface): Don't parse "foundry-family" form here.
10565 Handle FONT_FOUNDRY_INDEX.
10566 (font_find_for_lface): Likewise. Handle alternate families here.
10567 If registry is nil, try iso8859-1 and ascii-0.
10568 (font_open_for_lface): Pay attention to size in ENTITY.
10569 (font_open_by_name): Simplify by calling font_load_for_lface.
10570 (free_font_driver_list): Delete it.
10571 (font_update_drivers): Preserve the order of backends.
10572 (syms_of_font): Setting of sort_shift_bits adjusted for the change
10573 of font_score and font_sort_entites.
10574 (font_update_sort_order): Likewise.
10575
10576 * xfaces.c (LFACE_FOUNDRY): New macro.
10577 (check_lface_attrs): Check foundry.
10578 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
10579 (merge_face_vectors): Check foundry.
10580 (merge_face_ref): Likewise.
10581 (Finternal_set_lisp_face_attribute): Likewise.
10582 (x_update_menu_appearance): Likewise.
10583 (Finternal_get_lisp_face_attribute): Likewise.
10584 (lface_hash): Likewise.
10585 (lface_same_font_attributes_p): Likewise.
10586 (x_supports_face_attributes_p): Likewise.
10587 (tty_supports_face_attributes_p): Likewise.
10588 (Finternal_set_alternative_font_family_alist): Intern strings.
10589 (Finternal_set_alternative_font_registry_alist): Downcase strings.
10590 (realize_default_face): Set LFACE_FOUNDRY (lface).
10591
10592 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
10593 font-driver at first.
10594
10595 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
10596
105972008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10598
10599 * lread.c (Fload): Use xfree, not free on saved_doc_string.
10600
106012008-06-12 Jim Meyering <meyering@redhat.com>
10602
10603 Make unexec_free handle NULL the same way free does.
10604 * unexmacosx.c (unexec_free): Ignore a NULL argument.
10605
106062008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
10607
10608 * character.h (CHAR_TO_BYTE_SAFE): New macro.
10609 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
10610 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
10611 (WEAK_ALIAS): Simplify.
10612 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
10613 when searching a unibyte buffer.
10614
106152008-06-12 Chong Yidong <cyd@stupidchicken.com>
10616
10617 * xfns.c (Fx_select_font): Rename from x-font-dialog.
10618
106192008-06-12 Juanma Barranquero <lekktu@gmail.com>
10620
10621 * w32font.c: Include ctype.h.
10622
106232008-06-11 Jason Rumney <jasonr@gnu.org>
10624
10625 * w32font.c (w32font_encode_char): Detect missing glyphs that are
10626 misreported as space.
10627 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
10628 as aliases for registry iso10646-1.
10629
106302008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
10631
10632 * buffer.c (clone_per_buffer_values): Skip `name'.
10633
106342008-06-11 Chong Yidong <cyd@stupidchicken.com>
10635
10636 * font.c (font_parse_fcname): Fix last change; accept decimal
10637 points in font size.
10638
106392008-06-10 Jason Rumney <jasonr@gnu.org>
10640
10641 * w32uniscribe.c (add_opentype_font_name_to_list):
10642 Skip non unicode fonts.
10643
106442008-06-10 Chong Yidong <cyd@stupidchicken.com>
10645
10646 * xfns.c (Fx_font_dialog): New function.
10647
10648 * gtkutil.c (xg_dialog_response_cb): Rename from
10649 xg_file_response_callback.
10650 (pop_down_dialog): Rename from pop_down_file_dialog.
10651 (xg_get_file_name): Callers changed.
10652 (xg_get_font_name): New function.
10653
10654 * gtkutil.h (xg_get_font_name): Insert prototype.
10655
106562008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10657
10658 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
10659 x_underline_minimum_display_offset.
10660 (syms_of_xdisp): Declare it here rather than in xterm.c.
10661 * dispextern.h (underline_minimum_offset): Declare it.
10662 * w32term.c (x_draw_glyph_string): Use it.
10663 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
10664 (syms_of_xterm): Don't declare it any more.
10665 (x_draw_glyph_string): Adjust to the new name.
10666
8719abec 106672008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
10668
10669 * xterm.c (x_underline_minimum_display_offset): New var.
10670 (x_draw_glyph_string): Use it.
10671 (syms_of_xterm): Declare it.
10672
106732008-06-10 Chong Yidong <cyd@stupidchicken.com>
10674
10675 * font.c (font_parse_fcname): Accept GTK-style font names too.
10676
106772008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10678
10679 * dired.c (file_name_completion): Don't return t if the match is exact
10680 but with different capitalization.
10681 * minibuf.c (Ftry_completion): Simplify.
10682
10683 * window.c (Vwindow_point_insertion_type): New var.
10684 (set_window_buffer): Use it.
10685 (syms_of_window): Init and export it to Lisp.
10686
106872008-06-10 Kenichi Handa <handa@m17n.org>
10688
10689 * font.h (font_intern_prop): Prototype adjusted.
10690
10691 * font.c (font_intern_prop): New arg force_symbol.
10692 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
10693 Adjust for the change of font_intern_prop.
10694
10695 * ftfont.c (ftfont_pattern_entity):
10696 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
10697 (w32_registry):
10698 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
10699 the change of font_intern_prop.
10700
107012008-06-09 Juanma Barranquero <lekktu@gmail.com>
10702
10703 * w32menu.c (digest_single_submenu): Declare extern.
10704
107052008-06-09 Jason Rumney <jasonr@gnu.org>
10706
10707 * w32term.c (x_make_frame_visible): Use alternate restore flags.
10708
10709 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
10710 (parse_single_submenu): Remove.
10711 (digest_single_submenu): Remove.
10712 (syms_of_w32menu): Don't initialise variables that have moved
10713 to menu.c.
10714 (set_frame_menubar): Sync with version in xmenu.c.
10715 (w32_menu_show): Sync with xmenu_show in xmenu.c.
10716
10717 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
10718 Make static again.
10719
107202008-06-09 Jason Rumney <jasonr@gnu.org>
10721
10722 Changes to w32 files related to the move of common menu code
10723 to menu.c on 2008-06-08 by Chong Yidong.
10724
10725 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
10726 defs to w32gui.h.
10727 (single_keymap_panes, push_menu_item, push_menu_pane):
10728 Make globally visible.
10729
10730 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
10731 (local_free, malloc_widget_value, free_widget_value)
10732 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
10733 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
10734 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
10735 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
10736 (menu_items, menu_items_allocated, menu_items_used)
10737 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
10738 (init_menu_items, finish_menu_items, discard_menu_items)
10739 (grow_menu_items, push_submenu_start, push_submenu_end)
10740 (push_left_right_boundary, push_menu_pane, push_menu_item)
10741 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
10742 (free_menubar_widget_tree_value, parse_single_submenu)
10743 (update_submenu_strings): Remove functions.
10744 (xmalloc_widget_value): Remove and declare extern.
10745
10746 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
10747 (OBJ1): Build it.
10748
10749 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
10750 (local_heap, local_alloc, local_free, malloc_widget_value)
10751 (free_widget_value): Define here.
10752
107532008-06-09 Kenichi Handa <handa@m17n.org>
10754
10755 * font.h (Qascii_0): Extern it.
10756
10757 * font.c (Qascii_0): New variable.
10758 (syms_of_font): DEFSYM it.
10759 (font_open_by_name): If the registry "iso8859-1" fails, try also
10760 "ascii-0".
10761
10762 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
10763
107642008-06-08 Kenichi Handa <handa@m17n.org>
10765
10766 * .gdbinit (xfont): New command.
10767
107682008-06-08 Andreas Schwab <schwab@suse.de>
10769
10770 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
10771 * Makefile.in (menu.o): Update dependencies.
10772
10773 * Makefile.in (obj): Always add menu.o.
10774 * emacs.c (main): Always call syms_of_menu.
10775 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
10776
107772008-06-08 Chong Yidong <cyd@stupidchicken.com>
10778
10779 * Makefile.in: Compile menu.c.
10780
10781 * lisp.h: Declare syms_of_menu.
10782
10783 * emacs.c (main): Call syms_of_menu.
10784
10785 * keyboard.h: Relocate platform-independent menu definitions from
10786 xmenu.c.
10787
10788 * menu.c: New file. Relocate platform-independent menu
10789 definitions from xmenu.c. Suggested by Adrian Robert.
10790
10791 * xmenu.c: Remove platform-independent menu definitions.
10792 (menu_items menu_items_inuse, menu_items_allocated)
10793 (menu_items_used, menu_items_n_panes)
10794 (menu_items_submenu_depth): Move to keyboard.h.
10795 (init_menu_items, finish_menu_items, unuse_menu_items)
10796 (discard_menu_items, restore_menu_items, save_menu_items)
10797 (grow_menu_items, push_submenu_start, push_submenu_end)
10798 (push_left_right_boundary, push_menu_pane, push_menu_item)
10799 (keymap_panes, single_keymap_panes, single_menu_item)
10800 (list_of_panes, list_of_items, find_and_call_menu_selection)
10801 (xmalloc_widget_value, free_menubar_widget_value_tree)
10802 (parse_single_submenu, digest_single_submenu)
10803 (update_submenu_strings): Move to menu.c.
10804
108052008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
10806
10807 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
10808
108092008-06-06 Miles Bader <miles@gnu.org>
10810
10811 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
10812 face, not frame default.
10813
108142008-06-05 Martin Rudalics <rudalics@gmx.at>
10815
10816 * window.c (pop_up_windows, pop_up_frames)
10817 (display_buffer_reuse_frames, Vpop_up_frame_function)
10818 (Vdisplay_buffer_function, Veven_window_heights)
10819 (Vspecial_display_buffer_names, Vspecial_display_regexps)
10820 (Vspecial_display_function, Vsame_window_buffer_names)
10821 (Vsame_window_regexps, split_height_threshold)
10822 (Vsplit_window_preferred_function): Move those vars to window.el.
10823 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
10824 (Fdisplay_buffer): Move those functions to window.el.
10825 (syms_of_window): Remove corresponding declarations.
10826 (display_buffer): New function.
10827 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
10828 * dispnew.c (Flast_nonminibuf_frame): New function.
10829 * buffer.c (Fpop_to_buffer): Move to window.el.
10830
108312008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10832
10833 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
10834
108352008-06-05 Kenichi Handa <handa@m17n.org>
10836
10837 * coding.c (detect_coding): Fix previous change.
10838 (detect_coding_system): Likewise.
10839
108402008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10841
10842 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
10843
10844 * keymap.c (Vminibuffer_local_filename_must_match_map):
10845 Rename from Vminibuffer_local_must_match_filename_map.
10846 (syms_of_keymap):
10847 * minibuf.c (Fcompleting_read): Adjust accordingly.
10848 * commands.h: Rename declaration as well.
10849
108502008-06-05 Kenichi Handa <handa@m17n.org>
10851
10852 * font.c (Ffont_spec): Don't use font_parse_family_registry for
10853 family name.
10854 (Ffont_put): Likewise.
10855
10856 * fontset.c (fontset_find_font): Call font_open_for_lface with the
10857 current font-spec.
10858
10859 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
10860 is unspecified.
10861
10862 * xfaces.c (realize_x_face): If the font-related face attributes
10863 are the same as those of default face, realize a new fontset from
10864 default->fontset.
10865 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
10866
108672008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
10868
10869 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
10870 (move_it_in_display_line): New wrapper.
10871
10872 * window.c (window_scroll_pixel_based_preserve_x)
10873 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
10874 (window_scroll_pixel_based, window_scroll_line_based):
10875 Use them to preserve column positions.
10876 (syms_of_window): Initialize them.
10877
10878 * indent.c (Fvertical_motion): Extend first arg to allow passing an
10879 (HPOS . VPOS) pair.
10880
10881 * dispextern.h (move_it_in_display_line): Declare.
10882
108832008-06-05 Juanma Barranquero <lekktu@gmail.com>
10884
10885 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
10886 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
10887 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
10888
108892008-06-04 Juanma Barranquero <lekktu@gmail.com>
10890
10891 * window.c (Fset_window_parameter): Doc fix.
10892 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
10893
108942008-06-04 Joakim Verona <joakim@verona.se>
10895
10896 * window.h (struct window): Add new member window_parameters.
10897
10898 * window.c (Fwindow_parameters, Fwindow_parameter)
10899 (Fset_window_parameter): New defuns.
10900 (syms_of_window): Defsubr the new defuns.
10901 (make_window): Initialize window_parameters to nil.
10902
109032008-06-04 John Paul Wallington <jpw@pobox.com>
10904
10905 * eval.c (Fdefmacro): Doc fix.
10906
109072008-06-04 Kenichi Handa <handa@m17n.org>
10908
10909 * coding.c (detect_coding): Fix handling of coding->head_ascii.
10910 Be sure to call setup_coding_system when we find a proper coding system.
10911 (detect_coding_system): Fix handling of coding->head_ascii.
10912
109132008-06-03 Andreas Schwab <schwab@suse.de>
10914
10915 * font.c (font_prop_validate_spacing): Fix last change.
10916
109172008-06-03 Kenichi Handa <handa@m17n.org>
10918
10919 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
10920 (font_parse_fcname): Fix handling of unknown key.
10921
10922 * xfont.c (xfont_list): Try an alias.
10923
10924 * charset.c (char_charset): Return NULL if the arg charset_list is
10925 specified and C doesn't belong to any of them.
10926
109272008-06-02 Chip Coldwell <coldwell@redhat.com>
10928
10929 * font.c (font_pixel_size): Don't take cdr of an integer.
10930
109312008-06-02 Jim Meyering <meyering@redhat.com>
10932
10933 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
10934 * alloc.c (xfree): Return right away for a NULL arg.
10935 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
10936 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
10937 * mac.c (create_apple_event_from_event_ref): Likewise.
10938 (create_apple_event_from_drag_ref, cfstring_create_normalized):
10939 Likewise.
10940 * doprnt.c (doprnt1): Likewise.
10941 * frame.c (frame): Likewise.
10942 * keyboard.c (wipe_kboard): Likewise.
10943 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
10944 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
10945 * term.c (tty_default_color_capabilities, maybe_fatal)
10946 (delete_tty): Likewise.
10947 * w16select.c (string): Likewise.
10948 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
10949 * w32bdf.c (w32_free_bdf_font): Likewise.
10950 * w32fns.c (w32_unload_font): Likewise.
10951 * w32font.c (w32font_close): Likewise.
10952 * window.c (size_window): Likewise.
10953 * xselect.c (receive_incremental_selection): Likewise.
10954 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
10955 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
10956 * w32.c (stat): Likewise.
10957
10958 Remove useless if-before-free tests.
10959 * editfns.c (Fset_time_zone_rule): Likewise.
10960 * lread.c (nosuffix): Likewise.
10961 * ralloc.c (get_bloc): Likewise.
10962 * regex.c (reg_free): Likewise.
10963 * xftfont.c (xftfont_open, xftfont_close): Likewise.
10964 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
10965 * xsmfns.c (smc_save_yourself_CB): Likewise.
10966
109672008-06-02 Kenichi Handa <handa@m17n.org>
10968
10969 * font.c (font_find_for_lface): Handle float font size.
10970 (font_open_for_lface): Likewise.
10971
10972 * xfaces.c (x_supports_face_attributes_p): Check face->font before
10973 comparing the properties.
10974
109752008-06-01 Jason Rumney <jasonr@gnu.org>
10976
10977 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
10978 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
10979 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
10980 Don't add empty script list.
10981 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
10982
109832008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
10984
10985 * Makefile.in (dot, dotdot): Remove, update users.
10986 ".." has been used elsewhere in the file for a long time.
10987 (LIBXT_STATIC): Remove conditional based on unused variable.
10988
109892008-06-01 Miles Bader <miles@gnu.org>
10990
10991 * xfaces.c (Vface_remapping_alist): New variable.
10992 (syms_of_xfaces): Initialize it.
10993 (enum named_merge_point_kind): New type.
10994 (struct named_merge_point): Add `named_merge_point_kind' field.
10995 (push_named_merge_point): Make cycle detection respect different
10996 named-merge-point kinds.
10997 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
10998 Remove face-name alias resolution.
10999 (lface_from_face_name): New definition using
11000 `lface_from_face_name_no_resolve'.
11001 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11002 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11003 (get_lface_attributes): New definition that layers face-remapping on
11004 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11005 (lookup_basic_face): New function.
11006 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11007 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11008 `get_lface_attributes'.
11009 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11010 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11011 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11012
11013 * xdisp.c (init_iterator): Pass base_face_id through
11014 `lookup_basic_face' when we actually use it as a face-id.
11015 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11016 DEFAULT_FACE_ID.
11017
11018 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11019 lookup the initial face-id.
11020
11021 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11022
110232008-06-01 Juanma Barranquero <lekktu@gmail.com>
11024
11025 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11026 (Fremove_text_properties): Fix typos in docstrings.
11027
110282008-05-31 Kenichi Handa <handa@m17n.org>
11029
11030 * font.c (font_list_entities): Fix the car part of data to be
11031 stored in the cache.
11032
11033 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11034
110352008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11036
11037 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11038 Add a `test' argument so another predicate than `equal' can be used.
11039 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11040 (map_char_table): Remove unused vars `c' and `i'.
11041 * lisp.h (Foptimize_char_table): Adjust declaration.
11042 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11043
110442008-05-30 Kenichi Handa <handa@m17n.org>
11045
11046 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11047 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11048 defined.
11049
110502008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11051
11052 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11053 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11054 frame-local settings for the same variable.
11055
110562008-05-30 Kenichi Handa <handa@m17n.org>
11057
11058 * fontset.c (Ffont_info): Move to font.c.
11059 (syms_of_fontset): Delete defsubr of Sfont_info.
11060
11061 * font.c (font_style_to_value, font_score): Delete casting of the
11062 args to xstcasecmp.
11063 (register_font_driver): Increment num_font_drivers only when
11064 registering the driver globally.
11065 (Ffont_info): Move from fontset.c. Handle a font object too.
11066 (syms_of_font): Defsubr Sfont_info.
11067
110682008-05-29 Kenichi Handa <handa@m17n.org>
11069
11070 * coding.h (enum define_coding_utf8_arg_index): New enum.
11071 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11072 coding_attr_utf_bom.
11073 (enum utf_bom_type): Rename from utf_16_bom_type.
11074 (struct utf_16_spec): Adjust for the above change.
11075 (struct coding_system): Add utf_8_bom in `spec' union.
11076
11077 * coding.c (CODING_UTF_8_BOM): New macro.
11078 (enum coding_category): Delete coding_category_utf_8, add
11079 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11080 coding_category_utf_8_sig.
11081 (CATEGORY_MASK_UTF_8): Delete it.
11082 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11083 (CATEGORY_MASK_UTF_8_SIG): New macros.
11084 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11085 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11086 CATEGORY_MASK_UTF_8_SIG.
11087 (CATEGORY_MASK_UTF_8): New macro.
11088 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11089 (detect_coding_utf_8): Check BOM.
11090 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11091 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11092 (encode_coding_utf_16): Likewise.
11093 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11094 (detect_coding, detect_coding_system): Handle utf-8-auto.
11095 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11096 (syms_of_coding): Fix setting up of Vcoding_category_table.
11097
110982008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11099
11100 * process.c (Faccept_process_output): If `millisec' is non-nil,
11101 `seconds' default to 0.
11102 (wait_reading_process_output): Also return non-nil if we read output
11103 from a non-running process.
11104
111052008-05-29 Jason Rumney <jasonr@gnu.org>
11106
11107 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11108 `raster' specified.
11109 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11110 in the uniscribe backend, but disallow any font that has no
11111 unicode subrange support.
11112
111132008-05-29 Juanma Barranquero <lekktu@gmail.com>
11114
11115 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11116 Fix typos in docstrings.
11117
111182008-05-29 Kenichi Handa <handa@m17n.org>
11119
11120 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11121 (Fx_family_fonts): Set frame correctly.
11122
111232008-05-28 Jason Rumney <jasonr@gnu.org>
11124
11125 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11126
111272008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11128
11129 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11130 calling build_annotations.
11131
111322008-05-28 Juanma Barranquero <lekktu@gmail.com>
11133
11134 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11135 (Fencode_coding_string):
11136 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11137 <latin-extra-code-table>: Fix typos in docstrings.
11138 (syms_of_coding) <coding-system-alist>: Doc fix.
11139 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11140
111412008-05-28 Kenichi Handa <handa@m17n.org>
11142
11143 * fontset.c (Ffont_info): Don't call font_close_object.
11144
11145 * font.c (font_parse_family_registry): Use Ffont_put to validate
11146 foundry and family.
11147 (font_delete_unmatched): Don't check spacing.
11148 (font_list_entities): Add spacing to the spec to list fonts.
11149
11150 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11151 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11152
11153 * coding.c (encode_coding_raw_text): Fix previous change.
11154 (encode_coding_object): When the dst_object is a buffer and is
11155 different from src_object, move gap to PT.
11156
111572008-05-27 Chong Yidong <cyd@stupidchicken.com>
11158
11159 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11160
111612008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11162
11163 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11164 all branches. Compute it differently.
11165
11166 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11167
111682008-05-27 Juanma Barranquero <lekktu@gmail.com>
11169
11170 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11171 into "else if () ... else ...".
11172
111732008-05-27 Jason Rumney <jasonr@gnu.org>
11174
11175 * w32font.c (w32font_open_internal): Determine if glyph indices
11176 are likely to work here.
11177
111782008-05-27 Chong Yidong <cyd@stupidchicken.com>
11179
11180 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11181 draw overlap glyphs with appropriate highlighting.
11182
111832008-05-27 Kenichi Handa <handa@m17n.org>
11184
11185 * xfont.c (xfont_open): Fix calculation of font->average_width.
11186
111872008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11188
11189 * casefiddle.c (casify_object): Try to guess better whether the
11190 argument is a byte or a char.
11191
111922008-05-26 Andreas Schwab <schwab@suse.de>
11193
11194 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11195 Always send multiples of format size.
11196
11197 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11198
111992008-05-26 Jason Rumney <jasonr@gnu.org>
11200
11201 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11202 (compute_metrics): Don't set failure if we just cleared the cache.
11203 (w32_weight_table): Remove unused variable.
11204 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11205 backwards compatibility.
11206
112072008-05-25 Kenichi Handa <handa@m17n.org>
11208
11209 * w32term.c (x_draw_glyph_string):
11210 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11211
11212 * xfaces.c: Delete unused function prototypes.
11213 (xstrlwr, font_frame): Delete them.
11214 (clear_face_cache): Delete unused variable.
11215
11216 * xftfont.c (xftfont_open): Delete unused variable.
11217 If underline_thickness is not 1, adjust underline_position.
11218
11219 * ftxfont.c (ftxfont_open): Delete unused variable.
11220
11221 * fontset.c (face_for_char): Optimize for the case of no charset
11222 property.
11223
11224 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11225 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11226 (otf_open, font_otf_capability, generate_otf_features)
11227 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11228 Comment out by surrounding "#if 0" and "#endif" for the moment.
11229 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11230 (syms_of_font): Codes for accessing above commented out.
11231
112322008-05-24 Eli Zaretskii <eliz@gnu.org>
11233
11234 * w32proc.c: Include dispextern.h.
11235
11236 * w32.c: Include dispextern.h.
11237
112382008-05-23 Juanma Barranquero <lekktu@gmail.com>
11239
11240 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11241 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11242 Fix typos in docstrings.
11243
112442008-05-23 Jason Rumney <jasonr@gnu.org>
11245
11246 * xsmfns.c: Remove includes that are already included by config.h.
11247
112482008-05-23 Kenichi Handa <handa@m17n.org>
11249
11250 * charset.c (Qemacs, charset_emacs): New variables.
11251 (char_charset): Fix for non-Unicode characters.
11252 (syms_of_charset): Define charset_emacs.
11253
11254 * w32term.c (x_draw_glyph_string): Be sure to update
11255 s->underline_thickness and s->underline_position. Be sure to draw
11256 underline within the current line area.
11257
11258 * xterm.c (x_draw_glyph_string): Be sure to update
11259 s->underline_thickness and s->underline_position. Be sure to draw
11260 underline within the current line area.
11261
11262 * fontset.c: Delete unused variables and add casting for char *
11263 throughout the file.
11264 (fontset_font): Try the fallback fonts of the current fontset
11265 before consulting the default fontset.
11266
11267 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11268
11269 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11270
112712008-05-22 Jason Rumney <jasonr@gnu.org>
11272
11273 * font.c: Don't include strings.h.
11274
11275 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11276
11277 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11278 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11279 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11280 to call xstrcasecmp.
11281
11282 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11283
11284 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11285
11286 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11287
11288 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11289
112902008-05-22 Kenichi Handa <handa@m17n.org>
11291
11292 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11293
11294 * font.c (font_prop_validate_style): Adjust for the format
11295 change of font_style_table.
11296
11297 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11298 two args.
11299
11300 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11301 two args.
11302
113032008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11304
11305 * minibuf.c (keys_of_minibuf): Delete.
11306 * lisp.h (keys_of_minibuf): Delete.
11307 * emacs.c (main): Don't call keys_of_minibuf.
11308
113092008-05-22 Kenichi Handa <handa@m17n.org>
11310
11311 * ftfont.c (ftfont_resolve_generic_family): Rename from
11312 ftfont_list_generic_family. Return a single family for each
11313 generic family.
11314 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11315 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11316 Call font_add_log.
11317 (ftfont_match): Call font_add_log.
11318
11319 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11320 (FONT_DEBUG): Define it.
11321 (font_add_log): Extern it.
11322 (font_assert): Rename from xassert.
11323
11324 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11325 (xfont_list_family): Call font_add_log.
11326 (xfont_match): Likewise.
11327 (memq_no_quit): Delete.
11328
11329 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11330 call of Ffont_xlfd_name.
11331
11332 * xfaces.c (struct table_entry, slant_table, weight_table)
11333 (swidth_table): Move to font.c.
11334
11335 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11336 xassert are changed to font_assert. Delete many unused variables.
11337 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11338 New variables.
11339 (struct table_entry): Move from xfaces.c and modified.
11340 (weight_table, slant_table, width_table): Move from xfaces.c and
11341 contents adjusted for the change of struct table_entry.
11342 (font_style_to_value, font_style_symbolic): Adjust for the
11343 format change of font_style_table.
11344 (font_parse_family_registry): Don't overwrite existing foundry and
11345 family of font_spec.
11346 (font_score): Fix calculation of diff for sizes.
11347 (font_sort_entites): Call font_add_log.
11348 (font_delete_unmatched): Return a newly created list.
11349 (font_list_entities): Fix previous change. Call font_add_log.
11350 (font_matching_entity, font_open_entity, font_close_entity):
11351 Call font_add_log.
11352 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11353 (Finternal_set_font_style_table): Delete.
11354 (BUILD_STYLE_TABLE): New macro.
11355 (build_style_table): New function.
11356 (Vfont_log, font_log_env_checked): New variables.
11357 (font_add_log): New function.
11358 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11359 Declare Lisp variables "font-weight-table", "font-slant-table",
11360 "font-width-table", and "font-log". Initialize font_style_table.
11361
113622008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11363
11364 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11365
113662008-05-21 Seiji Zenitani <zenitani@mac.com>
11367 Ryo Yoshitake <ryo@shiftmode.net>
11368
11369 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11370 (Vframe_alpha_lower_limit): New variable.
11371 (x_set_alpha): New function.
11372
11373 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11374
11375 * xfns.c (x-create-frame, Qalpha):
11376 Initialize the frame parameter `alpha'.
11377 * xterm.c (OPAQUE, OPACITY): New.
11378 (x_set_frame_alpha): New function.
11379 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11380
11381 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11382 * w32fns.c (w32_frame_parm_handlers): Likewise.
11383
113842008-05-20 Jason Rumney <jasonr@gnu.org>
11385
11386 * w32font.c (add_font_entity_to_list): Don't add non-opentype
11387 truetype fonts to opentype list.
11388
113892008-05-20 Juanma Barranquero <lekktu@gmail.com>
11390
11391 * fontset.c (Ffontset_info): Doc fix.
11392 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
11393 <ignore-relative-composition>: Fix typos in docstrings.
11394
11395 * font.c (syms-of-font) <font-encoding-alist>:
11396 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
11397 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
11398 (Ffont_otf_alternates): Doc fixes.
11399
114002008-05-20 Kenichi Handa <handa@m17n.org>
11401
11402 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
11403 font.h through out the file.
11404 (FONT_DRIVERS): Rename from FONTOBJ.
11405 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
11406 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
11407
11408 * emacs.c (main): Call syms_of_font unconditionally.
11409
11410 * font.h (find_font_encoding): Extern it.
11411
11412 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
11413 fontset.c.
194d44e7 11414 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
11415 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
11416 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
11417 only when HAVE_WINDOW_SYSTEM is defined.
11418 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
11419 when HAVE_WINDOW_SYSTEM is defined.
11420
11421 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
11422 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
11423
11424 * xfaces.c: Include font.h unconditionally.
11425 (merge_face_ref, merge_face_vectors)
11426 (Finternal_set_lisp_face_attribute): Cancel the previous change.
11427
114282008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
11429
11430 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
11431 indirect_variable.
11432 * eval.c (lisp_indirect_variable): New fun.
11433 (Fuser_variable_p): Use it.
11434
114352008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
11436
11437 * lisp.h (indirect_variable):
11438 * data.c (indirect_variable, let_shadows_buffer_binding_p):
11439 Use Lisp_Symbol pointers rather than Lisp_Object.
11440 Adjust callers.
11441 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
11442 To this end, change calling-convention.
11443
11444 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
11445 if some non-hidden buffers are selected by string&pred.
11446
114472008-05-19 Chong Yidong <cyd@stupidchicken.com>
11448
11449 * process.c (wait_reading_process_output): Always check status
11450 when in batch mode.
11451
114522008-05-19 Kenichi Handa <handa@m17n.org>
11453
11454 * font.c (font_list_entities): Fix handling of cache.
11455 (font_matching_entity): Likewise.
11456
11457 * ftfont.c (cs_iso8859_1): Delete.
11458 (ft_face_cache): New variable.
11459 (struct ftfont_info): New member fc_charset_idx.
11460 (ftfont_build_basic_charsets): Delete.
11461 (fc_charset_table): New variable.
11462 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
11463 . FC_CHARSET_IDX) as :font-entity property in the font entity.
11464 Callers changed.
11465 (ftfont_lookup_cache, ftfont_get_charset): New functions.
11466 (ftfont_spec_pattern): New argument fc_charset_idx.
11467 Check registry more rigidly. Change callers.
11468 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
11469 change of :font-entity property of the font.
11470
11471 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
11472 property of the font.
11473
114742008-05-18 Juanma Barranquero <lekktu@gmail.com>
11475
11476 * coding.c (Fcoding_system_p): Rename argument to match docstring.
11477 (Funencodable_char_position, Fcheck_coding_systems_region)
11478 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
11479 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
11480 (Ffind_operation_coding_system, Fset_coding_system_priority)
11481 (Fcoding_system_eol_type): Doc fixes.
11482
114832008-05-17 Glenn Morris <rgm@gnu.org>
11484
11485 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
11486
114872008-05-16 Eli Zaretskii <eliz@gnu.org>
11488
11489 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
11490 and st_gid.
11491
11492 * frame.c (Fdelete_frame): Don't call font_update_drivers if
11493 HAVE_WINDOW_SYSTEM is not defined.
11494
11495 * xfaces.c (merge_face_ref, merge_face_vectors)
11496 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
11497 HAVE_WINDOW_SYSTEM is defined.
11498 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
11499
115002008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
11501
11502 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
11503
115042008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11505
11506 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
11507
115082008-05-15 Kenichi Handa <handa@m17n.org>
11509
11510 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
11511 preference.
11512
115132008-05-15 Glenn Morris <rgm@gnu.org>
11514
11515 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
11516
115172008-05-15 Chong Yidong <cyd@stupidchicken.com>
11518
11519 * fns.c (init_fns): Don't initialize weak_hash_tables here.
11520 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
11521
11522 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
11523
115242008-05-15 Kenichi Handa <handa@m17n.org>
11525
11526 * ftfont.c (ftfont_list): Downcase family name to check generic
11527 families.
11528
11529 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
11530 font-spec for QCfont value.
11531
11532 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
11533 buffer. Check the return value of it.
11534
115352008-05-14 Jason Rumney <jasonr@gnu.org>
11536
11537 * w32term.c (w32_get_glyph_overhangs): Remove.
11538 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
11539
115402008-05-14 Kenichi Handa <handa@m17n.org>
11541
11542 * font.c (font_prop_validate): Make nil a valid value.
11543 (font_clear_cache): Check if the cached vector of entities is nil
11544 or not.
11545
115462008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11547
11548 * emacs.c (main_thread): Conditionalize on
11549 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11550 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
11551
11552 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
11553 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
11554 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11555
115562008-05-14 Kenichi Handa <handa@m17n.org>
11557
11558 * coding.c (detect_coding_iso_2022): Ignore a coding category that
11559 has no corresponding coding system.
11560
115612008-05-14 Jason Rumney <jasonr@gnu.org>
11562
11563 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
11564
11565 * w32font.h (w32font_open_internal): Update declaration.
11566
11567 * w32font.c (w32font_open_internal): Change last argument from
11568 w32font_info struct to font object. Fill in font object from
11569 font_entity. Get Outline metrics if possible. Use them to
11570 calculate underline position and thickness. Use xlfd name as name
11571 property. Don't set codepage.
11572 (w32font_open): Pass font_object to w32font_open_internal. Don't
11573 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
11574 (w32font_draw): Use s->font.
11575 (clear_cached_metrics): Don't clear non-existent blocks.
11576
11577 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
11578 font was not found.
11579 (x_draw_glyph_string): Use underline position and thickness from font.
11580
11581 * w32uniscribe.c (uniscribe_open): Pass font_object to
11582 w32font_open_internal.
11583
115842008-05-14 Kenichi Handa <handa@m17n.org>
11585
11586 These changes are to delete all legacy font-handling codes, and
11587 make Emacs use only font-backends.
11588
11589 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
11590 (frame.o, image.o, print.o): Depend on $(FONTSRC).
11591
11592 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
11593
11594 * charset.h (Vcharset_non_preferred_head)
11595 (Vcurrent_iso639_language): Extern them.
11596
11597 * charset.c (Vcharset_non_preferred_head): New variable.
11598 (Vcurrent_iso639_language): New variable.
11599 (syms_of_charset): Declare it as a Lisp variable.
11600 (char_charset): Don't check non preferred charsets. As a last
11601 resort, return charset_unicode.
11602 (Fset_charset_priority): Update Vcharset_non_preferred_head.
11603
11604 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
11605 conditionals. Don't check enable_font_backend. Delete all codes
11606 used only when USE_FONT_BACKEND is not defined.
11607
11608 * dispextern.h (struct glyph_string): Change type of `font' to
11609 `struct font *'.
11610 (struct glyph_string): New member underline_position and
11611 underline_thickness.
11612 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
11613 (struct face): Change type of `font' to `struct font *'. Remove
11614 members `font_name', `font_info_id'.
11615 (per_char_metric, encode_char): Delete externs.
11616 (calc_pixel_width_or_height): Adjust the prototype.
11617
11618 * emacs.c (enable_font_backend): Delete extern.
11619 (main): Don't set enable_font_backend. Don't check the command
11620 line argument "-disable-font-backend".
11621
11622 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
11623 (enum font_property_index): New members FONT_DPI_INDEX,
11624 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
11625 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
11626 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
11627 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
11628 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
11629 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
11630 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
11631 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
11632 (struct font_spec, struct font_entity): New structs.
11633 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
11634 (struct font): Many members from old "struct font_info" moved to
11635 here. Members font and entity deleted.
11636 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
11637 the new font-related objects.
11638 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
11639 (CHECK_FONT_GET_OBJECT): Likewise.
11640 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
11641 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
11642 (struct font_driver): New members case_sensitive anc check. Type
11643 of the member list and open changed.
11644 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
11645 (font_symbolic_width, font_find_object, font_get_spec)
11646 (font_set_lface_from_name): Delete extern.
11647 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
11648
11649 * font.c: Include <strings.h>.
11650 (enable_font_backend): Delete it.
11651 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
11652 (CHECK_VALIDATE_FONT_SPEC): Delete it.
11653 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
11654 (null_string): Delete it.
11655 (null_vector): Make it static.
11656 (font_family_alist): Delete it.
11657 (Qnormal): Extern it.
11658 (QCextra, QClanguage): Delete it.
11659 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
11660 (font_make_spec, font_make_entity, font_make_object)
11661 (font_intern_prop): Renamed from intern_downcase. Don't downcase
11662 the string. Callers changed.
11663 (font_pixel_size): Adjusted for the format change of font-related
11664 objects.
11665 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
11666 (font_style_to_value, font_style_symbolic): New function.
11667 (build_font_family_alist): Delete it.
11668 (font_registry_charsets): Use Fassoc_string instead of
11669 assq_no_quit.
11670 (font_prop_validate_symbol): Don't return null_string.
11671 (font_prop_validate_style): Adjusted for the change of
11672 style-related values in a font vector.
11673 (font_property_table): Delete entries for QClanguage and
11674 QCantialias, add entries for QCavgwidth.
11675 (get_font_prop_index): Delete the 2nd argument FROM.
11676 (font_prop_validate): Arguments changed.
11677 (font_put_extra): Adjusted for the change of font-related objects.
11678 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
11679 (font_parse_fcname, font_unparse_fcname)
11680 (font_prepare_composition): Likewise.
11681 (font_parse_family_registry): Renamed from font_merge_old_spec.
11682 (otf_open): Delete the 1st arg entity.
11683 (font_otf_capability): Adjusted for the above change.
11684 (font_score): New arg alternate_families. Adjusted for the change
11685 of font-related objects.
11686 (font_sort_entites): New arg best_only.
11687 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
11688 Delete them.
11689 (font_match_p): Check alternate families.
11690 (font_find_object): Delete it.
11691 (font_check_object): New function.
11692 (font_clear_cache): Adjusted for the change of font-related objects.
11693 (font_delete_unmatched): New arg.
11694 (font_list_entities): Call font_driver->list with a spec that
11695 doesn't specify style-related properties.
11696 (font_matching_entity): Arguments changed. Caller changed.
11697 (font_open_entity): Adjusted for the change of font-related objects.
11698 (font_close_object, font_has_char, font_encode_char)
11699 (font_get_name, font_get_spec): Likewise.
11700 (font_spec_from_name, font_clear_prop, font_update_lface):
11701 New functions.
11702 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
11703 (font_prepare_for_face, font_done_for_face, font_open_by_name)
11704 (font_at): Adjusted for the change of font-related objects.
11705 (font_range): New function.
11706 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
11707 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
11708 (Fcopy_font_spec, Fmerge_font_spec): New function.
11709 (Ffont_family_list): Renamed from list-families.
11710 (Finternal_set_font_style_table): Arguments changed.
11711 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
11712 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
11713 change of font-related objects.
11714 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
11715
11716 * fontset.h (struct font_info): Delete it. Most members go to
11717 struct font.
11718 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
11719 (enum FONT_SPEC_INDEX): Delete it.
11720 (font_info, list_fonts_func, load_font_func, query_font_func)
11721 (set_frame_fontset_func, find_ccl_program_func)
11722 (get_font_repertory_func, new_fontset_from_font_name): Delete
11723 externs.
11724 (fontset_from_font_name): Extern it.
11725 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
11726 (FONT_INFO_FROM_FACE): Deleted.
11727 (face_for_font): Adjust prototype.
11728
11729 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
11730 conditionals. Don't check enable_font_backend. Delete all codes
11731 used only when USE_FONT_BACKEND is not defined.
11732 (get_font_info_func, list_font_func, load_font_func)
11733 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
11734 (get_font_repertory_func): Delete them.
11735 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
11736 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
11737 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
11738 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
11739 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
11740 (fontset_compare_rfontdef): New function.
11741 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
11742 rfont-defs by qsort. Adjusted for the change of font-group vector.
11743 (load_font_get_repertory): Deleted.
11744 (fontset_find_font): Use new macros to ref/set elements of
11745 font-def and rfont-def.
11746 (fontset_font): Fix the timing of remembering that no font for C.
11747 (free_face_fontset): Do nothing if the face has no fontset.
11748 (face_suitable_for_char_p): Use new macros to ref/set elements of
11749 rfont-def.
11750 (face_for_char): Likewise. Call face_for_char with font_object.
11751 (fs_load_font): Delete. Delete #pragma surrounding it.
11752 (fs_query_fontset): Use strcasecmp instead of strcmp.
11753 (generate_ascii_font_name): Adjusted for the format change of
11754 font-spec.
11755 (Fset_fontset_font): Likewise. Use new macros to set elements of
11756 font-def.
11757 (Fnew_fontset): Use font_unparse_xlfd to generate
11758 FONTSET_ASCII (fontset).
11759 (new_fontset_from_font_name): Deleted.
11760 (fontset_from_font): Renamed from new_fontset_from_font. Check if
11761 a fontset is already created for the font. FIx updating of
11762 Vfontset_alias_alist.
11763 (fontset_ascii_font): Deleted.
11764 (Ffont_info): Adjusted for the format change of font-spec.
11765 (Finternal_char_font): Likewise.
11766 (Ffontset_info): Likewise.
11767 (syms_of_fontset): Don't check load_font_func.
11768
11769 * fns.c (internal_equal): Handle PREV_FONT.
11770
11771 * frame.h: Delete USE_FONT_BACKEND conditional.
11772
11773 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
11774 conditionals. Don't check enable_font_backend. Delete all codes
11775 used only when USE_FONT_BACKEND is not defined.
11776 (x_set_font): Call x_new_font, not x_new_fontset2.
11777 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
11778 already set for the frame.
11779
11780 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
11781 a font-entity by font_make_entity. Use font_intern_prop instead
11782 of intern_downcase. Use FONT_SET_STYLE to set a style-related
11783 font property. If a font is scalable, set avgwidth property to 0.
11784 Set font-entity property by font_put_extra.
11785 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
11786 (ffont_driver): Adjusted for the change of struct font_driver.
11787 (ftfont_spec_pattern): New function.
11788 (ftfont_list): Return a list, not vector.
11789 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
11790 (ftfont_list_family): Don't downcase names.
11791 (ftfont_free_entity): Deleted.
11792 (ftfont_open): Return a font-object. Adjusted for the change of
11793 struct font. Get underline_thickness and underline_position from
11794 font property. Don't update dpyinfo->smallest_font_height and
11795 dpyinfo->smallest_char_width.
11796 (ftfont_close): Don't free `struct font'.
11797 (ftfont_has_char): Adjusted for the format change of font-entity.
11798 (ftfont_encode_char, ftfont_text_extents): Likewise.
11799
11800 * ftxfont.c (ftxfont_list): Return a list, not vector.
11801 (ftxfont_open): Return a font-object. Adjusted for the change of
11802 struct font. Get underline_thickness and underline_position from
11803 font property. Don't update dpyinfo->smallest_font_height and
11804 dpyinfo->smallest_char_width.
11805 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
11806 (ftxfont_draw): Adjusted for the change of struct font.
11807
11808 * image.c (image_ascent): Don't include "charset.h". Include
11809 "character.h" and "font.h".
11810
11811 * lisp.h (enum pvec_type): New member PREV_FONT.
11812 (Fassoc_string): EXFUN it.
11813
11814 * print.c: Include font.h.
11815 (print_object): Handle font-related objects.
11816
11817 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
11818 conditionals. Don't check enable_font_backend. Delete all codes
11819 used only when USE_FONT_BACKEND is not defined.
11820 (handle_auto_composed_prop): Do nothing if it->f is not on a
11821 window system. Check how many following characters can be
11822 displayed by the same font.
11823 (calc_pixel_width_or_height): Type of the 4th arg is changed to
11824 'struct font *'.
11825 (get_char_face_and_encoding): Assign the whole encoding task to
11826 the `encode-char' method of a font driver.
11827 (fill_composite_glyph_string): Adjusted for the change of `struct
11828 face' and `struct glyph_string'.
11829 (fill_glyph_string): Likewise.
11830 (get_per_char_metric): Arguments changed.
11831 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
11832 and `struct glyph_string'.
11833 (produce_stretch_glyph, calc_line_height_property)
11834 (x_produce_glyphs): Likewise.
11835
11836 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
11837 conditionals. Don't check enable_font_backend. Delete all codes
11838 used only when USE_FONT_BACKEND is not defined. Use
11839 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
11840 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
11841 (Qp): Extern them.
11842 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
11843 Deleted.
11844 (struct font_name): Deleted.
11845 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
11846 (compare_fonts_by_sort_order): New function.
11847 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
11848 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
11849 Deleted.
11850 (Fx_family_fonts): Use font_list_entities, and sort fonts by
11851 compare_fonts_by_sort_order.
11852 (Fx_font_family_list): Call Ffont_family_list.
11853 (face_numeric_value, face_numeric_weight, face_numeric_slant)
11854 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
11855 (face_symbolic_slant, face_symbolic_swidth)
11856 (split_font_name_into_vector, build_font_name_from_vector)
11857 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
11858 (font_rescale_ratio, split_font_name, build_font_name)
11859 (free_font_names, sort_fonts, x_face_list_fonts)
11860 (face_font_available_p, sorted_font_list, cmp_font_names)
11861 (font_list_1, concat_font_list, font_list, remove_duplicates):
11862 Deleted.
11863 (Fx_list_fonts): Use Ffont_list.
11864 (LFACE_AVGWIDTH): Deleted.
11865 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
11866 by FONTP.
11867 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
11868 (set_lface_from_font_name): Delete it.
11869 (set_lface_from_font): Renamed from
11870 set_lface_from_font_and_fontset. Caller changed. Don't set
11871 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
11872 for face.
11873 (merge_face_vectors): Copy font-spec if necessary.
11874 Clear properties of the font-spec if necessary.
11875 (merge_face_ref): Clear properties of the font-spec if necessary.
11876 (Finternal_set_lisp_face_attribute): Likewise.
11877 (set_font_frame_param): Use font_load_for_lface to load a
11878 font-object, and call Fmodify_frame_parameters with it.
11879 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
11880 font name by Ffont_xlfd_name.
11881 (Finternal_lisp_face_attribute_values): Don't check QCweight,
11882 QCslant, and QCwidth.
11883 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
11884 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
11885 Compare fonts by EQ.
11886 (lookup_non_ascii_face): Deleted.
11887 (face_for_font): The 2nd argument changed.
11888 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
11889 Check atomic font properties by case insensitive.
11890 (realize_non_ascii_face): Set face->overstrike correctly.
11891 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
11892 (dump_realized_face): Get font name from
11893 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
11894
11895 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
11896 conditionals. Don't check enable_font_backend. Delete all codes
11897 used only when USE_FONT_BACKEND is not defined.
11898 (xic_create_xfontset): Original code deleted and renamed from
11899 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
11900 (x_make_gc): Don't set GCFont in GCs.
11901 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
11902 opened by "fixed".
11903 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
11904 find_ccl_program_func, query_font_func, set_frame_fontset_func,
11905 get_font_repertory_func.
11906
11907 * xfont.c: Include <stdlib.h> and "ccl.h".
11908 (struct xfont_info): New structure.
11909 (xfont_query_font): Deleted.
11910 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
11911 moved from xterm.c.
11912 (xfont_driver): Adjusted for the change of struct font_driver.
11913 (compare_font_names): New function.
11914 (xfont_list_pattern): Sort font names case insensitively. Make
11915 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
11916 (xfont_list): Return a list, not vector.
11917 (xfont_match): If the font doesn't have QCname property, generate
11918 a name from the other font properties.
11919 (xfont_open): Return a font-object. Adjusted for the change of
11920 struct font. Get underline_thickness and underline_position from
11921 font property. Don't update dpyinfo->smallest_font_height and
11922 dpyinfo->smallest_char_width.
11923 (xfont_close): Don't free struct font.
11924 (xfont_prepare_face): Adjusted for the change of struct font.
11925 (xfont_done_face): Deleted.
11926 (xfont_has_char): Adjusted for the change of struct font.
11927 (xfont_encode_char, xfont_draw): Likewise.
11928 (xfont_check): New function.
11929
11930 * xftfont.c (xftfont_list): Adjusted for the change of `list'
11931 callback function.
11932 (xftfont_match): Adjusted for the format change of font-entity.
11933 (xftfont_open): Adjusted for the format change of font-entity and
11934 font-object. Adjusted for the change of struct font. Return a
11935 font-object. Don't update dpyinfo->smallest_font_height and
11936 dpyinfo->smallest_char_width.
11937 (xftfont_close): Block input while calling XftFontClose.
11938 (xftfont_prepare_face): Don't block input while calling
11939 xftfont_get_colors. Adjusted for the change of struct font.
11940 (xftfont_shape): Return value of error case fixed.
11941
11942 * xrdb.c (x_load_resources): Don't setup a fontset resource.
11943
11944 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
11945 conditionals.
11946 (FONT_WIDTH): Return (f)->max_width.
11947 (struct x_display_info): Delete member `font'.
11948 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
11949 (x_find_ccl_program, x_get_font_repertory): Delete externs.
11950 (struct x_output): Change type of `font' to `struct font *'.
11951
11952 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
11953 conditionals. Don't check enable_font_backend. Delete all codes
11954 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
11955 (x_per_char_metric, x_encode_char): Deleted.
11956 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
11957 (x_compute_glyph_string_overhangs): Adjusted for the change of
11958 `struct face'.
11959 (x_draw_glyph_string_foreground)
11960 (x_draw_composite_glyph_string_foreground): Likewise.
11961 (x_draw_glyph_string): Likewise. Use font->underline_position and
11962 font->underline_thickness.
11963 (x_new_font): Renamed from x_new_fontset2.
11964 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
11965 (x_check_font): Call `check' method of a font driver.
11966 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
11967 (x_query_font, x_get_font_repertory): Deleted.
11968 (x_find_ccl_program): Renamed and moved to xfont.c.
11969 (x_redisplay_interface): Adjusted for the change of `struct
11970 redisplay_interface'.
11971
11972 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
11973 conditionals. Don't check enable_font_backend. Delete all codes
11974 used only when USE_FONT_BACKEND is not defined. Surround non-used
11975 code by "#ifdef OLD_FONT" and "endif".
11976 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
11977
11978 * w32font.h (struct w32font_info): New member.
11979 (FONT_COMPAT): New macro.
11980 (w32font_open_internal): Prototype adjusted.
11981
11982 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
11983 OLD_FONT" and "endif".
11984
11985 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
11986 conditionals. Don't check enable_font_backend. Delete all codes
11987 used only when USE_FONT_BACKEND is not defined.
11988 (w32font_open): Return a font-object. Make a font-object by
11989 font_make_object. Adjusted for the change of struct w32font_info.
11990 (w32font_close): Don't free struct font. Adjusted for the change
11991 of struct w32font_info.
11992 (w32font_encode_char, w32font_text_extents, w32font_draw):
11993 Adjusted for the change of struct w32font_info.
11994 (w32font_draw): Likewise.
11995 (w32font_list_internal): Return a list, not vector.
11996 (w32font_open_internal): Change the 4th arg to font-object.
11997 Adjusted for the change of struct w32font_info and font-object format.
11998 (add_font_name_to_list): Don't downcase names.
11999 (w32_enumfont_pattern_entity): Make a font-entity by
12000 font_make_entity. Adjusted for the format change of font-entity.
12001 Use FONT_SET_STYLE to set a style-related font property. If a
12002 font is scalable, set avgwidth property to 0. Set font-entity
12003 property by font_put_extra.
12004 (font_matches_spec): Adjusted for the format change of font-entity.
12005 (w32_weight_table, w32_decode_weight): New variables.
12006 (w32_encode_weight): New function.
12007 (fill_in_logfont): Adjusted for the format change of font-spec.
12008 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12009 weight value.
12010 (w32font_driver): Adjusted for the change of struct font_driver.
12011
12012 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12013 conditionals. Don't check enable_font_backend. Surround non-used
12014 code by "#ifdef OLD_FONT" and "endif".
12015 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12016 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12017
12018 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12019 conditionals. Don't check enable_font_backend. Delete all codes
12020 used only when USE_FONT_BACKEND is not defined. Surround non-used
12021 code by "#ifdef OLD_FONT" and "endif".
12022
12023 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12024 (uniscribe_open): Return value changed to font-object.
12025 Adjusted for the format change of font-object.
12026 (uniscribe_otf_capability): Adjusted for the change of struct font.
12027 (add_opentype_font_name_to_list): Don't downcase names.
12028 (uniscribe_font_driver): Adjusted for the change of struct
12029 font_driver.
12030
120312008-05-13 Chong Yidong <cyd@stupidchicken.com>
12032
12033 * dispnew.c (update_frame_1): Check if tty output is still valid
12034 before flushing it.
12035
120362008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12037
12038 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12039 to Gtk+ menus.
12040
120412008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12042
12043 * dired.c (file_name_completion): Tweak the code so as to always do it
12044 in a single pass. Tighten the scope of some variables.
12045
12046 * dired.c (Qdefault_directory): New var.
12047 (file_name_completion): Use it instead of Fexpand_file_name.
12048 (syms_of_dired): Initialize it.
12049
120502008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12051
12052 * fileio.c (double_dollars): Remove dead code.
12053
120542008-05-10 Eli Zaretskii <eliz@gnu.org>
12055
12056 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12057 Mention w32-get-true-file-attributes in doc string.
12058
12059 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12060
120612008-05-09 Glenn Morris <rgm@gnu.org>
12062
12063 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12064 2008-04-23.
12065
120662008-05-09 Eli Zaretskii <eliz@gnu.org>
12067
12068 Support for reporting owner and group of each file on MS-Windows:
12069 * dired.c (stat_uname, stat_gname): New functions, with special
12070 implementation for w32.
12071 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12072
12073 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12074 (dflt_group_name): New static variable.
12075 (dflt_group): Rename from the_group.
12076 (init_user_info): Init dflt_group fields. Get user's group name
12077 from LookupAccountSid.
12078 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12079 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12080 New initialization states.
12081 (globals_of_w32): Initialize them to zero. Initialize the default
12082 group name to "None".
12083 (GetFileSecurity_Name): New global var, the name of the function
12084 to call for GetFileSecurity.
12085 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12086 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12087 (get_file_security, get_security_descriptor_owner)
12088 (get_security_descriptor_group, is_valid_sid)
12089 (get_file_security_desc, get_rid, get_name_and_id)
12090 (get_file_owner_and_group): New functions.
12091 (stat): Use get_file_security_desc and get_file_owner_and_group to
12092 report the owner and primary group of each file. Don't ignore the
12093 high 32 bits of file's size, now that st_size is 64-bit wide.
12094 Fix test when to get true file attributes.
12095 (init_user_info): Use get_rid instead of equivalent inline code.
12096 (fstat): Don't ignore the high 32 bits of file's size.
12097
120982008-05-09 Chong Yidong <cyd@stupidchicken.com>
12099
12100 * image.c (png_load): Use correct bit-depth for setting background
12101 color.
12102
121032008-05-08 Eli Zaretskii <eliz@gnu.org>
12104
12105 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12106 epa-hook.elc.
12107
121082008-05-08 Juanma Barranquero <lekktu@gmail.com>
12109
12110 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12111
121122008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12113
12114 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12115 because the original parameters are in pure storage now.
12116 (mac_window): Remove unused params. Update callers.
12117
121182008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12119
12120 * lread.c (substitute_object_recurse): Use lower-level primitives.
12121 Don't signal errors when traversing sub-char-tables.
12122 Don't loop over all the possible characters when traversing char-tables.
12123
12124 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12125 just like we do in print.c.
12126
121272008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12128
12129 * minibuf.c (Ftry_completion): Remove code left over from when we used
12130 scmp instead of Fcompare_strings.
12131
121322008-05-04 Juanma Barranquero <lekktu@gmail.com>
12133
12134 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12135
121362008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12137
12138 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12139 Create bitmap context in native byte order.
12140
12141 * macterm.c (XDrawLine)
12142 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12143 context in native byte order.
12144
121452008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12146
12147 * config.in: Regenerate.
12148
12149 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12150 New definitions for Image I/O support.
12151 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12152 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12153 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12154 (mac_data_provider_release_data, image_load_image_io)
12155 [USE_MAC_IMAGE_IO]: New functions.
12156 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12157 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12158 (init_image_func_pointer) [MAC_OSX]: Remove function.
12159 (image_load_quartz2d) [MAC_OSX]: Check availability of
12160 CGImageCreateWithPNGDataProvider at compile time.
12161 Use lowercase `false' for boolean constant.
12162 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12163 Use image_load_image_io.
12164 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12165 Don't check MyCGImageCreateWithPNGDataProvider.
12166 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12167 Don't call init_image_func_pointer.
12168
12169 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12170
12171 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12172 Make variable non-static.
12173 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12174 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12175
12176 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12177 (RED_FROM_ULONG): Mask off higher bits.
12178 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12179
12180 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12181 Include AvailabilityMacros.h.
12182 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12183 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12184
121852008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12186
12187 * chartab.c (Fset_char_table_range): If range is t, really set all
12188 chars to that value.
12189
121902008-05-03 Eli Zaretskii <eliz@gnu.org>
12191
12192 * dired.c (Ffile_attributes): Don't allow the device number become
12193 negative.
12194
121952008-05-02 Daiki Ueno <ueno@unixuser.org>
12196
12197 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12198
121992008-05-02 Juri Linkov <juri@jurta.org>
12200
12201 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12202 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12203 DEFAULT argument as a list of default values in docstrings.
12204
122052008-05-01 Chong Yidong <cyd@stupidchicken.com>
12206
12207 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12208
122092008-05-01 Martin Rudalics <rudalics@gmx.at>
12210
12211 * dispnew.c (change_frame_size_1): Preserve small windows when
12212 shrinking frames by calling set_window_height|width with third
12213 arg 2.
12214
12215 * window.h (struct window): Replace field too_small_ok by field
12216 resize_proportionally.
12217
12218 * window.c (make_window): Initialize resize_proportionally.
12219 (enlarge_window): Temporarily set resize_proportionally to make
12220 sure that shrink_windows does scale the window proportionally.
12221 (shrink_windows): When window has resize_proportionally set try
12222 to shrink it proportionally by stealing from other windows.
12223 (struct saved_window, Fset_window_configuration)
12224 (compare_window_configurations): Handle resize_proportionally.
12225 (WINDOW_TOTAL_SIZE): New macro.
12226 (window_min_size, shrink_windows, size_window): Use it.
12227 (check_min_window_sizes): Remove. Invalid values of
12228 window-min-height|width are handled by window_min_size_2 now.
12229 (size_window, Fsplit_window, enlarge_window)
12230 (adjust_window_trailing_edge, grow_mini_window): Don't call
12231 check_min_window_sizes.
12232 (window_min_size_2, window_min_size_1, window_min_size):
12233 New argument safe_p for retrieving "safe" minimum sizes.
12234 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12235 (adjust_window_trailing_edge, grow_mini_window):
12236 Adjust arguments of window_min_size... functions.
12237 (shrink_windows): Argument min_size removed. New argument
12238 safe_p allows shrinking windows to their safe minimum sizes.
12239 Calculate minimum size and decide whether a window shall be
12240 deleted for each window individually.
12241 (size_window): When nodelete_p equals 2, tell shrink_windows to
12242 delete windows only if their new minimum size is no more safe.
12243 (shrink_window_lowest_first): Call window_min_size_1 to make
12244 sure to preserve modeline of bottom-most window when resizing
12245 the minibuffer.
12246 (Fset_window_configuration, Fcurrent_window_configuration)
12247 (compare_window_configurations): Do not handle
12248 window-min-height|width any more.
12249 (syms_of_window): Clarify window-min-height|width doc-strings.
12250
122512008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12252
12253 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12254 some more. Copy some of the code from Ftry_completions.
12255 Remove special case code that dates back to initial revision when the
12256 slash was only added when necessary and that can't trigger nowadays.
12257
122582008-04-27 Kenichi Handa <handa@m17n.org>
12259
12260 * font.c (font_prop_validate): Signal `error' instead of `font'.
12261
122622008-04-29 Jason Rumney <jasonr@gnu.org>
12263
12264 * w32fns.c (Fw32_battery_status): New defun.
12265 (syms_of_w32fns): Defsubr it.
12266
122672008-04-28 Andreas Schwab <schwab@suse.de>
12268
12269 * dired.c (file_name_completion): Fix another mixing of encoded
12270 and decoded names.
12271
122722008-04-28 Juanma Barranquero <lekktu@gmail.com>
12273
12274 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12275
122762008-04-27 Juanma Barranquero <lekktu@gmail.com>
12277
12278 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12279
122802008-04-27 Andreas Schwab <schwab@suse.de>
12281
12282 * dired.c (file_name_completion): Fix inappropriate mixing of
12283 encoded and decoded names.
12284
12285 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12286
12287 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12288
122892008-04-26 Eli Zaretskii <eliz@gnu.org>
12290
12291 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12292 2008-03-31, it's not needed anymore with `struct stat' definition
12293 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12294 for the same reasons.
12295
122962008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12297
12298 * m/sparc.h: Additional redefinitions for GNU/Linux.
12299
123002008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12301
12302 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12303 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12304 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12305 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12306 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12307 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12308 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12309 Likewise.
12310
12311 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12312 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12313 (mac_ax_number_of_characters): Add externs.
12314 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12315 [USE_MAC_TSM]: Likewise.
12316 (mac_handle_text_input_event) [MAC_OSX]:
12317 Handle kEventTextInputOffsetToPos for no active input area case.
12318 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12319 (mac_handle_document_access_event)
12320 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12321 (install_application_handler) [MAC_OSX]: Register handlers for
12322 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12323 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12324 Register mac_handle_document_access_event.
12325
12326 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12327 Make functions non-static.
12328
123292008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12330
12331 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12332 (read_file_name_completion_ignore_case, insert_default_directory)
12333 (Qdefault_directory): Move to minibuffer.el.
12334 (Fread_file_name): Call the new `read-file-name' instead.
12335
123362008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12337
12338 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12339 Make function non-static.
12340 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12341 Remove function.
12342 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12343 Move to mactoolbox.c.
12344 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12345
12346 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12347 (mac_rect_make): New macro.
12348
12349 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12350 instead of float.
12351 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12352 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12353 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12354 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12355 CGRectMake.
12356 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12357 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12358 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12359 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12360 instead of WindowRef in argument type.
12361 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12362 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12363 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12364 instead of DISPLAY. All uses changed.
12365 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12366 (x_calc_absolute_position): Simplify so as not to use
12367 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12368
12369 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12370 instead of WindowRef in argument type.
12371 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12372 [TARGET_API_MAC_CARBON]: Remove externs.
12373 (create_apple_event, mac_event_parameters_to_lisp)
12374 [TARGET_API_MAC_CARBON]: Add externs.
12375
12376 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12377 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12378 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12379 is clicked.
12380 (x_activate_menubar): Remove extern for saved_menu_event_location.
12381 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12382 Move from mac.c.
12383
123842008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12385
12386 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
12387 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
12388
123892008-04-23 Jason Rumney <jasonr@gnu.org>
12390
12391 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
12392 attributes only for local files.
12393
12394 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
12395 default to Qlocal.
12396
123972008-04-22 Juri Linkov <juri@jurta.org>
12398
12399 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
12400 read-buffer-to-switch instead of using the letter "B".
12401
124022008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
12403
12404 * fileio.c (Qdefault_directory): New variable.
12405 (Fread_file_name): Use it to pass `dir' to the completion functions.
12406
124072008-04-20 Chong Yidong <cyd@stupidchicken.com>
12408
12409 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
12410
124112008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
12412
12413 * keyboard.c (Vpre_help_message): Remove.
12414 (show_help_echo): Remove default C code.
12415
12416 * dired.c (directory_files_internal, file_name_completion):
12417 Only call ENCODE_FILE if the string is indeed decoded.
12418
124192008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12420
12421 * Makefile.in (TOOLKIT_DEFINES): Remove.
12422 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
12423
124242008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12425
12426 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
12427 (mactoolbox.o): New target.
12428
12429 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
12430 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
12431
12432 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
12433 Use mac_set_frame_window_background instead of XSetWindowBackground.
12434 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
12435 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
12436 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
12437 instead of SetWindowTitleWithCFString.
12438 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
12439 Move function to mactoolbox.c.
12440 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
12441 Use mac_set_window_modified instead of SetWindowModified.
12442 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
12443 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
12444 (Fx_focus_frame): Use mac_front_non_floating_window instead of
12445 FrontNonFloatingWindow. Use mac_activate_window instead of
12446 ActivateWindow. Use mac_active_non_floating_window instead of
12447 ActiveNonFloatingWindow.
12448 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
12449 Use mac_show_hourglass and mac_hide_hourglass.
12450 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
12451 instead of GetGlobalMouse.
12452 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
12453 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
12454 Use mac_bring_window_to_front instead of BringToFront.
12455 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
12456 mactoolbox.c.
12457 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
12458 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
12459 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
12460 mactoolbox.c.
12461
12462 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
12463 (XtPointer): Move typedef from macmenu.c.
12464 (enum button_type): Move enum from macmenu.c.
12465 (widget_value): Move typedef from macmenu.c.
12466 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
12467 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12468 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12469 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12470 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12471 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12472 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12473 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
12474 (Selection): Move typedef from macselect.c.
12475 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
12476 macterm.c.
12477 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
12478 (mac_is_window_collapsed, mac_bring_window_to_front)
12479 (mac_send_window_behind, mac_hide_window, mac_show_window)
12480 (mac_collapse_window, mac_front_non_floating_window)
12481 (mac_active_non_floating_window, mac_activate_window)
12482 (mac_move_window_structure, mac_move_window, mac_size_window)
12483 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
12484
12485 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
12486 (enum mac_menu_kind): Move enum to mactoolbox.c.
12487 (min_menu_id): Move variable to mactoolbox.c.
12488 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
12489 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
12490 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
12491 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
12492 [TARGET_API_MAC_CARBON]: Likewise.
12493 (XtPointer): Move typedef to macgui.h.
12494 (enum button_type): Move enum to macgui.h.
12495 (widget_value): Move typedef to macgui.h.
12496 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12497 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12498 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12499 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12500 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12501 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12502 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
12503 (popup_activated_flag): Make variable non-static.
12504 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
12505 (add_menu_item, fill_menu, dispose_menus):
12506 Move functions to mactoolbox.c.
12507 (restore_show_help_function, menu_target_item_handler)
12508 (install_menu_target_item_handler, mac_handle_dialog_event)
12509 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
12510 [TARGET_API_MAC_CARBON]: Likewise.
12511 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
12512 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12513 (find_and_call_menu_selection, name_is_separator): Make function
12514 non-static.
12515 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
12516 to mactoolbox.c.
12517 (set_frame_menubar): Don't call install_menu_quit_handler.
12518 (menu_item_selection): New variable.
12519 (mac_menu_show): Use create_and_show_popup_menu.
12520 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
12521 selection but set variable menu_item_selection. All uses changed.
12522 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
12523 Call install_menu_quit_handler. Move to mactoolbox.c.
12524
12525 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
12526 (Selection): Move typedef to macgui.h.
12527 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
12528 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
12529 Make variables non-static.
12530 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12531 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
12532 Make functions non-static.
12533 (Vmac_service_selection) [MAC_OSX]: Likewise.
12534 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
12535 (mac_valid_selection_target_p, mac_clear_selection)
12536 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12537 (mac_put_selection_value, mac_selection_has_target_p)
12538 (mac_get_selection_value, mac_get_selection_target_list)
12539 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
12540 Move functions to mactoolbox.c.
12541 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
12542 Likewise.
12543 (copy_scrap_flavor_data, mac_handle_service_event)
12544 (install_service_handler) [MAC_OSX]: Likewise.
12545 (syms_of_macselect) <Vmac_dnd_known_types>:
12546 Use mac_dnd_default_known_types.
12547
12548 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
12549 Move to mactoolbox.c.
12550 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
12551 (Fx_selection_owner_p): Add EXFUN.
12552 (install_window_handler, remove_window_handler, XSetWindowBackground):
12553 Remove externs.
12554 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
12555 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
12556 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
12557 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
12558 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
12559 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
12560 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
12561 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
12562 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
12563 (create_and_show_popup_menu, mac_get_selection_from_symbol)
12564 (mac_valid_selection_target_p, mac_clear_selection)
12565 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12566 (mac_put_selection_value, mac_selection_has_target_p)
12567 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
12568 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
12569 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
12570 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12571 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
12572 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12573 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
12574 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12575 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12576
12577 * mactoolbox.c: New file.
12578
125792008-04-18 Jason Rumney <jasonr@gnu.org>
12580
12581 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
12582
125832008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12584
12585 * character.c (Fmultibyte_char_to_unibyte):
12586 Return latin1 chars unchanged.
12587
12588 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
12589 relocated if it points to `name'.
12590
125912008-04-17 Kenichi Handa <handa@m17n.org>
12592
12593 * data.c (Faset): Allow setting a multibyte character in an
12594 ASCII-only unibyte string.
12595
12596 * lisp.h (STRING_SET_MULTIBYTE): New macro.
12597
125982008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
12599
12600 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
12601 done in config.h.
12602
126032008-04-16 Juanma Barranquero <lekktu@gmail.com>
12604
12605 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
12606 (Fchar_direction): Add usage in the docstring.
12607
126082008-04-15 Chong Yidong <cyd@stupidchicken.com>
12609
12610 * keyboard.c (read_key_sequence): Remove always-true checks.
12611
126122008-04-14 Jason Rumney <jasonr@gnu.org>
12613
12614 * w32font.c (w32font_open_internal): Set max_bounds.descent in
12615 compatibility struct, for better underline positioning.
12616
126172008-04-13 David Hansen <david.hansen@gmx.net>
12618
12619 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
12620 string.
12621
126222008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
12623
12624 * m/hp800.h (XUINT, XSET): Remove.
12625
126262008-04-12 Juanma Barranquero <lekktu@gmail.com>
12627
12628 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
12629 previous change.
12630
126312008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
12632
12633 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
12634 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
12635
126362008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12637
12638 * keymap.h (map_keymap_canonical): Declare.
12639 * xmenu.c (single_keymap_panes): Use it.
12640
126412008-04-11 Glenn Morris <rgm@gnu.org>
12642
12643 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
12644 set the target's value to that of the alias.
12645
126462008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12647
12648 * term.c (set_tty_color_mode): Left over typo.
12649
126502008-04-10 Michael Albinus <michael.albinus@gmx.de>
12651
12652 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
12653 only after check for file name handler functions. Signal, when
12654 native functionality is not supported.
12655 (syms_of_fileio): Declare it unconditionally.
12656
126572008-04-10 Jason Rumney <jasonr@gnu.org>
12658
12659 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
12660 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
12661
12662 * w32.c (logon_network_drive): Also logon to remote drives that
12663 are mapped to drive letters.
12664
126652008-04-10 Glenn Morris <rgm@gnu.org>
12666
12667 * xdisp.c (truncate-partial-width-windows): Doc fix.
12668
126692008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
12670
12671 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
12672 Move functions to minibuffer.el.
12673 (syms_of_fileio): Don't declare them.
12674
126752008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12676
12677 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
12678 (syms_of_minibuf): Remove its initialization.
12679
12680 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
12681
126822008-04-09 Juanma Barranquero <lekktu@gmail.com>
12683
12684 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
12685
126862008-04-09 Jason Rumney <jasonr@gnu.org>
12687
12688 * makefile.w32-in (distclean): Delete makefile too.
12689 (maintainer-clean): New target.
12690
12691 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
12692
12693 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
12694 for new font backend and composite cases.
12695
126962008-04-09 Jan Djärv <jan.h.d@swipnet.se>
12697
12698 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
12699 Most of the code moved to run_timers.
12700 (do_pending_atimers): Call run_timers.
12701 (run_timers): New function.
12702
12703 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
12704 run atimers.
12705
12706 * process.c (wait_reading_process_output): The same as above.
12707
127082008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12709
12710 * minibuf.c (last_exact_completion): Remove variable.
12711 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
12712 (complete_and_exit_1, complete_and_exit_2)
12713 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
12714 (Fdisplay_completion_list, display_completion_list_1)
12715 (Fminibuffer_completion_help, Fself_insert_and_exit)
12716 (Fexit_minibuffer, Fminibuffer_message): Move functions to
12717 minibuffer.el.
12718 (syms_of_minibuf): Remove corresponding initializations.
12719
12720 * keyboard.c (Qdeactivate_mark): New var.
12721 (command_loop_1): Use it to call `deactivate-mark'.
12722 (syms_of_keyboard): Initialize it.
12723
12724 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
12725 to another frame.
12726 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
12727 Don't call set_tty_color_mode.
12728 (store_frame_param): Reset previous_frame rather than call
12729 set_tty_color_mode.
12730 * term.c (set_tty_color_mode): Rewrite.
12731 * dispextern.h (set_tty_color_mode): New type.
12732 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
12733
127342008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
12735
12736 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
12737 for generic chars, which do not exist any more in emacs-unicode.
12738
127392008-04-08 Michael Albinus <michael.albinus@gmx.de>
12740
12741 * coding.c (detect_coding_emacs_mule)
12742 (Ffind_operation_coding_system): Fix typo.
12743
127442008-04-08 Jason Rumney <jasonr@gnu.org>
12745
12746 * w32uniscribe.c (SNAME): Extract only symbol name.
12747
12748 * w32font.h (struct w32_metric_cache): New struct.
12749 (w32font_info): Use it.
12750 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
12751 (CACHE_BLOCKSIZE): New constants.
12752
12753 * w32font.c (Qja, Qko, Qzh): New symbols.
12754 (syms_of_w32font): Initialise them.
12755 (font_matches_spec): Use them to filter by language.
12756 (recompute_cached_metrics): Remove function.
12757 (compute_metrics, clear_cached_metrics): New functions.
12758 (w32font_encode_char): Use them to manage metric cache.
12759 (w32font_text_extents): Cache metrics for all glyphs on demand.
12760 Delay converting glyph indices to WORD until needed.
12761 (w32font_open_internal): Initialize metric cache to empty.
12762 (registry_to_w32_charset): Charset should always be a symbol.
12763 (fill_in_logfont, list_all_matching_fonts): Family should
12764 always be a symbol.
12765
127662008-04-06 Jason Rumney <jasonr@gnu.org>
12767
12768 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
12769 Give up if glyph indices not supported. Use uniscribe obtained
12770 ABC widths for individual metrics. Map glyph clusters back to
12771 characters using fClusterStart flag. Return number of glyphs
12772 produced, not chars processed.
12773 (uniscribe_shape): Map char at FROM to current glyph.
12774
127752008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12776
12777 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
12778 Use SetMenuItemHierarchicalMenu.
12779
127802008-04-05 Jason Rumney <jasonr@gnu.org>
12781
12782 * image.c (pbm_load): Allow color values up to 65535.
12783 Throw an error if max_color_idx is outside the supported range.
12784 Report an error when image size is invalid.
12785 Read two bytes at a time when raw images have max_color_idx above 255.
12786
127872008-04-05 Eli Zaretskii <eliz@gnu.org>
12788
12789 * w32.c (readdir): If FindFirstFile/FindNextFile return in
12790 cFileName a file name that includes `?' characters, use the 8+3
12791 alias in cAlternateFileName instead.
12792
127932008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
12794
12795 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
12796 append "CCL: Quitted" when the CCL program is quitted.
12797 (setup_ccl_program): Initialize ccl->quit_silently to zero.
12798
12799 * ccl.h (struct ccl_program): New member quit_silently.
12800
128012008-04-05 Chong Yidong <cyd@stupidchicken.com>
12802
12803 * search.c (compile_pattern_1): Treat non-nil and non-string of
12804 search-spaces-regexp as nil.
12805
12806 * minibuf.c (Fassoc_string): Tweak docstring.
12807
128082008-04-05 Eli Zaretskii <eliz@gnu.org>
12809
12810 * dired.c (Ffile_attributes): Support inode numbers wider than 32
12811 bits. Remove ugly WINDOWSNT-specific kludge introduced on
12812 2008-03-14 to force inode be positive.
12813
12814 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
12815 _S_* ones, since we now use our own sys/stat.h.
12816 (stat, fstat): Don't mangle the inode number.
12817 (init_user_info): Don't restrict UID and GID to 0-60000 range.
12818
128192008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
12820
12821 * frame.h (struct frame): Give one more bit to `visible' since we use
12822 values larger than 1 to indicate obscured frames on ttys.
12823
12824 * keymap.c (Qkeymap_canonicalize): New var.
12825 (Fmap_keymap_internal): New fun.
12826 (describe_map): Use keymap-canonicalize.
12827
12828 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
12829 (Fundo_boundary): Set them.
12830 (syms_of_undo): Initialize them.
12831 (record_point): Use them instead of last_point_position*.
12832 (last_undo_buffer): Change type.
12833
128342008-04-04 Jason Rumney <jasonr@gnu.org>
12835
12836 * w32font.c (w32font_text_extents): Use font's ascent and descent.
12837 (recompute_cached_metrics): Don't set ascent and descent per char.
12838
12839 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
12840 (uniscribe_check_otf): Add GC protection before consing.
12841 Rearrange loop for counting features.
12842
128432008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
12844
12845 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
12846 buffer with byte-size of source buffer.
12847
128482008-04-03 Chong Yidong <cyd@stupidchicken.com>
12849
12850 * callint.c (Fcall_interactively): Handle temporary region even
12851 when shift-select-mode is off.
12852
128532008-04-03 Jason Rumney <jasonr@gnu.org>
12854
12855 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
12856
128572008-04-03 Kenichi Handa <handa@m17n.org>
12858
12859 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
12860 (CATEGORY_MASK_UTF_16): Likewise.
12861 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
12862 binary file.
12863 (detect_coding): Add null-byte detection for a binary file.
12864 (detect_coding_system): Likewise.
12865
128662008-04-03 Jason Rumney <jasonr@gnu.org>
12867
12868 * w32uniscribe.c: New file.
12869
12870 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
12871
12872 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
12873
12874 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
12875 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
12876 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
12877 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
12878 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
12879 (Qphonetic): New symbols.
12880 (syms_of_w32font): Initialize them.
12881 (font_supported_scripts): Use them.
12882 (w32font_list_family): List all charsets.
12883 (w32font_text_extents, recompute_cached_metrics): Fix metric
12884 calculations.
12885 (w32_enumfont_pattern_entity): Make full_type a DWORD.
12886 Give opentype fonts their own format.
12887 (font_matches_spec): New arguments backend and logfont.
12888 Handle :otf spec for uniscribe backend.
12889 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
12890 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
12891
12892 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
12893 font backend.
12894 (globals_of_w32fns): Initialize uniscribe font backend.
12895
12896 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
12897 dependencies.
12898 (w32uniscribe.$(O)): New file to build.
12899 (FONT_OBJ): Include w32uniscribe.$(O).
12900 (LIBS): Add uniscribe libraries.
12901
12902 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
12903
129042008-04-02 Chong Yidong <cyd@stupidchicken.com>
12905
12906 * callint.c (Vshift_select_mode): New var.
12907 (Finteractive): Document new ^ spec.
12908 (Fcall_interactively): Call handle-shift-selection if the ^ spec
12909 is present.
12910
12911 * keyboard.c (Vthis_command_keys_shift_translated): New var.
12912 (command_loop_1): Avoid running the direct display versions of
12913 forward-char and backward-char if shift-selection may occur.
12914 (read_key_sequence): Set Vthis_command_keys_shift_translated if
12915 shift-translation takes place.
12916
12917 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
12918 avoid clobbering by define-minor-mode.
12919
12920 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
12921 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
12922
12923 * syntax.c (Fforward_word): Add ^ interactive spec.
12924
12925 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
12926 (Fscroll_right): Add ^ interactive spec.
12927
129282008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
12929
12930 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
12931
12932 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
12933
12934 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
12935
129362008-03-31 Juri Linkov <juri@jurta.org>
12937
12938 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
12939
129402008-03-30 Jan Djärv <jan.h.d@swipnet.se>
12941
12942 * gtkutil.c (xg_set_geometry): Fix indentation.
12943 (xg_resize_outer_widget): Remove.
12944 (x_wm_size_hint_off): Fix indentation.
12945 (xg_frame_set_char_size): Call flush_and_sync after
12946 gtk_window_resize.
12947 (x_wm_set_size_hint): Pass NULL as geometry window to
12948 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
12949 Add menu bar and tool bar height to base height.
12950 (xg_update_frame_menubar, free_frame_menubar)
12951 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
12952 (update_frame_tool_bar, free_frame_tool_bar):
12953 Change xg_resize_outer_widget to xg_frame_set_char_size.
12954
129552008-03-30 Michael Albinus <michael.albinus@gmx.de>
12956
12957 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
12958 (Fdbus_call_method): New parameter TIMEOUT.
12959 (dbus-send-signal): Optimize UNGCPRO call.
12960
129612008-03-29 Juri Linkov <juri@jurta.org>
12962
12963 * window.c (Fdisplay_buffer): Move call to
12964 Vsplit_window_preferred_function out of conditions that check
12965 if window is eligible for vertical splitting.
12966 When Vsplit_window_preferred_function is non-nil, call it and use
12967 its non-nil return value as window. Otherwise, continue doing
12968 vertical splitting using Fsplit_window with arg horflag=nil.
12969 (syms_of_window) <Vsplit_window_preferred_function>: Change the
12970 default value from `split-window' to nil.
12971
129722008-03-29 Juri Linkov <juri@jurta.org>
12973
12974 * callint.c (Fcall_interactively): Revert 2008-03-16 change
12975 for interactive code letters 'b' and 'B'.
12976
129772008-03-29 Eli Zaretskii <eliz@gnu.org>
12978
12979 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
12980 multibyte string.
12981
129822008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
12983
12984 * keyboard.c (pending_funcalls): New var.
12985 (timer_check): Run it.
12986 (syms_of_keyboard): Initialize it.
12987 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
12988 (Vdelete_terminal_functions): New vars.
12989 (syms_of_terminal): Initialize them.
12990 (Fdelete_terminal): Run delete-terminal-functions.
12991 * xdisp.c (safe_eval): Rewrite.
12992 (safe_call2): New fun.
12993 * frame.c (Qdelete_frame_functions): New var.
12994 (syms_of_frame): Initialize it.
12995 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
12996 * lisp.h (safe_call2, pending_funcalls): Declare.
12997
129982008-03-28 Andreas Schwab <schwab@suse.de>
12999
13000 * indent.c (Fmove_to_column): Move declaration before statements.
13001
130022008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13003
13004 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13005 (struct frame): Use bit fields for boolean vars.
13006
13007 * process.c (server_accept_connection): Simplify naming.
13008 (emacs_get_tty_pgrp): Use SDATA.
13009
13010 * coding.c (decode_coding_object): Fix last change.
13011
130122008-03-27 Jason Rumney <jasonr@gnu.org>
13013
13014 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13015
130162008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13017
13018 * charset.c (Fdefine_charset_internal): Change the way of
13019 registering charsets in Vcharset_order_list.
13020 (syms_of_charset): Make the charset `eight-bit' supplementary.
13021
130222008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13023
13024 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13025 operations, to avoid having the difference between pointers
13026 overflow.
13027
130282008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13029
13030 * indent.c (check_display_width): New fun.
13031 (scan_for_column): Use it.
13032
13033 * data.c (syms_of_data): Mark most-positive-fixnum and
13034 most-negative-fixnum as constants.
13035
13036 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13037
13038 * indent.c (scan_for_column): Extract from current_column_1.
13039 Merge with the same code from Fmove_to_column.
13040 (current_column_1, Fmove_to_column): Use it.
13041
130422008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13043
13044 * keymap.c (map_keymap_internal): New fun.
13045 (map_keymap): Use it.
13046 (Fmap_keymap_internal): New fun.
13047 (Fmap_keymap): Remove left-out test from before make_save_value.
13048
13049 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13050
13051 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13052 Use XCAR/XCDR.
13053
13054 * process.h (struct Lisp_Process): Remove filter_multibyte.
13055 * process.c (QCfilter_multibyte): Remove.
13056 (setup_process_coding_systems): Don't use filter_multibyte.
13057 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13058 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13059 (Fset_process_filter_multibyte): Change the coding-system to
13060 approximate the previous behavior.
13061 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13062 coding-system.
13063
13064 * coding.c (decode_coding_object): When not decoding into a buffer,
13065 obey the coding system's preference of (uni|multi)byte.
13066
130672008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13068
13069 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13070 every char is changed and has a different byte-length.
13071 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13072 Fix int -> EMACS_INT.
13073
130742008-03-23 David Hansen <david.hansen@gmx.net>
13075
13076 * dbusbind.c (xd_read_message): Remove extra copying of message
13077 strings. Check for NULL `interface' or `member'.
13078
130792008-03-22 Eli Zaretskii <eliz@gnu.org>
13080
13081 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13082 cFileName a file name that includes `?' characters, use the 8+3
13083 alias in cAlternateFileName instead.
13084
130852008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13086
13087 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13088
130892008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13090
13091 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13092 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13093 work on current_buffer only instead (that was already the case
13094 for some of the code anyway).
13095 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13096 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13097 (SET_PT, SET_PT_BOTH): Adjust.
13098 * intervals.h (set_point, temp_set_point, set_point_both)
13099 (temp_set_point_both): Remove redundant declarations.
13100
131012008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13102
13103 * fileio.c (Finsert_file_contents):
13104 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13105 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13106 when buffer != current_buffer anyway.
13107
131082008-03-20 Andreas Schwab <schwab@suse.de>
13109
13110 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13111 as default.
13112
131132008-03-19 Jason Rumney <jasonr@gnu.org>
13114
13115 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13116 (syms_of_w32fns): Initialize them.
13117 (HOURGLASS_ID): New constant.
13118 (x_window_to_frame): Don't check hourglass_window.
13119 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13120 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13121 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13122 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13123 Only change the cursor if hourglass is not active.
13124 (Fx_create_frame): Initialize frame's current_cursor.
13125 (hourglass_atimer): Remove.
13126 (hourglass_started): New function.
13127 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13128 (show_hourglass): Adapt to w32, changing argument to frame.
13129
13130 * w32term.h (struct w32_output): Remove hourglass_window.
13131 Add current_cursor.
13132
13133 * eval.c (call_debugger, Fsignal):
13134 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13135 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13136 (Fexecute_extended_command, cancel_hourglass_unwind):
13137 * minibuf.c (read_minibuf):
13138 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13139
131402008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13141
13142 * window.c (run_funs): New fun.
13143 (run_window_configuration_change_hook): Use it to run the buffer-local
13144 and the global part of the hook.
13145
13146 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13147 (unwind_format_mode_line): Restore selected window.
13148 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13149
131502008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13151
13152 * editfns.c (Fchar_equal): Check they are valid characters.
13153
13154 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13155
131562008-03-17 Andreas Schwab <schwab@suse.de>
13157
13158 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13159 against a charset.
13160
13161 * lisp.h (Fbuffer_list): Declare.
13162
131632008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13164
aac0c6e3
MR
13165 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13166 handlebox_widget is != 0.
13167
131682008-03-16 Juri Linkov <juri@jurta.org>
13169
13170 * callint.c (Fcall_interactively): For interactive code letters
13171 'b' and 'B' put the buffer list into the list of default "future"
13172 values of the minibuffer.
13173
131742008-03-16 Andreas Schwab <schwab@suse.de>
13175
13176 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13177 modifiers.
13178
13179 * regex.c (re_match_2_internal): Correct matching of a charset
13180 against latin-1 characters.
13181
131822008-03-16 Kenichi Handa <handa@m17n.org>
13183
13184 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13185 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13186 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13187 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13188 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13189 CHAR_STRING_ADVANCE.
13190 (produce_chars): Fix for the case that the source and the
13191 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13192 instead of CHAR_STRING_ADVANCE.
13193 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13194 STRING_CHAR_ADVANCE.
13195
131962008-03-15 Andreas Schwab <schwab@suse.de>
13197
13198 * regex.c (re_match_2_internal): Correct matching of eight bit
13199 characters in unibyte strings.
13200
132012008-03-15 Martin Rudalics <rudalics@gmx.at>
13202
13203 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13204 at end of range when it coincides with the end of the buffer.
13205
132062008-03-14 Eli Zaretskii <eliz@gnu.org>
13207
13208 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13209
13210 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13211
132122008-03-14 Jason Rumney <jasonr@gnu.org>
13213
13214 * editfns.c (initial_tz): New variable.
13215 (syms_of_editfns): Initialize it.
13216 (Fset_time_zone_rule): Set it when first called.
13217 Use it when TZSTRING is nil.
13218
13219 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13220 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13221 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13222 (globals_of_w32fns): Initialize them.
13223 (compute_tip_xy): Use them to position tooltips.
13224
132252008-03-14 Glenn Morris <rgm@gnu.org>
13226
13227 * emacs.c (main): Revert previous change.
13228 (standard_args): Revert -internal-script back to -scriptload,
13229 and remove the long-option form.
13230
132312008-03-13 Glenn Morris <rgm@gnu.org>
13232
13233 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13234 Remove option -enable-font-backend.
13235
132362008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13237
13238 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13239
132402008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13241
13242 * xterm.c (x_connection_closed): For GTK: If this is the last
13243 terminal just exit without closing the display.
13244
132452008-03-11 Jason Rumney <jasonr@gnu.org>
13246
13247 * w32font.c (w32font_full_name): Use floor to round.
13248
f0131492 132492008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13250
13251 * sound.c (alsa_configure): Declare vol at beginning of block.
13252
13253 * fontset.c (Ffontset_info): Remove extra semicolon.
13254
132552008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13256
13257 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13258 size of resulting string.
13259
132602008-03-10 Jason Rumney <jasonr@gnu.org>
13261
13262 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13263
132642008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13265
13266 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13267 Don't pretend as if characters with display property haven't been
13268 consumed for string-replacing-string case.
13269
132702008-03-08 Kim F. Storm <storm@cua.dk>
13271
13272 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13273 (get_next_display_element, next_element_from_string)
13274 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13275
132762008-03-08 Andreas Schwab <schwab@suse.de>
13277
13278 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13279
132802008-03-06 Jason Rumney <jasonr@gnu.org>
13281
13282 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13283 when charset not specified. Only translate ANSI to unicode when
13284 font_type is truetype.
13285 (w32font_coverage_ok): New function.
13286 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13287
132882008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13289
13290 * lread.c (Fread_char): Resolve modifiers.
13291 (Fread_char_exclusive): Likewise.
13292
13293 * character.c (char_resolve_modifier_mask): New function.
13294 (char_string): Use char_resolve_modifier_mask.
13295 (Fchar_resolve_modifiers): New function.
13296 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13297 function.
13298
132992008-03-04 Jason Rumney <jasonr@gnu.org>
13300
13301 * makefile.w32-in: Always include w32font.c in the build.
13302 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13303
133042008-03-04 Andreas Schwab <schwab@suse.de>
13305
13306 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13307 (versionclean): Likewise.
13308
133092008-03-04 Juanma Barranquero <lekktu@gmail.com>
13310
13311 * .cvsignore: Add oo.
13312
133132008-03-03 Andreas Schwab <schwab@suse.de>
13314
13315 * coding.c (decode_coding_object): Inhibit gap shrinking while
13316 decoding in place.
13317
133182008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13319
13320 * w32term.c: Remove unused include "gnu.h".
13321 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13322
13323 * gnu.h: Rename to ...
13324 * emacs-icon.h: ... this.
13325 * xterm.c: Use emacs-icon.h instead of gnu.h.
13326 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13327
133282008-03-03 Juanma Barranquero <lekktu@gmail.com>
13329
13330 * w32font.c: Include math.h.
13331
133322008-03-03 Jason Rumney <jasonr@gnu.org>
13333
13334 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13335 Compute options separately.
13336 (w32font_open_internal): Set glyph_idx before caching metrics.
13337
13338 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13339 Define if system headers don't.
13340 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13341 (w32font_encode_char): Don't declare here.
13342
13343 * w32font.c (Quniscribe, QCformat): New symbols.
13344 (syms_of_w32font): Define them.
13345 (w32font_has_char): Indicate uncertainty.
13346 (w32font_encode_char): Encode as glyph point. Make static.
13347 (recompute_cached_metrics): New function.
13348 (w32font_open_internal): Use it. Set font to use glyph points
13349 initially. Set format based on type of font.
13350 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13351 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13352 on it. Set format based on information available here.
13353 (add_font_entity_to_list): Identify backend based on opentype_only.
13354
133552008-03-02 Andreas Schwab <schwab@suse.de>
13356
13357 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13358
13359 * coding.c (decode_coding_big5, produce_chars):
13360 Fix typos in last change.
13361
133622008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13363
13364 * gnu.h: New icon.
13365
133662008-03-02 Kenichi Handa <handa@m17n.org>
13367
13368 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13369 `dos', don't decode '\r' if that is the last in the source.
13370 (decode_coding_utf_16, decode_coding_emacs_mule)
13371 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13372 (decode_coding_raw_text, decode_coding_charset): Likewise.
13373 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13374
133752008-03-01 Jason Rumney <jasonr@gnu.org>
13376
13377 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13378
133792008-03-01 Kim F. Storm <storm@cua.dk>
13380
13381 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13382
133832008-03-01 Jason Rumney <jasonr@gnu.org>
13384
13385 * w32font.c (w32font_full_name): New function.
13386 (w32font_open_internal): Use it.
13387
133882008-03-01 Kim F. Storm <storm@cua.dk>
13389
13390 * dispnew.c (line_draw_cost): Fix invalid glyph check.
13391
133922008-03-01 Jason Rumney <jasonr@gnu.org>
13393
13394 * font.c (font_unparse_fcname): Increase len when style is a symbol.
13395
133962008-03-01 Jan Djärv <jan.h.d@swipnet.se>
13397
13398 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
13399 xg_frame_resized when the event is for the edit widget.
13400
13401 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
13402
13403 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
13404 set_char_size.
13405 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
13406 operations on widgets here. Just set frame size if needed.
13407 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
13408 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
13409 (x_wm_set_size_hint): Set size hints on the edit widget only, not
13410 the whole frame.
13411 (xg_create_tool_bar): Move attachment of the tool bar to
13412 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
13413 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
13414
134152008-03-01 Jason Rumney <jasonr@gnu.org>
13416
13417 * w32fns.c (w32_msg_pump): Disable debug code.
13418
134192008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13420
13421 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
13422
134232008-02-29 Chong Yidong <cyd@stupidchicken.com>
13424
13425 * xdisp.c (next_overlay_string): Don't set
13426 overlay_strings_at_end_processed_p if we're currently reading from
13427 a display string.
13428
134292008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
13430
13431 * xdisp.c (get_overlay_strings_1): Fix typo.
13432
134332008-02-29 Chong Yidong <cyd@stupidchicken.com>
13434
13435 * xdisp.c (get_overlay_strings_1): Add missing argument type.
13436
134372008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
13438
13439 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
13440
13441 * xdisp.c (display_mode_element): Cancel the previous change.
13442 (decode_mode_spec): Likewise.
13443 (handle_auto_composed_prop): Don't make composition if it->string
13444 is a string.
13445
134462008-02-27 Kim F. Storm <storm@cua.dk>
13447
13448 * lisp.h (GLYPH): Change type from int to struct with separate char
13449 and face_id members.
13450 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
13451 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
13452 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
13453 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
13454 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
13455 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
13456 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
13457 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
13458 handle new Lisp glyph code encoding, either an integer or a cons.
13459
13460 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
13461 (GLYPH_ALIAS): Delete.
13462 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
13463 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
13464 (GLYPH_FROM_CHAR): Replace macro by ...
13465 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
13466
13467 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
13468 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
13469 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
13470 (GLYPH_INVALID_P): New macro.
13471 (spec_glyph_lookup_face): Update prototype.
13472
13473 * dispnew.c (line_draw_cost): Adapt to new glyph type.
13474 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
13475 new glyph code encoding.
13476 (spec_glyph_lookup_face): No return value; update passed glyph instead.
13477 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
13478
13479 * xdisp.c (get_next_display_element, next_element_from_display_vector):
13480 Adapt to new glyph type and new glyph code encoding.
13481
13482 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
13483
13484 * indent.c (current_column, current_column_1, Fmove_to_column)
13485 (compute_motion): Adapt to new glyph code encoding.
13486
13487 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
13488
134892008-02-27 Chong Yidong <cyd@stupidchicken.com>
13490
13491 * process.c (wait_reading_process_output): Check for window
13492 changes caused by timers.
13493 Suggested by Johan Bockgård.
13494
134952008-02-27 Glenn Morris <rgm@gnu.org>
13496
13497 * emacs.c (USAGE1): Add `--disable-font-backend'.
13498
134992008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
13500
13501 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
13502 is made to the buffer.
13503
135042008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
13505
13506 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
13507 (face_at_string_position):
13508 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
13509 (face_at_string_position):
13510 * xdisp.c (display_string, next_overlay_change):
13511 * buffer.h (overlays_at):
13512 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
13513 Update callers.
13514
135152008-02-26 Chong Yidong <cyd@stupidchicken.com>
13516
13517 * editfns.c (Fformat): Doc fix.
13518
135192008-02-26 Juanma Barranquero <lekktu@gmail.com>
13520
13521 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
13522 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
13523 (Ffont_otf_alternates, Fquery_font): Doc fixes.
13524
135252008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13526
13527 * buffer.c (Fbuffer_swap_text): New function.
13528 (syms_of_buffer): Defsubr it.
13529
135302008-02-25 Chong Yidong <cyd@stupidchicken.com>
13531
13532 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
13533
135342008-02-25 Jason Rumney <jasonr@gnu.org>
13535
13536 * w32font.c (w32font_draw): Draw one character at a time when padding.
13537
135382008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13539
13540 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
13541 Handle a nil arg. Use run_window_configuration_change_hook.
13542 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
13543 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
13544 Use run_window_configuration_change_hook.
13545
135462008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13547
13548 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
13549 1-pixel width.
13550
135512008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13552
13553 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
13554 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
13555 if the glyph in the font is zero pixel with.
13556
13557 * dispextern.h (struct glyph_string): New member padding_p.
13558
13559 * w32font.c (w32font_draw): Pay attention to s->padding_p.
13560
13561 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
13562
13563 * xfont.c (xfont_draw): Pay attention to s->padding_p.
13564
13565 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
13566
13567 * font.c: If the font driver doesn't have `shape' function, return Qnil.
13568
135692008-02-25 Jason Rumney <jasonr@gnu.org>
13570
13571 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
13572
135732008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
13574
13575 Allow fine-grained image-cache flushing.
13576 * dispextern.h (struct image): Add `dependencies' field.
13577 (clear_image_caches): Change arg to Lisp_Object.
13578 * image.c (make_image): Initialize `dependencies' field.
13579 (clear_image_cache): Change arg to allow fine-grained flushing.
13580 Perform the flush even if image-cache-eviction-delay is nil.
13581 (clear_image_caches): Change arg to Lisp_Object.
13582 (Fclear_image_cache): Expand meaning of the argument.
13583 (mark_image): Mark `dependencies' field.
13584 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
13585 (lface_hash): Use XHASH rather than XFASTINT.
13586 (face_at_buffer_position): Fix int -> EMACS_INT position.
13587 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
13588 (select_frame_for_redisplay): Remove code duplication.
13589 (redisplay_internal): Adapt arg to call to clear_image_caches.
13590
135912008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
13592
13593 * s/vms4-0.h:
13594 * s/vms4-2.h:
13595 * s/vms4-4.h:
13596 * s/vms5-5.h: Remove, unused.
13597
13598 * s/irix5-2.h:
13599 * s/irix6-0.h:
13600 * s/riscos5.h:
13601 * s/mach-bsd4-3.h:
13602 * m/mips4.h: Remove files for obsolete systems.
13603
13604 * Makefile.in:
13605 * filelock.c:
13606 * unexmips.c:
13607 * m/hp9000s300.h:
13608 * m/iris4d.h:
13609 * s/aix3-1.h:
13610 * s/hpux.h:
13611 * s/msdos.h:
13612 * s/usg5-0.h:
13613 * s/usg5-2-2.h:
13614 * s/usg5-2.h:
13615 * s/usg5-3.h: Remove references to obsolete variables.
13616
13617 * s/irix5-0.h: Remove, move all the contents ...
13618 * s/irix6-5.h: ... here. Simplify.
13619 * config.in: Regenerate.
13620
136212008-02-24 Jason Rumney <jasonr@gnu.org>
13622
13623 * w32term.c (x_draw_glyph_string_background): Clear the background
13624 manually when cleartype is in use.
13625 (x_draw_glyph_string_foreground): Draw text transparently when
13626 cleartype is in use.
13627
13628 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
13629 a font into it unless we have to.
13630
136312008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13632
13633 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
13634 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 13635
aac0c6e3
MR
136362008-02-18 Jason Rumney <jasonr@gnu.org>
13637
13638 * w32fns.c (Fw32_shell_execute): Encode parameters.
13639
136402008-02-09 Eli Zaretskii <eliz@gnu.org>
13641
13642 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
13643
136442008-02-05 Juanma Barranquero <lekktu@gmail.com>
13645
13646 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
13647
136482008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
13649
13650 * xterm.c (x_set_offset): Don't change the gravity if
13651 CHANGE_GRAVITY is -1.
13652
136532008-02-23 Chong Yidong <cyd@stupidchicken.com>
13654
13655 * fileio.c (auto_save_error_occurred): New var.
13656 (auto_save_error): Set it.
13657 (Fdo_auto_save): Don't overwrite the error message if an auto-save
13658 error occurred.
13659
136602008-02-23 Eli Zaretskii <eliz@gnu.org>
13661
13662 * w32.c (globals_of_w32): Add initializations for
13663 g_b_init_get_sid_sub_authority and
13664 g_b_init_get_sid_sub_authority_count.
13665
136662008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
13667
13668 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
13669 (font_parse_xlfd): Use them for sanity check.
13670 (Finternal_set_font_style_table): Make sure the table is bijective.
13671
13672 Consolidate the image_cache to the terminal struct.
13673 * termhooks.h (P_): Remove redundant def.
13674 (struct terminal): New field `image_cache'.
13675 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
13676 of FRAME_X_IMAGE_CACHE.
13677 * xterm.h (struct x_display_info): Remove image_cache field.
13678 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13679 * w32term.h (struct w32_display_info): Remove image_cache field.
13680 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13681 * macterm.h (struct mac_display_info): Remove image_cache field.
13682 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13683 * xterm.c (x_term_init):
13684 * w32term.c (w32_term_init):
13685 * macterm.c (mac_term_init): Set the image_cache in the terminal.
13686 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
13687 Remove declarations.
13688 (clear_image_caches, mark_image_cache): New declarations.
13689 * xfaces.c (clear_face_cache):
13690 * xdisp.c (redisplay_internal): Use clear_image_caches.
13691 * image.c (clear_image_cache): Don't check that a frame is on
13692 a window-system before checking if it shares the same cache.
13693 (clear_image_caches): New function.
13694 (Fclear_image_cache): Use it.
13695 (mark_image): Move from allo.c.
13696 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
13697 * alloc.c (mark_image, mark_image_cache): Move to image.c.
13698 (mark_object): Don't call mark_image_cache for frames.
13699 (mark_terminals): Call mark_image_cache.
13700
13701 * lisp.h (Fdelete_terminal): Declare.
13702
13703 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
13704 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
13705 wrong_type_argument.
13706
137072008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
13708
13709 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
13710 malayalam.el, and tamil.el. Add sinhala.el.
13711
137122008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
13713
13714 * xterm.c (x_connection_closed): Consolidate identical tests.
13715 (x_delete_terminal): Don't crash if called via x_connection_closed.
13716
137172008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
13718
13719 * xdisp.c (decode_mode_spec): New arg string.
13720 (display_mode_element): Adjust for the above change.
13721
137222008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13723
13724 * callint.c (Fcall_interactively): Use AREF.
13725
137262008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
13727
13728 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
13729
137302008-02-18 Jan Djärv <jan.h.d@swipnet.se>
13731
13732 * xfns.c (Fx_show_tip): Set string to " " if empty.
13733
137342008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
13735
13736 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
13737 with Qt.
13738
137392008-02-17 Kenichi Handa <handa@m17n.org>
13740
13741 * ftfont.c (ftfont_shape): Return Lispy number.
13742
13743 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
13744 for GCs.
13745 (Finternal_set_font_selection_order): Call font_update_sort_order
13746 only when enable_font_backend is set.
13747 (realize_x_face): Set face->font_info to that of default face only
13748 when enable_font_backend is set.
13749
13750 * xdisp.c (handle_composition_prop): Set it->c to the fist
13751 character of the composed region.
13752 (fill_composite_glyph_string): Set base_face->font_info to
13753 s->font_info. Get a face for ascii from base_face->ascii_face.
13754 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
13755 with a face already decided.
13756 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
13757 non-negative.
13758 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
13759 call font_prepare_composition unconditionally.
13760
13761 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
13762
13763 * xterm.h (struct x_display_info): New member font.
13764
13765 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
13766 (x_set_mouse_face_gc, x_new_font): Likewise.
13767 (x_term_init): Setup display_info->font.
13768 (x_delete_terminal): Free display_info->font.
13769
13770 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
13771
13772 * ftxfont.c (ftxfont_default_fid): Delete it.
13773 (ftxfont_open): Set xfont->fid to 0.
13774 (ftxfont_end_for_frame): Clear data specific to the frame and the
13775 font-driver.
13776
13777 * xftfont.c (xftfont_default_fid): Delete it.
13778 (xftfont_open): Set xfont->fid to 0.
13779
13780 * fontset.c (FONTSET_OBJLIST): New macro.
13781 (fontset_find_font): Update font-object list of the fontset.
13782 (free_realized_fontset): New function.
13783 (free_face_fontset): Call free_realized_fontset.
13784 (Ffont_info): Call font_close_object only when enable_font_backend
13785 is set.
13786
13787 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
13788 [HAVE_NTGUI]: Include w32term.h.
13789 [MAC_OS]: Include macterm.ch.
13790 (font_otf_ValueRecord): Use make_number.
13791 (font_finish_cache): Fix handling of reference count.
13792 (font_clear_cache): Update num_fonts.
13793 (font_open_entity): Update smallest_char_width and
13794 smallest_font_height of the frame.
13795 (font_close_object): Update num_fonts.
13796 (Fclear_font_cache): Fix finding the target cache data.
13797
137982008-02-16 Glenn Morris <rgm@gnu.org>
13799
13800 * fontset.c (Finternal_char_font): Fix compilation warning.
13801
138022008-02-16 Eli Zaretskii <eliz@gnu.org>
13803
13804 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
13805 instead of char arrays. Enlarge the size of array passed to
13806 get_token_information.
13807
13808 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
13809 warnings.
13810
138112008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
13812
13813 * .gdbinit: Don't set `args', it breaks gdb --args.
13814
138152008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
13816
13817 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
13818 within a narrowed buffer.
13819
138202008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
13821
13822 * coding.c (decode_coding_object, encode_coding_object):
13823 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
13824
138252008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
13826
13827 * coding.c (coding_set_destination): Use BEG_BYTE rather than
13828 hardcoding 1.
13829 (detect_coding_system):
13830 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
13831 (string_char_to_byte, string_byte_to_char, insert_from_gap):
13832 * insdel.c (insert_from_gap):
13833 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
13834 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
13835 (string_to_multibyte):
13836 * character.c (chars_in_text, multibyte_chars_in_text):
13837 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
13838
13839 * character.h (FETCH_STRING_CHAR_ADVANCE)
13840 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
13841 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
13842 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
13843
13844 * casefiddle.c (casify_region): Only call after-change and composition
13845 functions on the part of the region that was changed.
13846
13847 * keyboard.c (read_avail_input):
13848 * frame.c (Fdelete_frame): Call Fdelete_terminal.
13849
138502008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13851
13852 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
13853 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
13854
138552008-02-11 Juanma Barranquero <lekktu@gmail.com>
13856
13857 * w32menu.c (push_submenu_start, push_submenu_end)
13858 (push_left_right_boundary, push_menu_pane, push_menu_item):
13859 * keyboard.c (read_key_sequence): Don't pass args with side effects
13860 to AREF, it fails when compiling with -DENABLE_CHECKING.
13861
138622008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
13863
13864 * Makefile.in (${lispsource}international/charprop.el):
13865 Delete this target.
13866
13867 * search.c (boyer_moore): Fix incorrect synching of the trunk and
13868 emacs-unicode-2.
13869
138702008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
13871
13872 * terminal.c (Fdelete_terminal): Clean up the `force' path.
13873
138742008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13875
13876 * frame.c (Qnoelisp): New symbol.
13877 (syms_of_frame): Initialize it.
13878 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
13879 harmless Elisp code, from a strong `force' from x_connection_closed.
13880 * frame.h (Qnoelisp): Declare.
13881 * xterm.c (x_connection_closed): Pass `noelisp'.
13882
13883 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
13884 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
13885 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
13886 rather than `int' for the type of `type'.
13887
138882008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
13889
13890 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
13891
13892 * Makefile.in (GNUC): Remove support for gcc-1.x.
13893
138942008-02-10 Richard Stallman <rms@gnu.org>
13895
13896 * lisp.h (ASET): Use AREF, not ASLOT.
13897
138982008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
13899
13900 * lisp.h (ASET): Check bounds.
13901
139022008-02-10 Glenn Morris <rgm@gnu.org>
13903
13904 * buffer.c (mode-name): Doc fix.
13905
139062008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13907
13908 * Makefile.in:
13909 * emacs.c:
13910 * gmalloc.c:
13911 * keyboard.c:
13912 * lisp.h:
13913 * m/ibm370aix.h:
13914 * process.c:
13915 * regex.c:
13916 * s/hpux.h:
13917 * sysdep.c:
13918 * sysselect.h:
13919 * systty.h:
13920 * unexec.c:
13921 * w32term.c:
13922 * xsmfns.c:
13923 * xterm.c: Remove code that deals with obsolete variables.
13924
13925 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
13926
13927 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
13928 nothing else needs it anymore.
13929
139302008-02-09 Eli Zaretskii <eliz@gnu.org>
13931
13932 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
13933 instead of unibyte_char_to_multibyte.
13934
139352008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
13936
13937 * s/gnu-linux.h: Remove commented out code.
13938
13939 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
13940
13941 * Makefile.in: Update what RMS says about using autoconf.
13942 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
13943 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
13944 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
13945 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
13946
139472008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
13948
13949 * keymap.c (Fkey_description): Move side effect outside of macro call.
13950
13951 * xfaces.c (Finternal_make_lisp_face):
13952 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
13953
13954 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
13955 (syms_of_fontset): Use ASET.
13956
13957 * fns.c (concat): Move side effect outside of macro call.
13958 (hash_clear): Use ASET.
13959
139602008-02-08 Richard Stallman <rms@gnu.org>
13961
13962 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
13963 If FORCE, and frame has a surrogate minibuffer for another frame,
13964 delete the other frame first.
13965
139662008-02-07 Timo Savola <timo.savola@iki.fi>
13967
13968 * xterm.c (x_detect_focus_change): Handle embed client message.
13969 (handle_one_xevent): Ditto.
13970 (handle_one_xevent): If embedded and we get a button press/release,
13971 request focus.
13972 (xembed_set_info, xembed_send_message): New functions.
13973 (x_make_frame_visible): Call xembed_set_info if embedded.
13974 (x_make_frame_invisible): Call xembed_set_info if embedded.
13975 (x_term_init): Initialize Xatom_XEMBED.
13976 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
13977 (x_iconify_frame): Ditto.
13978
13979 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
13980 (enum xembed_info, enum xembed_message, enum xembed_focus)
13981 (enum xembed_modifier, enum xembed_accelerator): New.
13982 (xembed_set_info, xembed_send_message): Declare.
13983 (FRAME_X_EMBEDDED_P): New.
13984
13985 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
13986 gtk_plug_new.
13987
13988 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
13989 window ID of a frame.
13990 (x_window): Reparent frame if embedded.
13991 (Fx_create_frame): Don't set border width if embedded.
13992
13993 * emacs.c (USAGE3): Add --parent-id.
13994 (standard_args): Ditto.
13995
139962008-02-07 Jan Djärv <jan.h.d@swipnet.se>
13997
13998 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
13999
140002008-02-07 Jim Meyering <meyering@redhat.com>
14001
14002 Use "do...while (0)", not "if (1)...else" in macro definitions.
14003 The latter provokes a warning from gcc about the empty else, when
14004 followed by ";". Also, without that trailing semicolon, it would
14005 silently swallow up any following statement.
14006 * syntax.h (SETUP_SYNTAX_TABLE)
14007 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14008 * buffer.h (DECODE_POSITION): Likewise.
14009 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14010 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14011 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14012 (FETCH_CHAR_ADVANCE): Likewise.
14013 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14014
140152008-02-07 Jim Meyering <meyering@redhat.com>
14016
14017 * lread.c [lint]: Don't include <sys/inode.h>.
14018
140192008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14020
14021 * xselect.c (x_handle_dnd_message):
14022 * xmenu.c (digest_single_submenu, xmenu_show):
14023 * xdisp.c (with_echo_area_buffer_unwind_data)
14024 (format_mode_line_unwind_data, unwind_format_mode_line)
14025 (display_menu_bar):
14026 * eval.c (Ffetch_bytecode):
14027 * doc.c (store_function_docstring):
14028 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14029 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14030 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14031
140322008-02-07 Kenichi Handa <handa@m17n.org>
14033
14034 * ftxfont.c (ftxfont_open): Don't set
14035 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14036
14037 * ftfont.c (ftfont_open): Fix previous change.
14038
140392008-02-06 Jason Rumney <jasonr@gnu.org>
14040
14041 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14042 Use cached metrics for ASCII characters.
14043 (w32font_open_internal): Don't set font's owning_frame.
14044 Cache metrics for ASCII characters.
14045
14046 * w32font.h (struct w32font_info): Add ascii_metrics.
14047 Remove owning_frame.
14048
140492008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14050
14051 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14052 to negative value.
14053
14054 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14055
14056 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14057
14058 * charset.c (syms_of_charset): Set QCtest and Qeq.
14059
140602008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14061
14062 * process.c (Fstart_process):
14063 * callproc.c (Fcall_process): Handle the case where
14064 Funhandled_file_name_directory returns nil.
14065
14066 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14067 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14068 * font.c (check_gstring): Use them and AREF to access the vector before
14069 we know it's really a gstring.
14070 (Ffont_shape_text): Fix typo.
46e722a9 14071 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
14072
14073 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14074 Declare.
14075
14076 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14077
140782008-02-05 Jason Rumney <jasonr@gnu.org>
14079
14080 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14081 Set smallest_font_height and smallest_char_width in display info.
14082
140832008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14084
14085 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14086
140872008-02-05 Miles Bader <miles@gnu.org>
14088
14089 * xfaces.c (get_lface_attributes, merge_named_face)
14090 (lookup_named_face, lookup_derived_face, realize_named_face):
14091 Revert 2008-02-01 change by cyd@stupidchicken.com.
14092
140932008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14094
14095 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14096 fallback fonts.
14097 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14098
140992008-02-04 Jason Rumney <jasonr@gnu.org>
14100
14101 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14102 set full_name.
14103 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14104
141052008-02-03 Jason Rumney <jasonr@gnu.org>
14106
14107 * makefile.w32-in (OBJ1): Include font.o here.
14108 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14109
141102008-02-02 Jason Rumney <jasonr@gnu.org>
14111
14112 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14113
141142008-02-01 Jason Rumney <jasonr@gnu.org>
14115
14116 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14117
14118 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14119
141202008-02-01 Andreas Schwab <schwab@suse.de>
14121
14122 * Makefile.in (shortlisp, lisp): Update for rename of
14123 ../lisp/language/myanmar.el.
14124
141252008-02-01 Chong Yidong <cyd@stupidchicken.com>
14126
14127 * xfaces.c (get_lface_attributes): Delete function.
14128 (merge_named_face, lookup_named_face, lookup_derived_face)
14129 (realize_named_face): Call lface_from_face_name directly, and use
14130 the fact that merge_face_vectors does not alter its FROM argument.
14131
141322008-02-01 Jason Rumney <jasonr@gnu.org>
14133
14134 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14135 input in the default locale. Handle non-Unicode multibyte input.
14136
141372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14138
14139 * fontset.c (reorder_font_vector): Exclude nil elements from the
14140 font group. Don't try multiple fonts.
14141 (fontset_font): Adjust for the above change.
14142 (Finternal_char_font): Return nil if the found font doesn't
14143 contain the character ch.
14144
14145 * Makefile.in (lisp, shortlisp): Add cham.el.
14146
141472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14148
14149 * font.h (FONTP): Make it return 1 also for a font-object.
14150
14151 * .gdbinit (xfontset): New function.
14152
14153 * font.c (font_find_for_lface): Check if the character C is
14154 supported or not only for the first font.
14155
14156 * fontset.c (reorder_font_vector): Fix typo.
14157 (fontset_find_font): Don't add a font-spec specifying a script.
14158 Use 0 (not Qt) for the indication of empty font-group. Change the
14159 format of RFONT-DEF. Return Qt if no font in the font-group
14160 support the character.
14161 (fontset_font): Adjust for the above change. If no font was
14162 found the character, remember that.
14163 (face_for_char): Adjust for the change of RFONT-DEF.
14164 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14165 no font for the target.
14166 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14167
141682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14169
14170 * font.c (font_load_for_face): Handle the case that the font in
14171 face->lface is a string.
14172
141732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14174
14175 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14176
141772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14178
14179 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14180 Fix previous change. If the frame is not on a window system,
14181 signal an error.
14182
141832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14184
14185 * coding.c (decode_coding_object, encode_coding_object): Adjust
14186 marker positions after conversion.
14187
14188 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14189
141902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14191
14192 * font.c (font_find_for_lface): Fix the handling of the return
14193 value of font_has_char.
14194 (Ffont_shape_text): Fix previous change.
14195
14196 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14197 (fontset_ref_and_range): Delete it.
14198 (fontset_find_font): Call char_table_ref_and_range instead of
14199 FONTSET_REF_AND_RANGE.
14200 (make_fontset): Don't setup font groups of Latin here.
14201 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14202 (new_fontset_from_font): Make the specified font the default for
14203 all Latin characters.
14204
142052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14206
14207 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14208 is on a window system before accessing the fontset of the frame.
14209
142102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14211
14212 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14213
14214 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14215 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14216
14217 * font.c (Ffont_shape_text): If the font driver doesn't have a
14218 shaper function, make zero-width glyphs to have at least one-pixel
14219 width. Fix setting of `to' field of glyphs.
14220
142212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14222
14223 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14224 glyphs.
14225
14226 * font.h (struct font_driver): Improve docstring of member `shape'.
14227
142282008-02-01 Kenichi Handa <handa@m17n.org>
14229
14230 * composite.c (syms_of_composite): Fix docstring of
14231 auto-composition-function.
14232
14233 * font.h (LGLYPH_SIZE): New macro.
14234
14235 * font.c (Ffont_fill_gstring): Stop filling when a character not
14236 supported by the font is found.
14237 (Ffont_shape_text): When a shape callback function returns nil,
14238 try at most two more times with larger gstring.
14239 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14240
14241 * xdisp.c (handle_auto_composed_prop): Change the argument to
14242 auto-composition-function.
14243
14244 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14245 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14246 Lispy glyph and store it in the lgstring.
14247
14248 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14249
14250 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14251
142522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14253
14254 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14255
14256 * fontset.c (Vfont_encoding_charset_alist): New variable.
14257 (syms_of_fontset): DEFVAR it.
14258 (reorder_font_vector, fontset_find_font): Optimize for the case of
14259 no need of reordering.
14260 (face_for_char): Map the charset property by
14261 Vfont_encoding_charset_alist.
14262
142632008-02-01 Jason Rumney <jasonr@gnu.org>
14264
14265 * w32font.c (logfonts_match): Don't check adstyle here.
14266 (font_matches_spec): Check here against physical font instead.
14267 (add_font_entity_to_list): Avoid some substitutions.
14268
14269 * font.c (font_parse_fcname): Default weight and slant to normal.
14270 (font_score): Prefer normal fonts if weight or slant unspecified.
14271 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14272 match freetype scores.
14273
142742008-02-01 Jason Rumney <jasonr@gnu.org>
14275
14276 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14277 font, as it may have been deleted.
14278 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14279 most common hyphenless variation.
14280 (logfonts_match): Check generic family.
14281 (font_matches_spec): Don't check generic family here.
14282 (fill_in_logfont): Set generic family based on adstyle.
14283
14284 * w32font.h (w32font_get_cache): Update declaration.
14285
142862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14287
14288 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14289
14290 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14291 If none of the new drivers are available, call font_update_drivers
14292 with the old drivers.
14293
14294 * w32font.c (w32font_get_cache): Adjust the argument type.
14295
14296 * xfont.c (xfont_get_cache): Adjust the argument type.
14297
14298 * font.h (struct font_driver): Change argument type of get_cache.
14299
14300 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14301
14302 * font.c (Ffont_get): Fix arguments to Fassoc.
14303 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14304 (font_clear_cache): New function.
14305 (font_list_entities, font_matching_entity): Use font_get_cache.
14306 (font_update_drivers): Call font_clear_cache when finishing a driver.
14307
14308 * fontset.c (fontset_find_font): Fix previous change.
14309
143102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14311
14312 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14313 dpyinfo->font_table.
14314 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14315 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14316
14317 * font.c (font_at): Handle the case that the arg C is negative.
14318 Handle the unibyte case.
14319 (Ffont_at): Call font_at with the arg C -1.
14320
14321 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14322 the position here, and call font_at with the arg C -1.
14323 Don't check the range of the existing composition at the point.
14324
143252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14326
14327 * fontset.c (fontset_add): New args charset_id and family.
14328 Change caller.
14329 (load_font_get_repertory, fontset_find_font): Assume that
14330 font_spec is always a font-spec object.
14331 (Fset_fontset_font): Always store a font-spec object in a fontset.
14332
14333 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14334 instead of get_property_and_range.
14335
143362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14337
14338 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14339 (xftfont_open): Don't keep locking face.
14340 (xftfont_close): Don't unlock face.
14341 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14342
14343 * fontset.c (fontset_find_font): Don't prefer a font of
14344 supplementary charset.
14345
143462008-02-01 Kenichi Handa <handa@m17n.org>
14347
14348 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14349 script, langsys_tag to langsys, new member script.
14350 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14351 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
14352 listing to the script specified in that property. Fix arg to
14353 OTF_check_features.
14354
143552008-02-01 Jason Rumney <jasonr@gnu.org>
14356
14357 * w32font.h: New file.
14358
14359 * w32font.c: Include it.
14360 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14361 (w32font_open): Set owning_frame.
14362 (w32font_text_extents): Use owning_frame.
14363 (struct font_callback_data): Add opentype_only field.
14364 (add_font_entity_to_list): Use it to filter fonts.
14365 Don't check against full name.
14366 (w32font_list_internal): New function.
14367 (w32font_list): Use it.
14368 (w32font_match_internal): New function.
14369 (w32font_match): Use it.
14370 (w32font_open_internal): New function.
14371 (w32font_open): Use it.
14372 (w32font_get_cache, w32font_close, w32font_has_char)
14373 (w32font_encode_char, w32font_text_extents, w32font_draw):
14374 Make non-static.
14375
14376 * makefile.w32-in (w32font.o): Depend on w32font.h.
14377
143782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14379
14380 * charset.c (Fdefine_charset_internal): Record a supplementary
14381 charset at the tail of Vcharset_order_list.
14382
14383 * font.c (Ffont_shape_text): Fix the return value.
14384
14385 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
14386
14387 * xdisp.c (handle_auto_composed_prop): Fix previous change.
14388
143892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14390
14391 * ftfont.c (struct OpenTypeSpec): New struct.
14392 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
14393 (ftfont_get_open_type_spec): New function.
14394 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
14395
14396 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
14397
143982008-02-01 Jason Rumney <jasonr@gnu.org>
14399
14400 * w32font.c (add_font_entity_to_list): Compare only the beginning
14401 of full name.
14402
144032008-02-01 Kenichi Handa <handa@m17n.org>
14404
14405 * xdisp.c (handle_auto_composed_prop): Simplify the code.
14406 Never return HANDLED_RECOMPUTE_PROPS.
14407
144082008-02-01 Kenichi Handa <handa@m17n.org>
14409
14410 * font.c (font_gstring_produce): Delete it.
14411
14412 * composite.h (COMPOSITION_METHOD):
14413 Handle COMPOSITION_WITH_GLYPH_STRING.
14414
144152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14416
14417 * xfont.c (Qx): Delete.
14418 (syms_of_xfont): Don't initialize Qx.
14419
14420 * composite.h (enum composition_method):
14421 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
14422
144232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14424
14425 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
14426 (choose_face_font): Accept new form of font-spec.
14427
14428 * frame.h (font_driver_list): Declare it unconditionally.
14429 (struct frame): Define members font_driver_list and font_data_list
14430 unconditionally.
14431
14432 * fontset.c: Include "font.h" unconditionally.
14433 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
14434 (Fset_fontset_font): Accept a font-spec object.
14435
14436 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
14437 PIXEL_SIZE part a wild card.
14438
14439 * dispextern.h (struct glyph_string): Define members clip and
14440 num_clips unconditionally.
14441 (struct face): Define members font_info and extra unconditionally.
14442
14443 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
14444 ftfont_info only when HAVE_LIBOTF is defined.
14445
144462008-02-01 Andreas Schwab <schwab@suse.de>
14447
14448 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
14449 and end.
14450
144512008-02-01 Jason Rumney <jasonr@gnu.org>
14452
14453 * w32font.c (w32font_driver): Add new fields.
14454
144552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14456
14457 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
14458 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
14459 (LIBES): Add @M17N_FLT_CFLAGS@.
14460
14461 * composite.c (compose_text): Don't treat the new style
14462 composition specially.
14463
14464 * emacs.c (main): Call syms_of_font unconditionally.
14465
14466 * font.h (FONT_ENTITY_NOT_LOADABLE)
14467 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
14468 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
14469 (struct font_driver): New member shape.
14470 (font_registry_charsets): Extern it.
14471 (font_find_for_lface, font_prepare_composition): Adjust prototype.
14472 (font_otf_capability, font_drive_otf): Delete their externs.
14473
14474 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
14475 (font_charset_alist, font_registry_charsets): Move from xfont.c
14476 and rename.
14477 (font_prop_validate_otf): New function.
14478 (font_property_table): Register it for QCotf.
14479 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
14480 (font_drive_otf): Delete.
14481 (font_prepare_composition): New arg F. Adjust for the change of
14482 lispy gstring.
14483 (font_find_for_lface): New arg C.
14484 (font_load_for_face): Adjust for the change of font_find_for_lface.
14485 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
14486 lispy gstring.
14487 (Ffont_shape_text): New function.
14488 (Fopen_font): If the font size is not given, use 12-pixel.
14489 (Ffont_at): New arg STRING.
14490 (syms_of_font): Initalize font_charset_alist.
14491 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
14492 conditionally.
14493
14494 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
14495 fonts of the same font-spec. Change the format of RFONT-DEF.
14496 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
14497 Adjust for the change of RFONT-DEF.
14498 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
14499
14500 * ftfont.h: New file.
14501
14502 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
14503 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14504 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14505 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
14506 font_otf_capability and font_drive_otf, set ftfont_shape.
14507 (ftfont_list): Adjust for the change of :otf property value.
14508 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
14509 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
14510 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
14511 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14512 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
14513 (otf_gstring, gstring, m17n_flt_initialized): New variables.
14514
14515 * w32term.c (x_draw_composite_glyph_string_foreground):
14516 Adjust for the change of lispy gstring.
14517
14518 * xdisp.c (handle_composition_prop): Adjust for the change of
14519 lispy gstring. Call a function for auto-composition with the
14520 third arg it->window.
14521 (fill_composite_glyph_string): Adjust for the change of lispy string.
14522 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
14523
14524 * xfaces.c (set_font_frame_param): Adjust for the change of
14525 font_find_for_lface.
14526
14527 * xfont.c (x_font_charset_alist): Move to font.c and rename.
14528 (xfont_registry_charsets): Likewise. Change caller.
14529 (syms_of_xfont): Don't handle x_font_charset_alist.
14530
14531 * xftfont.c: Include "ftfont.h".
14532 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14533 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14534 (xftfont_close) [HAVE_LIBOTF]: Close otf.
14535 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14536 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
14537 Set xftfont_driver.shape to xftfont_shape.
14538
14539 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14540 the change of lispy gstring.
14541
145422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14543
14544 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
14545
145462008-02-01 Jason Rumney <jasonr@gnu.org>
14547
14548 * w32font.c (w32font_draw): Fill background manually.
14549
145502008-02-01 Jason Rumney <jasonr@gnu.org>
14551
14552 * font.c (Qfontp): Remove unused symbol.
14553 (QCantialias): New symbol.
14554 (syms_of_font): Define it.
14555 (font_property_table): Set a validator for QCantialias.
14556
14557 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
14558 Define if not already.
14559 (QCfamily): Share with xfaces.c.
14560 (Qstandard, Qsubpixel, Qnatural): New symbols.
14561 (syms_of_w32font): Define them. Don't define QCfamily here.
14562 (w32_antialias_type, lispy_antialias_type): New functions.
14563 (w32_enumfont_pattern_entity): New arg requested_font.
14564 Set antialias parameter if non-default was requested.
14565 (fill_in_logfont): Fill in lfQuality if :antialias specified.
14566
145672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14568
14569 * lread.c (read1): Undo the previous change.
14570
145712008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
14572
14573 * frame.c (Fdelete_frame): Call font_update_drivers only when
14574 USE_FONT_BACKEND is defined.
14575
145762008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14577
14578 * font.h (struct font_bitmap): New member bits_per_pixel.
14579 (struct font_driver): New members start_for_frame and end_for_frame.
14580 (struct font_data_list): New struct.
14581 (font_put_frame_data, font_get_frame_data): Extern them.
14582
14583 * frame.h (struct frame): New member font_data_list.
14584
14585 * font.c (font_update_drivers): Call driver->start_for_frame and
14586 driver->end_for_frame at proper timings.
14587 (font_put_frame_data, font_get_frame_data): New functions.
14588 (Ffont_spec): Add usage in the docstring.
14589
14590 * frame.c (make_frame): Initialize f->font_data_list to NULL.
14591 (Fdelete_frame): Call font_update_drivers.
14592
14593 * xftfont.c (struct xftface_info): Delete the member xft_draw.
14594 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
14595 (xftfont_get_xft_draw): New function.
14596 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
14597 (xftfont_end_for_frame): New function.
14598 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
14599
14600 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
14601 Change argument. Cache GCs in the per-frame data.
14602 (struct ftxfont_frame_data): New struct.
14603 (ftxfont_draw_bitmap): New arg gc_fore and flush.
14604 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
14605 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
14606 (ftxfont_end_for_frame): New function.
14607 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
14608
14609 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
14610
146112008-02-01 Kenichi Handa <handa@m17n.org>
14612
14613 * xselect.c (Vselection_coding_system)
14614 (Vnext_selection_coding_system): Delete them.
14615 (syms_of_xselect): Don't declare selection-coding-system and
14616 next-selection-coding-system. They are declared in select.el.
14617
146182008-02-01 Jason Rumney <jasonr@gnu.org>
14619
14620 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
14621
14622 * w32fns.c: Include imm.h.
14623 (get_composition_string_fn, get_ime_context_fn): New optional
14624 system functions.
14625 (globals_of_w32fns): Load them from imm32.dll.
14626 (ignore_ime_char): New flag.
14627 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
14628 WM_IME_ENDCOMPOSITION messages.
14629
14630 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
14631 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
14632
146332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14634
14635 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
14636 (READCHAR_REPORT_MULTIBYTE): New macro.
14637 (readchar): New 2nd arg MULTIBYTE.
14638 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
14639 Make symbol's name multibyte according to the multibyteness of the
14640 source.
14641
146422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14643
14644 * xfaces.c (face_for_overlay_string): Call lookup_face with
14645 correct arguments (fix of synching with the trunk).
14646
146472008-02-01 Kenichi Handa <handa@m17n.org>
14648
14649 * font.c (font_prop_validate_symbol, font_prop_validate_style)
14650 (font_prop_validate_non_neg, font_prop_validate_spacing):
14651 Delete argument prop_index.
14652 (font_property_table): Change arguments to validater. Change Callers.
14653 (font_lispy_object): Delete.
14654 (font_at): Use font_find_object instead fo font_lispy_object.
14655
146562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14657
14658 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
14659 and file names.
14660
146612008-02-01 Jason Rumney <jasonr@gnu.org>
14662
14663 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
14664 (font_matches_spec): Remove debug output.
14665 (add_font_entity_to_list): Avoid using substituted fonts.
14666
146672008-02-01 Jason Rumney <jasonr@gnu.org>
14668
14669 * doc.c (Fsnarf_documentation):
14670 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
14671
146722008-02-01 Miles Bader <miles@gnu.org>
14673
14674 * dispextern.h (struct glyph_row): Only define "clip" field if
14675 HAVE_WINDOW_SYSTEM is defined.
14676
146772008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14678
14679 Fix up multi-tty merge.
14680
14681 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
14682 and indentation.
14683
14684 * xfaces.c (free_realized_face, clear_face_gcs):
14685 Include font_done_for_face in the input_blocked section, just in case.
14686
14687 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
14688 (get_char_face_and_encoding): Undo last change and remove the *other*
14689 duplicate definition (i.e. keep the one that's better scoped and that
14690 includes code for the font-backend).
14691
14692 * terminal.c (create_terminal): Default keyboard_coding to
14693 `no-conversion' and terminal_coding to `undecided'.
14694
14695 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
14696
14697 * fontset.c (free_realized_fontsets): Check that the table entry does
14698 contain a fontset before trying to compare it to `base'.
14699
14700 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
14701 syms_of_charset, and syms_of_coding earlier because init_window_once
14702 now needs Vcoding_system_hash_table to be setup.
14703
14704 * coding.h (default_buffer_file_coding): Remove.
14705
14706 * coding.c (default_buffer_file_coding): Remove.
14707 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
14708 than ->symbol, and use the terminal-local coding system.
14709 (syms_of_coding): Don't setup the coding-systems that are not
14710 terminal-local.
14711 (Fdefine_coding_system_internal): Use XCAR/XCDR.
14712
14713 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
14714 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
14715
14716 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
14717 in chartab.c and were re-added here by mistake.
14718 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
14719
14720 * doc.c (Fsnarf_documentation):
14721 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
14722 src to etc.
14723
14724 * ChangeLog.10: Add mistakenly removed entry.
14725
147262008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
14727
14728 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
14729
147302008-02-01 Miles Bader <miles@gnu.org>
14731
14732 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
14733 Add extra args to FACE_FOR_CHAR.
14734
147352008-02-01 Kenichi Handa <handa@m17n.org>
14736
14737 * keymap.c (where_is_internal_1): If key is a cons, store the copy
14738 in sequence.
14739
14740 * chartab.c (map_sub_char_table, map_char_table): If the range
14741 contains just one character, call the function with that character
14742 even if the depth is not 3.
14743
147442008-02-01 Jason Rumney <jasonr@gnu.org>
14745
14746 * w32font.c (w32font_text_extents): Calculate metrics for the
14747 whole string.
14748
147492008-02-01 Jason Rumney <jasonr@gnu.org>
14750
14751 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
14752
147532008-02-01 Jason Rumney <jasonr@gnu.org>
14754
14755 * w32term.c (x_set_glyph_string_clipping): Use
14756 get_glyph_string_clip_rects.
14757 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14758 Adjust for the change of struct glyph_string.
14759
14760 * w32font.c (w32font_draw): Do clipping here.
14761
147622008-02-01 Kenichi Handa <handa@m17n.org>
14763
14764 * xftfont.c (xftfont_draw): Adjust for the change of struct
14765 glyph_string.
14766
14767 * xterm.c (x_set_glyph_string_clipping): Use
14768 get_glyph_string_clip_rects.
14769 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
14770 Adjust for the change of struct glyph_string.
14771
14772 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
14773 the resulting clip(s}.
14774 (expose_overlaps): Add arg r. Change callers. Set it to
14775 row->clip temporarily.
14776 (expose_window): Redraw rows overlapping the exposed area.
14777
14778 * dispextern.h (struct glyph_row): New member clip.
14779 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
14780 clip_height, new member clip, and num_clips.
14781
147822008-02-01 Kenichi Handa <handa@m17n.org>
14783
14784 * data.c (Fchar_or_string_p): Fix docstring.
14785
147862008-02-01 Kenichi Handa <handa@m17n.org>
14787
14788 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
14789 create a temporary XftDraw object.
14790
147912008-02-01 Kenichi Handa <handa@m17n.org>
14792
14793 * font.c (Ffontp): Fix docstring.
14794
14795 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
14796 strong evidence of ISO-2022.
14797
147982008-02-01 Kenichi Handa <handa@m17n.org>
14799
14800 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
14801 SYNTAX_ENTRY_FOLLOW_PARENT.
14802
148032008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14804
14805 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
14806 its type.
14807 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
14808 Update to the new type of weak_hash_tables and next_weak.
14809
14810 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
14811 a plain C pointer to Lisp_Hash_Table.
14812
14813 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
14814 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
14815 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
14816 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
14817 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
14818 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
14819 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
14820 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
14821 (GC_EQ): Remove since they've been identical to their non-GC_
14822 alter-egos ever since the markbit was eradicated.
14823
14824 * alloc.c:
14825 * buffer.c:
14826 * buffer.h:
14827 * data.c:
14828 * fileio.c:
14829 * filelock.c:
14830 * fns.c:
14831 * frame.h:
14832 * lisp.h:
14833 * macterm.c:
14834 * print.c:
14835 * process.c:
14836 * w32fns.c:
14837 * w32menu.c:
14838 * w32term.c:
14839 * xfns.c:
14840 * xmenu.c:
14841 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
14842
148432008-02-01 Kenichi Handa <handa@m17n.org>
14844
14845 * chartab.c (map_sub_char_table): Make it work for the top-level
14846 char-table. Fix handling of parent char-table.
14847 (map_char_table): Adjust for the above change.
14848
148492008-02-01 Jason Rumney <jasonr@gnu.org>
14850
14851 * w32font.c (Qgdi): Rename from Qw32.
14852
148532008-02-01 Jason Rumney <jasonr@gnu.org>
14854
14855 * w32bdf.c (get_quoted_string): Make function static.
14856
148572008-02-01 Kenichi Handa <handa@m17n.org>
14858
14859 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
14860 bigger ascent and descent than those of the font, use them as
14861 font's ascent and descent.
14862
148632008-02-01 Kenichi Handa <handa@m17n.org>
14864
14865 * Makefile.in (${lispsource}international/charprop.el): Move this
14866 target within "#ifdef HAVE_UNIDATA" and "#endif".
14867
148682008-02-01 Kenichi Handa <handa@m17n.org>
14869
14870 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
14871 (shortlisp): Add ../lisp/language/tai-viet.el.
14872
148732008-02-01 Ulrich Mueller <ulm@gentoo.org>
14874
14875 * Makefile.in (${lispsource}international/charprop.el): Depend on
14876 temacs${EXEEXT}.
14877
148782008-02-01 Jason Rumney <jasonr@gnu.org>
14879
14880 * w32font.c (w32font_close): Delete the GDI font object.
14881
14882 * w32menu.c: Include character.h.
14883
14884 * w32proc.c: Likewise.
14885
14886 * w32select.c: Likewise.
14887
14888 * makefile.w32-in (w32proc.o): Depend on character.h.
14889
148902008-02-01 Jason Rumney <jasonr@gnu.org>
14891
14892 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
14893
14894 * w32menu.c (syms_of_w32menu): Likewise.
14895
14896 * w32proc.c (syms_of_ntproc): Likewise.
14897
14898 * w32select.c (syms_of_w32select): Likewise.
14899
14900 * w32term.c (syms_of_w32term): Likewise.
14901
149022008-02-01 Jason Rumney <jasonr@gnu.org>
14903
14904 * w32font.c (w32font_draw): Delete brush after using it.
14905
149062008-02-01 Jason Rumney <jasonr@gnu.org>
14907
14908 * w32font.c (w32font_open): Don't set font_idx.
14909 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
14910 to font settings.
14911 (w32font_draw): Fill background explicitly.
14912
149132008-02-01 Jason Rumney <jasonr@gnu.org>
14914
14915 * w32term.c (w32_initialize): Don't call w32font_initialize.
14916
14917 * w32font.c (w32font_info): Remove subranges.
14918 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
14919 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
14920 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
14921 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
14922 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
14923 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
14924 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
14925 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
14926 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
14927 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
14928 New symbols.
14929 (font_callback_data): New struct.
14930 (w32font_list, w32font_match): Use it.
14931 (w32font_open): Don't populate subranges.
14932 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
14933 (w32font_encode_char): Always return unicode code-point as-is.
14934 (w32font_text_extents): Supply a transformation matrix to
14935 GetGlyphOutline. Never look up by glyph index. Avoid looping
14936 twice. Use unicode version of GetTexExtentPoint32 instead of
14937 glyph index version.
14938 (set_fonts_frame): Remove.
14939 (w32_enumfont_pattern_entity): Add frame parameter, use it to
14940 set frame parameter. Use backward compatible fake foundries.
14941 Save generic family in extra slot under QCfamily. Make width slot
14942 constant. Save QCspacing value. Save list of scripts instead of
14943 binary subranges.
14944 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
14945 (add_font_entity_to_list): Use font_callback_data struct. Filter
14946 unwanted fonts.
14947 (add_one_font_entity_to_list): Use font_callback_data struct.
14948 (w32_registry): Default to iso10646_1.
14949 (fill_in_logfont): Use dpi from extra slot. Don't bother with
14950 string font registries. Don't fill in font name if it is a generic
14951 family name, fill family instead. Use spacing, family and script
14952 extra info to fill pitch, family and charset fields.
14953 (list_all_matching_fonts): Use font_callback_data struct.
14954 (unicode_range_for_char): Remove.
14955 (font_supported_scripts): New function.
14956 (w32font_initialize): Remove.
14957 (syms_of_w32font): Update which symbols are defined.
14958
149592008-02-01 Jason Rumney <jasonr@gnu.org>
14960
14961 * font.c (font_pixel_size): Reverse assq_no_quit args.
14962
14963 * w32term.h (FONT_WIDTH): Report max width, not average.
14964 (FONT_MAX_WIDTH): Remove.
14965 (FONT_AVG_WIDTH): New macro.
14966
14967 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
14968 redefinition of FONT_WIDTH.
14969
14970 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
14971 (w32_cache_char_metrics): Use FONT_WIDTH.
14972
14973 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
14974
149752008-02-01 Jason Rumney <jasonr@gnu.org>
14976
14977 * w32font.c (w32font_open): Make lfHeight negative.
14978
14979 * w32fns.c (x_default_font_parameter): Use new style font name.
14980 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
14981
149822008-02-01 Jason Rumney <jasonr@gnu.org>
14983
14984 * w32font.c (QCsubranges): New symbol.
14985 (w32font_open, w32font_has_char): Get subranges from subproperty
14986 of extra.
14987 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
14988 (syms_of_w32font): Define :subranges symbol.
14989
14990 * font.c (font_put_extra): Expose externally.
14991
14992 * font.h (font_put_extra): Move declaration from font.c.
14993
14994 * font.c (Ffont_get): Use font driver to determine otf capability.
14995 (adjust_anchor): Check if driver defines anchor_point before using.
14996
14997 * w32font.c (w32font_open): Handle size, height and pixel_size better.
14998 (w32font_draw): Use options.
14999 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15000 Fix detection of truetype fonts.
15001 (registry_to_w32_charset): Handle charsets other than iso8859-1
15002 expressed as lisp symbols.
15003 (w32_registry): Express charset as lisp symbol.
15004 (fill_in_logfont): Reverse pixel and point height logic.
15005 Don't set width here. Set quality to default.
15006
15007 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15008 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15009
15010 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15011 Remove redundant loop and allocation.
15012
15013 * makefile.w32-in (font.o, w32font.o): New objects.
15014 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15015 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15016
15017 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15018 STORE_XCHARB a valid l-value.
15019
15020 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15021 calculations for non-Truetype fonts.
15022 (x_draw_glyph_string): Sync with xterm.c.
15023 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15024 Remove redundant code.
15025 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15026
15027 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15028 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15029
15030 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15031 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15032
15033 * w32font.c: New file for w32 font backend.
15034
150352008-02-01 Kenichi Handa <handa@m17n.org>
15036
15037 * term.c: Don't include "buffer.h" twice.
15038
150392008-02-01 Kenichi Handa <handa@m17n.org>
15040
15041 * character.c (Funibyte_string): New function.
15042 (syms_of_character): Defsubr it.
15043
150442008-02-01 Jason Rumney <jasonr@gnu.org>
15045
15046 * w32term.c [USE_FONT_BACKEND]:
15047 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15048 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15049 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15050 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15051 (x_free_frame_resources): Sync with xterm.c.
15052
150532008-02-01 Andreas Schwab <schwab@suse.de>
15054
15055 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15056 char-table size.
15057
150582008-02-01 Kenichi Handa <handa@m17n.org>
15059
15060 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15061
150622008-02-01 Kenichi Handa <handa@m17n.org>
15063
15064 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15065 font_otf_gpos, add font_drive_otf.
15066
15067 * fontset.c (fontset_find_font): Pay attention to font size
15068 specified for a font.
15069 (reorder_font_vector): Check contents of font_def.
15070
15071 * font.c (struct otf_list): Delete it.
15072 (otf_list): Make it a lisp variable.
15073 (otf_open): Use lispy otf_list.
15074 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15075 (check_otf_features): New function.
15076 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15077 New functions.
15078 (font_drive_otf): New function merging font_otf_gsub and
15079 font_otf_gpos.
15080 (font_open_for_lface): New arg spec. Change argument order.
15081 (font_load_for_face): Adjust for the change of font_open_for_lface.
15082 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15083 Ffont_otf_gpos.
15084 (syms_of_font): Staticpro otf_list. Delete defsubr of
15085 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15086
15087 * xfaces.c (set_font_frame_param): Adjust for the change of
15088 font_open_for_lface.
15089
15090 * font.h (font_open_for_lface): Adjust prototype.
15091 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15092 member otf_drive.
15093 (font_otf_gsub, font_otf_gpos): Delete externs.
15094 (font_drive_otf): Extern it.
15095
150962008-02-01 Kenichi Handa <handa@m17n.org>
15097
15098 * font.c (font_at): If the window W is not on a window system,
15099 return Qnil.
15100
15101 * coding.c (produce_chars, encode_coding): Don't call
15102 insert_from_gap if no characters to produce.
15103
151042008-02-01 Kenichi Handa <handa@m17n.org>
15105
15106 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15107 Fclear_face_cache.
15108
15109 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15110
151112008-02-01 Miles Bader <miles@gnu.org>
15112
15113 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15114 Parse "--disable-font-backend" option.
15115 (standard_args): Add "--disable-font-backend" option.
15116
151172008-02-01 Kenichi Handa <handa@m17n.org>
15118
15119 * fontset.c (fontset_find_font): New function.
15120 (fontset_font): Use fontset_find_font.
15121 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15122 Register the specified font for all Latin characters.
15123 (new_fontset_from_font): Register the specified font for all Latin
15124 characters.
15125 (dump_fontset): For a realized fontset, include the base fontset
15126 name in the returned vector.
15127
151282008-02-01 Kenichi Handa <handa@m17n.org>
15129
15130 * character.h (CHAR_STRING): Cast C to unsigned on calling
15131 char_string.
15132
15133 * character.c (char_string): Type of arg C changed to unsigned.
15134 Signal an error if C is an invalid character code.
15135
15136 * editfns.c (general_insert_function, Fchar_to_string):
15137 Use CHARACTERP, not INTEGERP.
15138
151392008-02-01 Kenichi Handa <handa@m17n.org>
15140
15141 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15142 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15143
15144 * regex.c (analyse_first): Fix for multibyte characters in "case
15145 charset:" and "case categoryspec:".
15146
151472008-02-01 Andreas Schwab <schwab@suse.de>
15148
15149 * Makefile.in (LIBES): Move standard libraries to the end.
15150
151512008-02-01 Kenichi Handa <handa@m17n.org>
15152
15153 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15154 nonzero, don't shrink the buffer nextb.
15155
15156 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15157
15158 * coding.c (coding_alloc_by_making_gap): New arg offset.
15159 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15160 offset.
15161 (decode_coding_iso_2022): Update coding->safe_charsets.
15162 (decode_coding_gap): Temporarily set
15163 current_buffer->text->inhibit_shrinking to 1.
15164
151652008-02-01 Kenichi Handa <handa@m17n.org>
15166
15167 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15168 indexing into elements of s->cmp and s->char2b.
15169
151702008-02-01 Juanma Barranquero <lekktu@gmail.com>
15171
15172 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15173
151742008-02-01 Kenichi Handa <handa@m17n.org>
15175
15176 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15177 target_multibyte instead of multibyte.
15178 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15179 (bcmp_translate): Change the argument name from multibyte to
15180 target_multibyte.
15181
151822008-02-01 Kenichi Handa <handa@m17n.org>
15183
15184 These changes are to compile a regexp into a pattern that can be
15185 used both for multibyte and unibyte targets.
15186
15187 * Makefile.in (search.o): Depend on charset.h.
15188
15189 * character.c (multibyte_char_to_unibyte_safe): New function.
15190
15191 * search.c: Include "charset.h".
15192 (compile_pattern_1): Delete argument multibyte. Don't set
15193 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15194 (compile_pattern): Don't compare cp->buf.target_multibyte.
15195 Compare cp->buf.charset_unibyte.
15196 (compile_pattern): Set cp->buf.target_multibyte.
15197
15198 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15199
15200 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15201
15202 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15203 multibyte. Change callers.
15204 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15205 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15206 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15207 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15208 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15209 (regex_compile): Make the compiled pattern usable both for
15210 multibyte and unibyte targets.
15211 (analyse_first): Make the fastmap usable both for multibyte and
15212 unibyte targets.
15213 (TRANSLATE_VIA_MULTIBYTE): Delete.
15214 (re_match_2_internal): Pay attention to the case that the
15215 multibyteness of bufp and target may be different.
15216
152172008-02-01 Kenichi Handa <handa@m17n.org>
15218
15219 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15220 empty box occupy at least one column width.
15221
152222008-02-01 Miles Bader <miles@gnu.org>
15223
15224 * Makefile.in: Remove redundant HAVE_XFT clause.
15225
152262008-02-01 Kenichi Handa <handa@m17n.org>
15227
15228 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15229
152302008-02-01 Kenichi Handa <handa@m17n.org>
15231
15232 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15233 being nil.
15234
152352008-02-01 Kenichi Handa <handa@m17n.org>
15236
15237 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15238
152392008-02-01 Kenichi Handa <handa@m17n.org>
15240
15241 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15242
152432008-02-01 Kenichi Handa <handa@m17n.org>
15244
15245 * search.c (simple_search): Fix previous change.
15246
152472008-02-01 Kenichi Handa <handa@m17n.org>
15248
15249 * xftfont.c (ftfont_font_format): Extern declaration.
15250
15251 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15252
15253 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15254 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15255
15256 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15257 (ftfont_font_format): Fix previous change.
15258
15259 * font.h (Ffont_xlfd_name): EXFUN it.
15260
15261 * font.c (font_parse_xlfd): Fix the array size of `f'.
15262 (register_font_driver): Use EQ to compare driver->type.
15263
15264 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15265 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15266 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15267
152682008-02-01 Kenichi Handa <handa@m17n.org>
15269
15270 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15271 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15272
152732008-02-01 Kenichi Handa <handa@m17n.org>
15274
15275 * xfont.c (xfont_open): Set font->format.
15276
15277 * xftfont.c (xftfont_open): Set font->format.
15278
15279 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15280 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15281 (ftfont_open): Set font->format.
15282 (ftfont_font_format): New function.
15283
15284 * font.h (struct font): New member format.
15285
15286 * font.c (Qopentype): New variable.
15287 (syms_of_font): Defsym it.
15288 (Fquery_font): Change the format of the last element of the return
15289 value.
15290
152912008-02-01 Kenichi Handa <handa@m17n.org>
15292
15293 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15294 last resort.
15295
152962008-02-01 Kenichi Handa <handa@m17n.org>
15297
15298 * coding.c (detect_coding_charset): Fix detection of multi-byte
15299 charset.
15300
153012008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15302
15303 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15304
153052008-02-01 Kenichi Handa <handa@m17n.org>
15306
15307 * xdisp.c (get_next_display_element): Set it->face_id for the
15308 first component of a composition.
15309 (x_produce_glyphs): Check if the font is changed or not for composition.
15310
153112008-02-01 Kenichi Handa <handa@m17n.org>
15312
15313 * fontset.c (Qlatin): New variable.
15314 (syms_of_fontset): Define it as a lisp symbol.
15315 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15316
153172008-02-01 Kenichi Handa <handa@m17n.org>
15318
15319 * font.c (font_unparse_fcname): Pay attention to the case that
15320 some of font property is a null string.
15321
153222008-02-01 Kenichi Handa <handa@m17n.org>
15323
15324 * term.c: Include "composite.h".
15325 (encode_terminal_code): Output all components of composition.
15326 Check the size of encode_terminal_src.
15327 (produce_glyphs): For composition, call produce_composite_glyph.
15328 (append_composite_glyph, produce_composite_glyph): New functions.
15329
15330 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15331 is not found, get font_info from the current ascii face.
15332
153332008-02-01 Kenichi Handa <handa@m17n.org>
15334
15335 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15336 buffer-file-name to Qnil before calling insert_from_buffer.
15337
15338 * font.c (font_unparse_fcname): Pay attention to the case that
15339 foundry is a null string.
15340
153412008-02-01 Kenichi Handa <handa@m17n.org>
15342
15343 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15344
15345 * font.c (Qunicode_sip): New variable.
15346 (syms_of_font): Declare it as a Lisp symbol.
15347
15348 * font.h (Qunicode_sip): Extern it.
15349
153502008-02-01 Kenichi Handa <handa@m17n.org>
15351
15352 * composite.c (get_composition_id): Pay attention to TAB component.
15353
15354 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15355 TAB. Adjust for the change of s->char2b which always points to
15356 the first element of allocated memory.
15357
15358 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15359
15360 * xdisp.c (handle_composition_prop): Set it->c to the first
15361 non-TAB component.
15362 (fill_composite_glyph_string): Change argument.
15363 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15364 (x_produce_glyphs): Fix handling of left/right padding.
15365
153662008-02-01 Kenichi Handa <handa@m17n.org>
15367
15368 * coding.c (detect_coding_system): Fix for handling off
15369 inhibit_iso_escape_detection. Fix for the case that no coding
15370 system is defined for a specific coding category.
15371
153722008-02-01 Kenichi Handa <handa@m17n.org>
15373
15374 * font.c (font_matching_entity): Delete unused local var.
15375
15376 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15377 opening a font.
15378
15379 * fileio.c (Finsert_file_contents): On recovering a file, assume
15380 Unix-like eol.
15381 (choose_write_coding_system): On auto-saving a file, force
15382 Unix-like eol.
15383
15384 * coding.c (setup_coding_system): Fix setting of
15385 coding->common_flags based on eol_type.
15386 (coding_inherit_eol_type): If PARENT is not nil, be sure to
15387 inherit from it.
15388
153892008-02-01 Kenichi Handa <handa@m17n.org>
15390
15391 * alloc.c (NSTATICS): Increas to 0x600.
15392
153932008-02-01 Kenichi Handa <handa@m17n.org>
15394
15395 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
15396 (ftfont_list): Don't check :name property.
15397 (ftfont_match): New function.
15398 (ftfont_pattern_entity): If the pattern doesn't contain
15399 FC_SPACING, don't assume FC_MONO.
15400
15401 * font.h (struct font_driver): New member `match'.
15402 (font_update_drivers): Adjust prototype.
15403
15404 * font.c (font_parse_fcname, font_parse_name): Don't change :name
15405 property of FONT.
15406 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
15407 them unconditionally.
15408 (font_matching_entity): New function.
15409 (font_open_by_name): Try font_matching_entity if exact match is
15410 not found.
15411 (font_update_drivers): Delete the arg FONT. Return a list of
15412 actually used backends. Don't free faces, font caches here.
15413 Don't store data in frame parameters. Don't call x_set_font.
15414 (Ffont_spec): Store :name property as is.
15415 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
15416 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
15417 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
15418 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
15419 Call font->driver->otf_gsub instead of font_otf_gsub.
15420
15421 * frame.c (x_set_font_backend): Do more works that were done in
15422 font_update_drivers before.
15423
15424 * xfont.c (xfont_match): New function.
15425 (xfont_driver): Set xfont_driver.match to xfont_match.
15426 (xfont_draw): Set font in GC if necessary.
15427
15428 * ftxfont.c (ftxfont_match): New function.
15429 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
15430
15431 * xftfont.c (xftfont_match): New function.
15432 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
15433
154342008-02-01 Kenichi Handa <handa@m17n.org>
15435
15436 * font.h (struct font): New member scalable.
15437 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
15438 (font_otf_gsub): Adjust prototype.
15439
15440 * font.c (font_otf_capability): Fix handling of the default langsys.
15441 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
15442 Check the contents of SPEC.
15443 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
15444 (check_gstring): New function.
15445 (REPLACEMENT_CHARACTER): New macro.
15446 (font_otf_gsub): New arg alternate_subst. Be sure to set all
15447 glyph codes of GSTRING.
15448 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
15449 (font_prepare_composition): Set cmp->glyph_len.
15450 (font_open_entity): Set font->scalable.
15451 (Ffont_get): Handle :otf property.
15452 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
15453 functions.
15454 (Fquery_font): Use font->font.full_name.
15455 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
15456 Sfont_otf_alternates.
15457
15458 * ftfont.c (ftfont_open): Set font->font.full_name and
15459 font->font.name properly. Fix calculation of font->font.height
15460 and font->min_width.
15461
15462 * ftxfont.c (ftxfont_create_gcs): New function.
15463 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
15464 (ftxfont_draw_backgrond): Fix filling region.
15465 (ftxfont_default_fid): New function.
15466 (ftxfont_open): Set xfont->fid to the return value of
15467 ftxfont_default_fid.
15468 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
15469 (ftxfont_done_face): Free only GCs that are created by
15470 ftxfont_create_gcs.
15471 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
15472
15473 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
15474 Clip to src->width, etc (not src->clip_XXX).
15475
15476 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
15477 FontBackend frame parameter.
15478
154792008-02-01 Kenichi Handa <handa@m17n.org>
15480
15481 * font.h (struct font_driver_list): New member `on'.
15482 (Fclear_font_cache): EXFUN it.
15483 (font_update_drivers): Extern it.
15484
15485 * font.c (font_unparse_fcname): Fix typo (swidth->width).
15486 (font_list_entities): Check driver_list->on.
15487 (register_font_driver): Initalize `on' member to 0.
15488 (font_update_drivers): New function.
15489 (Fclear_font_cache): Check driver_list->on.
15490
15491 * frame.h (Qfont_backend): Extern it.
15492 (x_set_font_backend): Extern it.
15493
15494 * frame.c (Qfont_backend): New variable.
15495 (frame_parms): New element for font-backend.
15496 (x_set_font_backend): New function.
15497
15498 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
15499 FontBackend frame parameter.
15500 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
15501 x_set_font_backend.
15502
15503 * xfont.c (xfont_list): Don't try listing by :name property if the
15504 name is not for XLFD.
15505
155062008-02-01 Kenichi Handa <handa@m17n.org>
15507
15508 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
15509 (LGLYPH_SET_TO): New macros.
15510 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
15511 element of G is vector or not.
15512 (font_at): Extern it.
15513
15514 * font.c: Include window.h.
15515 (font_lispy_object): New function.
15516 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
15517 end of valid glyph.
15518 (font_close_object): Fix getting (struct font *).
15519 (font_at): New function.
15520 (Ffont_get): If FONT is a font-object, get entity from it.
15521 (Ffont_make_gstring): Initialize elements of glyphs with nil.
15522 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
15523 range check.
15524 (Ffont_at): New function.
15525 (syms_of_font): Defsubr Sfont_at.
15526
15527 * xdisp.c (it_props): Move the entry for Qauto_composed to just
15528 before the entry for Qcomposition.
15529 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
15530 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
15531 the font in gstring.
15532 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
15533 LGLYPH_FORM (g) to detect the end of valid glyph.
15534 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
15535 we are composing with gstring.
15536
15537 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
15538 Check if adjustment is vector or not.
15539
15540 * Makefile.in (font.o): Make it depends on window.h.
15541
155422008-02-01 Kenichi Handa <handa@m17n.org>
15543
15544 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
15545 adjustment is vector or not.
15546
155472008-02-01 Miles Bader <miles@gnu.org>
15548
15549 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
15550
155512008-02-01 Kenichi Handa <handa@m17n.org>
15552
15553 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
15554 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
15555 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
15556
15557 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
15558 (DEVICE_DELTA): Fix typo.
15559 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
15560 LGLYPH format.
15561
15562 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15563 the change of LGLYPH format.
15564
155652008-02-01 Kenichi Handa <handa@m17n.org>
15566
15567 * ftfont.c (ftfont_list): Fix typo.
15568 (ftfont_build_basic_charsets): Don't include letters with diacritics.
15569
155702008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15571
15572 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
15573
15574 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
15575 xftface_info is non-NULL.
15576
155772008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15578
15579 * ftfont.c (ftfont_list): Move misplaced #endif.
15580
155812008-02-01 Kenichi Handa <handa@m17n.org>
15582
15583 * ftfont.c (ftfont_list): Pay attention to the case that
15584 FC_CAPABILITY is not defined.
15585
155862008-02-01 Kenichi Handa <handa@m17n.org>
15587
15588 * xftfont.c (xftfont_open): Set charset related members to -1.
15589
15590 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
15591 QCname.
15592 (ftfont_open): Set charset related members to -1.
15593
15594 * fontset.c (Votf_script_alist): New variable.
15595 (syms_of_fontset): Initialize it.
15596 (fontset_font): Delete unused variable.
15597
15598 * fontset.h (Votf_script_alist): Extern it.
15599
15600 * font.c (font_find_for_lface): Optimize code.
15601
15602 * font.h (font_close_object, font_merge_old_spec): Extern them.
15603
156042008-02-01 Kenichi Handa <handa@m17n.org>
15605
15606 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
15607 (syms_of_font): Initialize them.
15608 (font_pixel_size): Allow float value in dpi.
15609 (font_prop_validate_type): Delete.
15610 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
15611 Change caller.
15612 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
15613 (font_prop_validate_extra): Delete.
15614 (font_prop_validate_spacing): New function.
15615 (font_property_table): Add elements for all known properties.
15616 (get_font_prop_index): Rename from check_font_prop_name. New
15617 argument FROM. Change caller.
15618 (font_prop_validate): Validate all known properties.
15619 (font_put_extra): Delete argument force. Change caller.
15620 (font_expand_wildcards): Make it static. Fix the way of shrinking
15621 the possible range.
15622 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
15623 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
15624 Change caller.
15625 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
15626 (font_parse_fcname): Delete argument merge. Fix parsing of point
15627 size. Don't validate properties values here. Change caller.
15628 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
15629 (font_open_by_name): Delete unused variable.
15630 (Ffont_spec): Likewise. Validate property values.
15631 (Ffont_match_p): New function.
15632
15633 * font.h (QCscalable): Extern it.
15634 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
15635
15636 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
15637
15638 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
15639 (xfont_list_pattern): New function.
15640 (xfont_list): Use xfont_list_pattern.
15641
156422008-02-01 Kenichi Handa <handa@m17n.org>
15643
15644 * font.h (Flist_fonts): EXFUN it.
15645
156462008-02-01 Jason Rumney <jasonr@gnu.org>
15647
15648 * w32term.c (w32_initialize): Add back smoothing_type and
15649 smoothing_enabled definitions.
15650
156512008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
15654 s->face->font on determining underline position.
15655
156562008-02-01 Kenichi Handa <handa@m17n.org>
15657
15658 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
15659 (font_has_char): Accept font-object too.
15660 (font_find_for_lface): Try at first with a size specified in face.
15661
156622008-02-01 Kenichi Handa <handa@m17n.org>
15663
15664 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
15665 font_open_by_name.
15666
156672008-02-01 Kenichi Handa <handa@m17n.org>
15668
15669 * font.h (QCspacing, QCdpi): Extern them.
15670 (enum font_spacing): New enum.
15671 (FONT_PIXEL_SIZE_QUANTUM): New macro.
15672
15673 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
15674 (QCspacing, QCdpi): New variables.
15675 (syms_of_font): Initialize them.
15676 (font_pixel_size): New function.
15677 (font_put_extra): New function.
15678 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
15679 in FONT_EXTRA.
15680 (font_parse_fcname): Handle enumerated values (e.g. bold).
15681 Fix handling font size. Add QCname property that contains only
15682 unknown properties.
15683 (font_score): Change argument. Change caller. Pay attention to
15684 FONT_PIXEL_SIZE_QUANTUM.
15685 (font_sort_entites, font_list_entities, font_find_for_lface)
15686 (font_open_for_lface, font_open_by_name): Fix handling of font size.
15687 (Ffont_spec): Add QCname property that contains only unknown properties.
15688
15689 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
15690 include weight in listing pattern, instead check weight of each
15691 listed font. Don't include scalable in pattern. Pay attention to
15692 FONT_PIXEL_SIZE_QUANTUM.
15693
156942008-02-01 Kenichi Handa <handa@m17n.org>
15695
15696 * font.c (font_parse_fcname): Fix parsing of point-size.
15697 (font_unparse_fcname): Produce symbolic names for style properties.
15698 (font_list_entities): Handle float size correctly.
15699 (font_open_by_name): Prefer `normal' property values if the name
15700 doesn't specify them.
15701
15702 * fontset.c (Finternal_char_font): Use font_get_name, not
15703 Ffont_xlfd_name.
15704
15705 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
15706 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
15707 pattern. Don't force scalable.
15708
15709 * xftfont.c (xftfont_open): For generating a name, start from
15710 96-byte buffer.
15711
157122008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15713
15714 * frame.h (x_new_fontset2): Fix prototype.
15715
157162008-02-01 Kenichi Handa <handa@m17n.org>
15717
15718 * font.h (struct font_driver): Delete member parse_name.
15719 (font_match_p, font_get_spec, font_parse_fcname)
15720 (font_unparse_fcname): Extern them.
15721 (font_get_name): Adjust prototype.
15722
15723 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
15724 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
15725 (font_expand_wildcards): Fix handling ENCODING field. Avoid
15726 unnecessary checks for weight, slant, and swidth.
15727 (font_parse_fcname): New function.
15728 (font_unparse_fcname): New function.
15729 (font_parse_name): New function.
15730 (font_match_p): New function.
15731 (font_get_name): Change return value to Lisp string.
15732 (font_get_spec): New function.
15733 (Qunspecified, Qignore_defface): Don't extern them.
15734 (font_find_for_lface): Assume that LFACE is fully specified.
15735 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
15736 object, use it for FACE.
15737 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
15738 driver->parse_name.
15739 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
15740
15741 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
15742 prototype.
15743
15744 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
15745 argument F. Don't call Fnew_fontset. Instead, directly call
15746 make_fontset.
15747
15748 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
15749
15750 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
15751 of x_new_fontset2.
15752
15753 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
15754 (Qsans__serif): New variables.
15755 (ftfont_generic_family_list): New variable.
15756 (syms_of_ftfont): Initialize the above variables.
15757 (ftfont_pattern_entity): Delete argument NAME.
15758 (ftfont_list_generic_family): New function.
15759 (ftfont_parse_name): Delete this function.
15760 (ftfont_list): Try generic family only when FcFontList found no font.
15761 (ftfont_list_family): Fix args to FcObjectSetBuild.
15762
15763 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
15764 object in attrs[LFACE_FONT_INDEX].
15765 (set_lface_from_font_name): Cancel all changes for font-backend.
15766 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
15767 function.
15768 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
15769 font object in QCfont attribute.
15770 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
15771 (realize_default_face) [USE_FONT_BACKEND]: Call
15772 set_lface_from_font_and_fontset.
15773
15774 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
15775 "fixed", and signal error here if no suitable font was found.
15776
15777 * xfont.c (xfont_parse_name): Delete this function.
15778
15779 * xftfont.c (xftfont_open): Change coding style of error
15780 handling. Generate fontconfig's fontname pattern.
15781
15782 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
15783 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
15784
15785 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
15786 Both args FONTSET and FONT_OBJECT must be existing ones.
15787
157882008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15789
15790 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
15791
157922008-02-01 Kenichi Handa <handa@m17n.org>
15793
15794 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
15795
15796 * font.h (struct font): Fix typo.
15797
15798 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
15799 XLFD_XXX_INDEX.
15800 (enum xlfd_field_mask): New enum.
15801 (intern_font_field): Changed argument. Change caller. If digits
15802 are followed by non-digits, return a symbol.
15803 (font_expand_wildcards): New function.
15804 (font_parse_xlfd): Fix wildcard handling.
15805 (Ffont_spec): If :name is specified, reflect the info in the other
15806 properties.
15807
15808 * ftfont.c (ftfont_pattern_entity): Fix typo.
15809 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
15810 locale.
15811
158122008-02-01 Kenichi Handa <handa@m17n.org>
15813
15814 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
15815
15816 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
15817 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
15818 registry doesn't specify encoding part.
15819 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
15820 (font_open_by_name): At first try parsing the name.
15821 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
15822 as Lisp symbols.
15823
15824 * fontset.c (reorder_font_vector): Pay attention to the case that
15825 the 3rd element of font_def is nil.
15826 (fontset_font): For the default fontset, append one more fontset
15827 elements for a script-based font specification. Don't add script
15828 attribute on finding a font.
15829 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
15830 font name.
15831 (fontset_ascii_font): If a font can't be opened, return nil.
15832
15833 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
15834 (ftfont_pattern_entity): New function.
15835 (ftfont_get_cache): Assume that freetype_font_cache is already
15836 initialized.
15837 (ftfont_list): Handle the case that a file is specified in font
15838 name. Use ftfont_pattern_entity to generate entities.
15839 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
15840 (syms_of_ftfont): Initialize freetype_font_cache.
15841
15842 * xftfont.c (xftfont_open): Make the font name fontconfig's
15843 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
15844 (xftfont_close): Free font->font.name if not NULL.
15845
15846 * xfont.c (xfont_list): If script is specified for a font, return
15847 null_vector.
15848 (xfont_list_family): Declare argument type.
15849
15850 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
15851 name, set LFACE_FONT (lface) to nil.
15852
15853 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
15854 return Qnil.
15855
158562008-02-01 Kenichi Handa <handa@m17n.org>
15857
15858 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
15859 (standard_args): Add "-enable-font-backend".
15860
158612008-02-01 Kenichi Handa <handa@m17n.org>
15862
15863 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
15864 (struct xftdraw_list, xftdraw_list): Delete them.
15865 (register_xftdraw, check_xftdraw): Delete them.
15866 (xftfont_prepare_face): Don't call register_xftdraw.
15867 (xftfont_done_face): Don't call check_xftdraw.
15868 (xftfont_draw): Get background color only when with_background is
15869 nonzero.
15870
15871 * xfont.c (xfont_encode_char): Fix calculation of char2b.
15872
158732008-02-01 Kenichi Handa <handa@m17n.org>
15874
15875 These changes are for the new font handling codes.
15876
15877 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
15878 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
15879 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
15880 (FONTSRC, FONTOBJ): New variables.
15881 (obj): Add $(FONTOBJ).
15882 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
15883 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
15884 @LIBOTF_LIBS@.
15885 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
15886 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
15887
15888 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
15889
15890 * character.h (Vscript_representative_chars): Extern it.
15891
15892 * character.c (Vscript_representative_chars): New variable.
15893 (syms_of_character): Declare it as a Lisp variable.
15894
15895 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
15896 enable_font_backend is nonzero, accept the composition method
15897 COMPOSITION_WITH_GLYPH_STRING.
15898
15899 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
15900 enumeration COMPOSITION_WITH_GLYPH_STRING.
15901
15902 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
15903 members clip_x, clip_y, clip_width, and clip_height.
15904 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
15905
15906 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
15907 --enable-font-backend. Call syms_of_font.
15908
15909 * fns.c (assoc_no_quit): New function.
15910
15911 * fontset.h (FONT_INFO_FROM_FACE): New macro.
15912 (face_for_font, new_fontset_from_font)
15913 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
15914
15915 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
15916 (fontset_font, fontset_ascii, face_for_char)
15917 (make_fontset_for_ascii_face, Ffont_info)
15918 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
15919 is nonzero, use font-backend mechanism.
15920 (find_font_encoding): Make it non-static.
15921 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
15922 New functions.
15923
15924 * frame.h (struct frame): New members resx and resy.
15925 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
15926 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
15927
15928 * frame.c [USE_FONT_BACKEND]: Include "font.h".
15929 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
15930
15931 * lisp.h (assoc_no_quit): Extern it.
15932
15933 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
15934 Through out the file, use FONT_INFO_FROM_FACE instead of
15935 FONT_INFO_FROM_ID, use get_per_char_metric instead of
15936 rif->per_char_metric.
15937 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
15938 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
15939 (get_glyph_face_and_encoding, fill_composite_glyph_string)
15940 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15941 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
15942 nonzero, use font-backend mechanism.
15943 (get_per_char_metric): New function.
15944
15945 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
15946 (set_lface_from_font_name)
15947 (set_font_frame_param, free_realized_face)
15948 (prepare_face_for_display, clear_face_gcs)
15949 (Finternal_set_font_selection_order, realize_x_face)
15950 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
15951 font-backend mechanism.
15952 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
15953 (load_face_font) [USE_FONT_BACKEND]: Abort.
15954 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
15955 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
15956
15957 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
15958 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
15959 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
15960 nonzero, register all available font drivers. Call
15961 x_default_font_parameter for deciding a font.
15962 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
15963
15964 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
15965 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
15966 (x_set_glyph_string_clipping_exactly)
15967 (x_compute_glyph_string_overhangs)
15968 (x_draw_glyph_string_foreground)
15969 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
15970 (x_free_frame_resources) [USE_FONT_BACKEND]: If
15971 enable_font_backend is nonzero, use font-backend mechanism.
15972 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
15973
159742008-02-01 Kenichi Handa <handa@m17n.org>
15975
15976 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
15977 system_eol_type.
15978 (syms_of_coding): Initialize system_eol_type.
15979
15980 * process.c (Fset_process_coding_system): Inherit system's eol
15981 format if necessary.
15982
159832008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15984
15985 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
15986
159872008-02-01 Kenichi Handa <handa@m17n.org>
15988
15989 * coding.c (decode_eol): Pay attention to buffer relocation in
15990 del_range_2.
15991 (decode_coding): Call decode_eol before restoring undo_list.
15992
159932008-02-01 Kenichi Handa <handa@m17n.org>
15994
15995 * charset.c (Fdefine_charset_internal): Fix setting of
15996 emacs_mule_bytes.
15997
159982008-02-01 Kenichi Handa <handa@m17n.org>
15999
16000 * keyboard.c (read_char): Check if C is a character or not before
16001 looking up Vkeyboard_translate_table.
16002
160032008-02-01 Kenichi Handa <handa@m17n.org>
16004
16005 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16006 condition to terminate the loop.
16007
160082008-02-01 Kenichi Handa <handa@m17n.org>
16009
16010 * coding.c (produce_composition): Compare charbuf[i] instead of
16011 args[i] against 0.
16012 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16017 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16018 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16019 detect_coding.
16020 (emacs_mule_char): Handle old style (Emacs 20) component character
16021 of a composition.
16022 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16023 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16024 composition rule.
16025 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16026
160272008-02-01 Kenichi Handa <handa@m17n.org>
16028
16029 * coding.c (encode_coding_ccl): Allocate destination dynamically
16030 when necessary.
16031
160322008-02-01 Kenichi Handa <handa@m17n.org>
16033
16034 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16035 the loop. When quitted, show a proper error message.
16036
160372008-02-01 Kenichi Handa <handa@m17n.org>
16038
16039 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16040 src->clip_head and src->clip_tail temporarily instead of src->hl.
16041
16042 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16043 character sequence.
16044 (Fccl_execute_on_string): Use ASET, not XSET.
16045
160462008-02-01 Kenichi Handa <handa@m17n.org>
16047
16048 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16049
160502008-02-01 Kenichi Handa <handa@m17n.org>
16051
16052 * coding.c (decode_coding): Fix the condition of terminating the
16053 decoding loop.
16054
160552008-02-01 Kenichi Handa <handa@m17n.org>
16056
16057 * data.c (Faset): On setting a character bigger than 255 in a
16058 unibyte string, signal an error instead of make the string multibyte.
16059
160602008-02-01 Kenichi Handa <handa@m17n.org>
16061
16062 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16063 made by a mapping table.
16064
160652008-02-01 Kenichi Handa <handa@m17n.org>
16066
16067 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16068 not.
16069 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16070 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16071
16072 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16073 s->face is NULL or not.
16074
160752008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16078 (x_draw_glyph_string): Fix drawing of right_overhang and
16079 left_overhang around/on cursor.
16080
16081 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16082
160832008-02-01 Kenichi Handa <handa@m17n.org>
16084
16085 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16086
160872008-02-01 Kenichi Handa <handa@m17n.org>
16088
16089 * coding.c (Fdefine_coding_system_internal)
16090 (Fdefine_coding_system_alias): Avoid a duplicated element in
16091 Vcoding_system_alist.
16092
160932008-02-01 Kenichi Handa <handa@m17n.org>
16094
16095 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16096
16097 * coding.c (Qcoding_system_define_form): New variable.
16098 (syms_of_coding): Intern and staticpro it.
16099 (Fcoding_system_p): Check Qcoding_system_define_form.
16100 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16101
16102 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16103 Fcoding_system_p.
16104 (CHECK_CODING_SYSTEM): If ID is not available, call
16105 Fcheck_coding_system.
16106 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16107 Try also Fcheck_coding_system.
16108
161092008-02-01 Kenichi Handa <handa@m17n.org>
16110
16111 * coding.c (code_conversion_restore): GCPRO arg.
16112
161132008-02-01 Kenichi Handa <handa@m17n.org>
16114
16115 * character.c (lisp_string_width): Check multibyteness of STRING.
16116
161172008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16118
16119 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16120 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16121 (decode_mac_font_name): Use decode_coding_c_string instead of
16122 decode_coding.
16123 (x_load_font): Initialize fontp->fontset to -1. Set
16124 fontp->encoding_type.
16125
161262008-02-01 Kenichi Handa <handa@m17n.org>
16127
16128 * search.c (search_buffer): Give up BM search on case-fold-search
16129 if one of a target character has a case-equivalence of different
16130 byte length even if that target charcter is an ASCII.
16131 (simple_search): Fix calculation of byte length of matched text.
16132 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16133
161342008-02-01 Kenichi Handa <handa@m17n.org>
16135
16136 * coding.c (decode_coding): Fix handling of invalid bytes.
16137
161382008-02-01 Kenichi Handa <handa@m17n.org>
16139
16140 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16141 Unicode characters.
16142
161432008-02-01 Kenichi Handa <handa@m17n.org>
16144
16145 * coding.c (encode_coding_object): If a pre-write-conversion
16146 function makes a new buffer, kill it.
16147
161482008-02-01 Kenichi Handa <handa@m17n.org>
16149
16150 * coding.c (QCascii_compatible_p): New variable.
16151 (syms_of_coding): Initialize it.
16152 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16153 calling string_char.
16154 (record_conversion_result): Add `default:' case.
16155 (coding_charset_list): Delete unused variable `coding_type'.
16156 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16157 property in the plist of the coding system.
16158 (Fcoding_system_put): Check QCascii_compatible_p.
16159
161602008-02-01 Miles Bader <miles@gnu.org>
16161
16162 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16163 removed calculation of frame `f', as it's now used.
16164
161652008-02-01 Kenichi Handa <handa@m17n.org>
16166
16167 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16168 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16169 (UNIDATA): New variable.
16170 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16171 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16172 $(RUN_TEMACS) unconditionally.
16173
161742008-02-01 Kenichi Handa <handa@m17n.org>
16175
16176 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16177 (admindir): New variable.
16178 ($(lispsource)international/charprop.el): New target.
16179
161802008-02-01 Miles Bader <miles@gnu.org>
16181
16182 * character.c (chars-in-region): Remove obsolete function.
16183 (syms_of_character): Remove its initialization.
16184
161852008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16186
16187 * w32select.c (validate_coding_system)
16188 (setup_windows_coding_system): New functions.
16189 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16190 setup_windows_coding_system.
16191 (setup_config, Fw32_get_clipboard_data): Use
16192 validate_coding_system.
16193 (Fx_selection_exists): Move call to setup_config to a place
16194 where signals are allowed.
16195
16196 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16197 (Fcheck_coding_system): Add declarations.
16198
161992008-02-01 Kenichi Handa <handa@m17n.org>
16200
16201 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16202
162032008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16204
16205 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16206 string as the second argument for x_new_fontset.
16207
162082008-02-01 Kenichi Handa <handa@m17n.org>
16209
16210 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16211 (encode_coding_object): Use safe_call instead of call2.
16212
162132008-02-01 Kenichi Handa <handa@m17n.org>
16214
16215 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16216
16217 * Makefile.in (lisp): Include charprop.el.
16218
162192008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16220
16221 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16222 Not sure if it's unnecessary.
16223
162242008-02-01 Steven Tamm <steventamm@mac.com>
16225
16226 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16227 some possibly unnecessary fontset checking code that crashed
16228 when creating a new frame.
16229
162302008-02-01 Kenichi Handa <handa@m17n.org>
16231
16232 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16233 lookup_face.
16234
16235 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16236
16237 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16238
162392008-02-01 Kenichi Handa <handa@m17n.org>
16240
16241 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16242 (coding_charset_list): New function.
16243
16244 * coding.h (coding_charset_list): Extern it.
16245
162462008-02-01 Kenichi Handa <handa@m17n.org>
16247
16248 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16249 concatenation of family and registry.
16250
162512008-02-01 Kenichi Handa <handa@m17n.org>
16252
16253 * character.h (BYTE8_STRING): Fix typo.
16254
16255 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16256 string to multibyte (sync to HEAD).
16257
16258 * casefiddle.c (casify_region): Handle changes in byte-length
16259 using replace_range_2 (sync to HEAD).
16260
162612008-02-01 Andreas Schwab <schwab@suse.de>
16262
16263 * chartab.c (map_char_table): GCPRO table and arg.
16264
162652008-02-01 Kenichi Handa <handa@m17n.org>
16266
16267 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16268 already at limit.
16269
162702008-02-01 Kenichi Handa <handa@m17n.org>
16271
16272 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16273 instead of fast_c_string_match_ignore_case.
16274 (find_font_encoding): Change argument to Lisp_Object. Use
16275 fast_string_match_ignore_case instead of
16276 fast_c_string_match_ignore_case. Change caller.
16277
162782008-02-01 Kenichi Handa <handa@m17n.org>
16279
16280 * xdisp.c (get_next_display_element): In unibyte case, decide to
16281 display in octal form by checking a character by
16282 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16283
16284 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16285
16286 * character.c (unibyte_has_multibyte_table): New variable.
16287
16288 * character.h (unibyte_has_multibyte_table): Extern it.
16289 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16290
162912008-02-01 Kenichi Handa <handa@m17n.org>
16292
16293 * coding.c (encode_coding_iso_2022): Fix handling of charset
16294 annotation.
16295
162962008-02-01 Kenichi Handa <handa@m17n.org>
16297
16298 * coding.c (setup_coding_system): If coding_system is nil, use
16299 Qundecided.
16300 (Fterminal_coding_system): Return nil if terminal coding system is
16301 `undecided'.
16302 (syms_of_coding): Define coding-system `undecided' here. Setup
16303 terminal_coding as `undecided'.
16304
163052008-02-01 Kenichi Handa <handa@m17n.org>
16306
16307 * xdisp.c (message_dolog, set_message_1): Call
16308 unibyte_char_to_multibyte with arg type int.
16309
16310 * lread.c (read1): Fix reading of a char-table.
16311
16312 * print.c (print_object): Include sub char-table in circularities
16313 detection.
16314
163152008-02-01 Kenichi Handa <handa@m17n.org>
16316
16317 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16318 Append the found sequences in car of ARGS instead of prepending.
16319
163202008-02-01 Kenichi Handa <handa@m17n.org>
16321
16322 * fileio.c (report_file_error): Make a unibyte string from
16323 strerror (errorno).
16324 (Fsubstitute_in_file_name): Fix the arg to
16325 unibyte_char_to_multibyte. It is evaluated twice.
16326
163272008-02-01 Kenichi Handa <handa@m17n.org>
16328
16329 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16330
163312008-02-01 Kenichi Handa <handa@m17n.org>
16332
16333 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16334 BOM is not found.
16335 (detect_coding, detect_coding_system): Optimization for ISO-2022
16336 when no 8-bit data is found.
16337
163382008-02-01 Jason Rumney <jasonr@gnu.org>
16339
16340 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16341
163422008-02-01 Kenichi Handa <handa@m17n.org>
16343
16344 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16345 CHARS.
16346
163472008-02-01 Steven Tamm <steventamm@mac.com>
16348
16349 * macterm.c (mac_encode_char): Add charset argument and update
16350 to use encoding_type.
16351 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16352 switch to pure fontset.
16353 (decode_mac_font_name): Temporarily remove decoding.
16354 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16355 (x_load_font): Temporarily remove encoding.
16356
163572008-02-01 Kenichi Handa <handa@m17n.org>
16358
16359 * xfaces.c (Fface_font): If frame is not on a window system,
16360 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16361 refer to face->font.
16362 (split_font_name_into_vector, build_font_name_from_vector)
16363 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16364 when HAVE_WINDOW_SYSTEM is defined.
16365
163662008-02-01 Kenichi Handa <handa@m17n.org>
16367
16368 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16369 (x_produce_glyphs): Fix setting of members of cmp in case
16370 cmp->glyph_len is zero.
16371
16372 * fontset.c (Fset_fontset_font): Fix docstring.
16373 (Ffontset_info): Make it backward compatible. New arg ALL.
16374
163752008-02-01 Kim F. Storm <storm@cua.dk>
16376
16377 * process.c (read_process_output): Grow decoding_buf when needed;
16378 this could cause a crash in allocate_string and compact_small_strings.
16379
163802008-02-01 Kenichi Handa <handa@m17n.org>
16381
16382 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16383
163842008-02-01 Kenichi Handa <handa@m17n.org>
16385
16386 * coding.c (setup_coding_system): Set coding->common_flags
16387 correctly for raw-text.
16388 (consume_chars): On encoding unibyte text by raw-text, don't check
16389 multibyte form.
16390 (encode_coding): On encoding by raw-text, never use translation tables.
16391
16392 * fileio.c (e_write): Short cut for the case of no encoding.
16393
163942008-02-01 Kenichi Handa <handa@m17n.org>
16395
16396 * coding.c (detect_coding, detect_coding_system): Delete unused
16397 variables.
16398
163992008-02-01 Kenichi Handa <handa@m17n.org>
16400
16401 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
16402 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
16403
164042008-02-01 Kenichi Handa <handa@m17n.org>
16405
16406 * coding.c (Ffind_coding_systems_region_internal): Include
16407 raw-text and no-conversion in the result.
16408
164092008-02-01 Kenichi Handa <handa@m17n.org>
16410
16411 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
16412 (load_font_get_repertory): Delete unnecessary check of ENCODING of
16413 FONT_DEF.
16414 (font_def_arg, add_arg, from_arg, to_arg): New args.
16415 (set_fontset_font): Change argument.
16416 (Fset_fontset_font): Fix for the case that TARGET is a script
16417 name and charset name.
16418 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
16419
164202008-02-01 Kenichi Handa <handa@m17n.org>
16421
16422 * fontset.c (fontset_font): Rename from fontset_face. Change return
16423 value.
16424 (face_suitable_for_char_p, face_for_char): Adjust for the change
16425 of fontset_font.
16426 (make_fontset_for_ascii_face): Fix setting of the fontset element
16427 for ASCII.
16428 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
16429 to get a font name.
16430 (Ffontset_info): Adjust for the change of fontset_font.
16431
16432 * coding.c (emacs_mule_char): Check invalid code more rigidly.
16433
16434 * character.h (LEADING_CODE_LATIN_1_MIN)
16435 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
16436
164372008-02-01 Kenichi Handa <handa@m17n.org>
16438
16439 * editfns.c (check_translation): New function.
16440 (Ftranslate_region_internal): Handle M:N mapping.
16441
164422008-02-01 Kenichi Handa <handa@m17n.org>
16443
16444 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
16445
164462008-02-01 Kenichi Handa <handa@m17n.org>
16447
16448 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
16449 goto invalid_code.
16450 (decode_coding_iso_2022): Fix handling of invalid designation.
16451
16452 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
16453 after calling code_conversion_save.
16454
164552008-02-01 Kenichi Handa <handa@m17n.org>
16456
16457 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
16458
16459 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
16460
16461 * fontset.c: Include "intervals.h".
16462 (fontset_face): Fix comparing of Lisp_Objects.
16463 (free_face_fontset, new_fontset_from_font_name): Fix
16464 Lisp_Object/int mixup.
16465
16466 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
16467
16468 * coding.c: Add many prototypes for static functions.
16469 (get_translation_table): Allow max_lookup to be NULL.
16470 (decode_coding, Ffind_coding_systems_region_internal)
16471 (Funencodable_char_position, Fcheck_coding_systems_region): Call
16472 get_translation_table with max_lookup NULL.
16473
164742008-02-01 Kenichi Handa <handa@m17n.org>
16475
16476 * coding.c (get_translation_table): Declare it as Lisp_Object.
16477 (LOOKUP_TRANSLATION_TABLE): New macro.
16478 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
16479 instead of CHAR_TABLE_REF.
16480
164812008-02-01 Kenichi Handa <handa@m17n.org>
16482
16483 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
16484 annotation data format.
16485 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
16486 Change arguments FROM and TO to single argument NCHARS. Change caller.
16487 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
16488 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16489 (decode_coding_ccl, decode_coding_charset): Pay attention to
16490 coding->charbuf_used.
16491 (get_translation): New function.
16492 (produce_chars): New arguments translation_table and last_block.
16493 Translate characters here. Return number of carryover chars.
16494 Change caller.
16495 (produce_composition): New argument pos. Change caller.
16496 Adjust for the change of annotation data format.
16497 (produce_charset, produce_annotation): Likewise.
16498 (decode_coding, encode_coding): Don't call translate_chars.
16499 (consume_chars): New arg translation_table. Change caller.
16500 (translate_chars): Delete.
16501 (syms_of_coding): Make translation-table's number of extra slots 2.
16502
165032008-02-01 Kenichi Handa <handa@m17n.org>
16504
16505 * search.c (simple_search): Fix setting this_pos_byte in backward
16506 search.
16507
16508 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
16509 byte sequence.
16510 (detect_coding_ccl): Fix setting of the variable valids.
16511
165122008-02-01 Kenichi Handa <handa@m17n.org>
16513
16514 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
16515
16516 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
16517
16518 * editfns.c (Ftranslate_region_internal): Rename from
16519 Ftranslate_region. Accept a char-table in TABLE.
16520 (syms_of_editfns): Defsubr Stranslate_region_internal.
16521
16522 * xfaces.c (set_lface_from_font_name): If a font is specified for
16523 a frame, generate a fontset from the font.
16524 (build_scalable_font_name): If the scalable font is requested for
16525 a specific size, don't change that size.
16526 (try_font_list): Try a scalable font also in the case that a
16527 pattern string is specified.
16528
165292008-02-01 Kenichi Handa <handa@m17n.org>
16530
16531 * xfaces.c (Fface_font): New optional arg CHARACTER.
16532
165332008-02-01 Kenichi Handa <handa@m17n.org>
16534
16535 * charset.h (CHARSET_OFFSET): New macro.
16536
165372008-02-01 Kenichi Handa <handa@m17n.org>
16538
16539 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
16540
16541 * fontset.c (fontset_face): Handle the case that repertory is a
16542 char-table.
16543 (find_font_encoding): Return nil for unknown encoding.
16544 (Fset_fontset_font): Ignore a font of unknown encoding.
16545
165462008-02-01 Kenichi Handa <handa@m17n.org>
16547
16548 * keymap.c (describe_vector): Handle default value of a char table.
16549
16550 * fontset.c (fontset_face): Handle fallback fonts correctly.
16551 (Ffontset_info): Return infomation about fallback fonts.
16552
165532008-02-01 Kenichi Handa <handa@m17n.org>
16554
16555 * fontset.c (FONTSET_DEFAULT): New macro.
16556 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
16557 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
16558 the case that it is nil.
16559 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
16560 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
16561
16562 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
16563 subset or superset.
16564
165652008-02-01 Kenichi Handa <handa@m17n.org>
16566
16567 * emacs.c (main): Call init_charset after syms_of_XXX.
16568
16569 * charset.c (Vcharset_map_directory): Delete.
16570 (Vcharset_map_path): New variable.
16571 (load_charset_map_from_file): Use Vcharset_map_path instead.
16572 (init_charset): Initialize Vcharset_map_path.
16573 (syms_of_charset): Delete declaration of "charset-map-directory",
16574 add declaration of "charset-map-path".
16575
165762008-02-01 Kenichi Handa <handa@m17n.org>
16577
16578 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
16579 ASCII only string.
16580
16581 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
16582
16583 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
16584 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
16585
165862008-02-01 Kenichi Handa <handa@m17n.org>
16587
16588 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
16589
16590 * coding.c (QCmnemonic, QCdefalut_char)
16591 (QCdecode_translation_table, QCencode_translation_table)
16592 (QCpost_read_conversion, QCpre_write_conversion): New variables.
16593 (get_translation_table): Return a list of translation tables if
16594 necessary.
16595 (decode_coding): Call get_translation_table with ENCODEP 0.
16596 (char_encodable_p): If translation_table is non-nil, always call
16597 translate_char.
16598 (Fdefine_coding_system_internal): Accept list of translation
16599 tables as :encode-translation-table and :decode-translation-table.
16600 (Fcoding_system_put): New function.
16601 (syms_of_coding): Declare new symbols. Defsubr
16602 Scoding_system_put.
16603 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
16604 typically JISX0212.
16605
16606 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
16607 when the charset is superset type.
16608
16609 * character.c (translate_char): Accept list of translation tables.
16610
166112008-02-01 Kenichi Handa <handa@m17n.org>
16612
16613 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
16614 (CODING_ATTR_TRANS_TBL): New macro.
16615
16616 * coding.c (get_translation_table): New function.
16617 (translate_chars): Fix the bug of skipping annotation data.
16618 (decode_coding, encode_coding): Utilize get_translation_table.
16619 (char_encodable_p, Funencodable_char_position): Translate char if
16620 necessary.
16621 (Ffind_coding_systems_region_internal)
16622 (Fcheck_coding_systems_region): Setup translation table for encode
16623 in a coding system attribute vector in advance.
16624 (Fdefine_coding_system_internal): Allow a symbol as translation
16625 table. For shift-jis type coding system, allow 4th charset.
16626
166272008-02-01 Kenichi Handa <handa@m17n.org>
16628
16629 * coding.c (decode_coding_sjis): Check the first byte rigidly.
16630
16631 * xdisp.c (get_next_display_element): Pass -1 as POS to
16632 FACE_FOR_CHAR if displaying a C-string.
16633
166342008-02-01 Kenichi Handa <handa@m17n.org>
16635
16636 * composite.c (get_composition_id): Handle xoff and yoff in a
16637 composition rule.
16638
16639 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
16640 (struct composition): New member lbearing and rbearing.
16641
16642 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
16643 (x_get_glyph_overhangs): Handle a composition glyph.
16644 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
16645
16646 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
16647 composition glyph.
16648
166492008-02-01 Kenichi Handa <handa@m17n.org>
16650
16651 * print.c: Include charset.h.
16652 (Vprint_charset_text_property): New variable.
16653 (Qdefault): Extern it.
16654 (PRINT_STRING_NON_CHARSET_FOUND)
16655 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
16656 (print_check_string_result): New variable.
16657 (print_check_string_charset_prop): New function.
16658 (print_prune_charset_plist): New variable.
16659 (print_prune_string_charset): New function.
16660 (print_object): Call print_prune_string_charset if
16661 Vprint_charset_text_property is not t.
16662 (print_interval): Print nothing if interval->plist is nil.
16663 (syms_of_print): Declare Vprint_charset_text_property as a lisp
16664 variable. Init and staticpro print_prune_charset_plist.
16665
166662008-02-01 Kenichi Handa <handa@m17n.org>
16667
16668 * fontset.c (new_fontset_from_font_name): Use the specified font
16669 for all characters in the new fontset.
16670
16671 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16672 OBJECT args.
16673
16674 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
16675 OBJECT args for composition too.
16676
16677 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16678 OBJECT args.
16679
166802008-02-01 Kenichi Handa <handa@m17n.org>
16681
16682 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
16683
16684 * fontset.c (reorder_font_vector): Adjust for the change of
16685 FONT_DEF format.
16686 (fontset_face): New arg id. Change caller.
16687 (face_for_char): New args pos and object.
16688 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
16689 (fs_query_fontset): Check NAME by Fassoc too.
16690 (Fset_fontset_font): Allow non-XLFD font name.
16691 (Ffontset_info): Adjust for the change of FONT_DEF format.
16692
16693 * fontset.h (face_for_char): Adjust prototype.
16694
16695 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
16696 (append_space, extend_face_to_end_of_line)
16697 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16698 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
16699
16700 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
16701 POS and OBJECT args.
16702
16703 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
16704 POS and OBJECT args.
16705
167062008-02-01 Jason Rumney <jasonr@gnu.org>
16707
16708 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
16709 of GlobalAlloc'ed memory.
16710
167112008-02-01 Kenichi Handa <handa@m17n.org>
16712
16713 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
16714
16715 * charset.h (charset_table_used): Delete extern.
16716
16717 * charset.c (charset_table_used): Make it static.
16718 (map_charset_chars): Fix args to c_function with.
16719
16720 * chartab.c (map_sub_char_table_for_charset): Fix args to
16721 c_function with.
16722
16723 * coding.h (enum coding_result_code): Delete
16724 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
16725
16726 * coding.c (Qinsufficient_source, Qinconsistent_eol)
16727 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
16728 (Vlast_code_conversion_error): New variables.
16729 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
16730 (ONE_MORE_BYTE): Record error if any instead of signaling an
16731 error. If non-ASCII multibyte char is found, return the negative
16732 value of the code. All callers changed to check it.
16733 (ONE_MORE_BYTE_NO_CHECK): Likewise.
16734 (record_conversion_result): New function. Change all codes setting
16735 coding->result to call this function.
16736 (detect_coding_utf_8, decode_coding_utf_8)
16737 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
16738 Don't use the local variable incomplete.
16739 (emacs_mule_char): Change the second arg to `const'.
16740 (decode_coding): Fix of flushing out unprocessed data.
16741 (make_conversion_work_buffer): Fix making of a work buffer.
16742 (decode_coding_object): Return coding->dst_object.
16743
16744 * fontset.c (set_fontset_font): Fix args.
16745
16746 * lisp.h (CHARACTERBITS): Define as 22.
16747
16748 * process.c (send_process): Be sure to set coding->src_multibyte.
16749
16750 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
16751
167522008-02-01 Kenichi Handa <handa@m17n.org>
16753
16754 * xdisp.c (handle_auto_composed_prop): Give limit to
16755 Fnext_single_char_property_change.
16756
167572008-02-01 Kenichi Handa <handa@m17n.org>
16758
16759 * composite.c (syms_of_composite): Don't make the composition hash
16760 table weak.
16761
16762 * fontset.c (Fset_fontset_font): Fix docstring.
16763
16764 * lisp.h (detect_coding_system): Adjust prototype.
16765
16766 * fileio.c (kill_workbuf_unwind): Delete this function.
16767 (Finsert_file_contents): Adjust the call of detect_coding_system.
16768 Get conversion_buffer by code_conversion_save. Use the macro
16769 CODING_MAY_REQUIRE_DECODING. After decoding, update
16770 coding_system.
16771
16772 * coding.h (make_conversion_work_buffer): Delete extern.
16773 (code_conversion_save): Extern it.
16774
16775 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
16776 (CODING_GET_INFO): Delete argument eol_type. Change callers.
16777 (decode_coding_utf_8): Don't do eol converion.
16778 (detect_coding_utf_16): Check coding->src_chars, not
16779 coding->src_bytes. Add heuristics for those that have no signature.
16780 (decode_coding_emacs_mule, decode_coding_iso_2022)
16781 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16782 Don't do eol converion.
16783 (adjust_coding_eol_type): Return a new coding system.
16784 (detect_coding): Don't detect eol. Fix for utf-16 detection.
16785 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
16786 each change.
16787 (decode_coding): Pay attention to undo_list. Do eol conversion for
16788 all types of coding-systems (if necessary).
16789 (Vcode_conversion_work_buf_list): Delete it.
16790 (Vcode_conversion_reused_workbuf): Rename from
16791 Vcode_conversion_reused_work_buf.
16792 (Vcode_conversion_workbuf_name): New variable.
16793 (reused_workbuf_in_use): New variable.
16794 (make_conversion_work_buffer): Delete the arg DEPTH.
16795 (code_conversion_restore): Change argument to cons.
16796 (code_conversion_save): Delete the argument BUFFER. Change callers.
16797 (detect_coding_system): New argument src_chars. Change callers.
16798 Fix for utf-16 detection.
16799 (init_coding_once): Don't use ISO_carriage_return.
16800 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
16801 reused_workbuf_in_use.
16802
168032008-02-01 Kenichi Handa <handa@m17n.org>
16804
16805 * keymap.c (store_in_keymap): Pay attention to the case that idx
16806 is a cons specifying a character range.
16807
168082008-02-01 Kenichi Handa <handa@m17n.org>
16809
16810 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
16811 HANDLED_RECOMPUTE_PROPS.
16812
16813 * coding.c (Fdefine_coding_system_internal): Fix checking of
16814 ascii compatibility.
16815
168162008-02-01 Kenichi Handa <handa@m17n.org>
16817
16818 * charset.c (find_charsets_in_text): Delete unused locale variable.
16819 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
16820
16821 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
16822 Resync charset_list to Vemacs_mule_charset_list.
16823
16824 * keymap.c (store_in_keymap): Pay attention to the case that idx
16825 is a cons specifying a character range.
16826
168272008-02-01 Kenichi Handa <handa@m17n.org>
16828
16829 * composite.c (update_compositions): Bind inhibit-read-only, etc
16830 to t before calling remove-list-of-text-properties.
16831
16832 * print.c (print_object): Always print ASCII chars as is.
16833
168342008-02-01 Kenichi Handa <handa@m17n.org>
16835
16836 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
16837
16838 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
16839 is a char table.
16840
168412008-02-01 Kenichi Handa <handa@m17n.org>
16842
16843 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
16844
168452008-02-01 Kenichi Handa <handa@m17n.org>
16846
16847 * xfaces.c (set_lface_from_font_name): Fix for the case that
16848 FONTNAME is not fontset name.
16849
168502008-02-01 Kenichi Handa <handa@m17n.org>
16851
16852 * fns.c (base64_encode_1): Fix previous change.
16853
168542008-02-01 Kenichi Handa <handa@m17n.org>
16855
16856 * fontset.c (set_fontset_font): New function.
16857 (Fset_fontset_font): If a font is specified for a charset, use
16858 map_charset_chars to store the font spec in a fontset.
16859
168602008-02-01 Kenichi Handa <handa@m17n.org>
16861
16862 * fontset.c (fontset_face): Create a fallback fontset on demand.
16863 (make_fontset): Don't create a fallback fontset here.
16864 (free_face_fontset): Free a fallback fontset (if any) too.
16865 (n_auto_fontsets): Delete this variable.
16866 (auto_fontset_alist): New variable.
16867 (new_fontset_from_font_name): Check auto_fontset_alist.
16868 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
16869 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
16870 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
16871 Defsubr Sfontset_list_all.
16872
168732008-02-01 Kenichi Handa <handa@m17n.org>
16874
16875 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
16876
168772008-02-01 Kenichi Handa <handa@m17n.org>
16878
16879 * fontset.c (Fnew_fontset): Check NAME more rigidly.
16880
168812008-02-01 Kenichi Handa <handa@m17n.org>
16882
16883 * editfns.c (Fgoto_char): Fix docstring.
16884
168852008-02-01 Kenichi Handa <handa@m17n.org>
16886
16887 * insdel.c (insert_from_gap): Adjust intervals correctly.
16888
168892008-02-01 Jason Rumney <jasonr@gnu.org>
16890
16891 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
16892 (pfnGetFontUnicodeRanges): New dynamically loaded function.
16893 (w32_initialize): Try to load it.
16894 (x_get_font_repertory): Use it if available.
16895 (w32_encode_char): Add shortcut for unicode output.
16896
16897 * w32fns.c (w32_load_system_font): Default charset to -1.
16898 (x_to_w32_charset): Match all fonts for unicode.
16899 (w32_to_x_charset): New parameter matching. Don't return partial
16900 or wildcard charsets.
16901 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
16902 (w32_codepage_for_font): Return CP_UNICODE for unicode.
16903 (w32_to_x_font): Match charset to real charset.
16904 (enum_font_cb2): Always list unicode versions.
16905
16906 * makefile.w32-in (temacs): Increase EMHEAP.
16907
169082008-02-01 Jason Rumney <jasonr@gnu.org>
16909
16910 * w32term.c (w32_encode_char): New charset parameter.
16911 font_info.encoding becomes encoding_type.
16912 (x_get_font_repertory): New function. Warning: stub only!
16913 (x_new_font): Return quickly if font already set.
16914 (x_new_fontset): fontsetname parameter is Lisp_Object.
16915 Use new fs_query_fontset. Try new_fontset_from_font_name.
16916 Use fontset_name for return value.
16917
16918 * w32term.h: Declare x_get_font_repertory.
16919
16920 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
16921 place of find_charset_in_text. Use encode_coding_object in place
16922 of encode_coding.
16923 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
16924 decode_coding.
16925
16926 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
16927 of x_new_fontset.
16928 (w32_load_system_font): Initialize charset as unicode.
16929 font_info.encoding becomes encoding_type.
16930 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
16931 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
16932 (syms_of_w32fns): Set get_font_repertory_func.
16933
16934 * w32console.c: Include character.h. Use terminal_encode_buffer
16935 from term.c.
16936 (write_glyphs): Use new version of encode_terminal_code. Use
16937 encode_coding_object in place of encode_coding.
16938
16939 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
16940 encoding becomes encoding_type.
16941
16942 * term.c (terminal_encode_buffer): Make externally visible.
16943
16944 * makefile.w32-in: Add character.h dependancies.
16945 (character.o, chartab.o): New targets.
16946
169472008-02-01 Kenichi Handa <handa@m17n.org>
16948
16949 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
16950 CODING_ID_EOL_TYPE.
16951
169522008-02-01 Andreas Schwab <schwab@suse.de>
16953
16954 * coding.c (produce_chars): Revert last change.
16955
169562008-02-01 Kenichi Handa <handa@m17n.org>
16957
16958 * charset.h (charset_unicode): Extern it.
16959
16960 * charset.c (string_xstring_p): Check by (C >= 0x100).
16961 (find_charsets_in_text): Change format of the arc CHARSETS. New
16962 arg MULTIBYTE.
16963 (Ffind_charset_region, Ffind_charset_string): Adjust for the
16964 change of find_charsets_in_text.
16965 (Fsplit_char): Fix doc. Never return unknown.
16966
16967 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
16968
16969 * coding.c (Fdefine_coding_system_alias): Update
16970 Vcoding_system_list.
16971
16972 * fontset.c (load_font_get_repertory): Pay attention to the case
16973 that ENCODING of a font is specified by a char-table.
16974
16975 * xterm.c (x_get_font_repertory): Handle the case that the
16976 encoding of font is other than Unicode.
16977
169782008-02-01 Kenichi Handa <handa@m17n.org>
16979
16980 * term.c (encode_terminal_code): Don't handle glyph-table. Check
16981 if a character is encodable by the terminal coding system. If
16982 not, produces proper number of `?'s. Update
16983 terminal_encode_buffer and terminal_encode_buf_size if necessary.
16984 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
16985
169862008-02-01 Kenichi Handa <handa@m17n.org>
16987
16988 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
16989 variables.
16990 (encode_terminal_code): Change argument. Encode multiple
16991 characters at once. Store the result of encoding in
16992 terminal_encode_buffer.
16993 (write_glyphs, insert_glyphs): Adjust for the change of
16994 encode_terminal_code.
16995 (term_init): Initialize terminal_encode_buffer and
16996 terminal_encode_buf_size.
16997
16998 * coding.c (consume_chars): If coding->src_object is nil, don't
16999 check annotation.
17000
170012008-02-01 Kenichi Handa <handa@m17n.org>
17002
17003 * character.c (char_string): Use ASCII_CHAR_P instead of
17004 SINGLE_BYTE_CHAR_P.
17005
170062008-02-01 Kenichi Handa <handa@m17n.org>
17007
17008 * xdisp.c (handle_auto_composed_prop): Check if the last
17009 characters of auto-composed region is newly composed with the
17010 following characters.
17011 (handle_composition_prop): Fix checking of point being inside
17012 composition.
17013
170142008-02-01 Kenichi Handa <handa@m17n.org>
17015
17016 * fns.c (concat): Don't change multibyteness of the result by
17017 concatenating an 8-bit character.
17018
17019 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17020 multibyteness of the result when newelt is an 8-bit character.
17021
170222008-02-01 Dave Love <fx@gnu.org>
17023
17024 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17025 EMACS_INT.
17026
17027 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17028
17029 * xfaces.c (face_numeric_value): Declare dim size_t.
17030 (Finternal_lisp_face_equal_p): Remove unused f.
17031
17032 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17033 (MATRIX_ROW): Remove unused vars.
17034 (draw_glyphs, x_insert_glyphs, fast_find_position)
17035 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17036 byte/char counts.
17037
17038 * regex.c (regex_compile): Remove unused var.
17039
17040 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17041
17042 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17043 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17044
17045 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17046
17047 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17048
17049 * fileio.c (Fwrite_region): Remove unused var.
17050
17051 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17052 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17053
17054 * composite.c (Fremove_list_of_text_properties): Declare.
17055
17056 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17057 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17058 (coding_inherit_eol_type): Remove unused attrs.
17059 (detect_coding): Cast arg of detect_eol.
17060
17061 * charset.c (syms_of_charset): Remove unused var p.
17062 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17063 byte/char counts.
17064
17065 * casetab.c (set_case_table): Remove unused var.
17066
17067 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17068 unused vars.
17069
170702008-02-01 Dave Love <fx@gnu.org>
17071
17072 * xterm.c (x_bitmap_mask): Declare.
17073
170742008-02-01 Dave Love <fx@gnu.org>
17075
17076 * xterm.c (x_term_init): Fix type error.
17077
17078 * lisp.h: Add Funibyte_char_to_multibyte.
17079
17080 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17081 (Fset_coding_system_priority): Doc fix.
17082
17083 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17084
17085 * indent.c (check_composition): Make start and end EMACS_INT.
17086
17087 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17088
17089 * xdisp.c (handle_composition_prop, check_point_in_composition):
17090 Make buffer positions EMACS_INT.
17091
17092 * composite.c (find_composition, run_composition_function)
17093 (update_compositions, Ffind_composition_internal): Make buffer
17094 positions EMACS_INT.
17095
17096 * composite.h (find_composition, update_compositions): Make
17097 position args EMACS_INT.
17098
17099 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17100
17101 * intervals.c (get_property_and_range):
17102 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17103
17104 * unexalpha.c: Don't include varargs.h.
17105
171062008-02-01 Dave Love <fx@gnu.org>
17107
17108 * coding.h (ENCODE_UTF_8): New.
17109
17110 * Makefile.in (gtkutil.o): Depend on coding.h.
17111
17112 * coding.c (Fset_coding_system_priority): Doc fix.
17113
171142008-02-01 Kenichi Handa <handa@m17n.org>
17115
17116 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17117 the case of auto saving.
17118
171192008-02-01 Andreas Schwab <schwab@suse.de>
17120
17121 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17122 `range' from GC.
17123
171242008-02-01 Kenichi Handa <handa@m17n.org>
17125
17126 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17127
171282008-02-01 Kenichi Handa <handa@m17n.org>
17129
17130 * fileio.c (choose_write_coding_system): Return a decided coding system.
17131 (Fwrite_region): Set Vlast_coding_system_used to the return value
17132 of choose_write_coding_system.
17133
171342008-02-01 Kenichi Handa <handa@m17n.org>
17135
17136 * charset.c (Fset_charset_priority): Pay attention to duplicated
17137 arguments.
17138
17139 * coding.c (QCcategory): New variable.
17140 (syms_of_coding): Defsym it. Set all elements of
17141 Vcoding_category_table and their symbol values.
17142 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17143 coding-category-XXX, and coding-category-list.
17144 (Fdefine_coding_system_internal): Add category in the plist.
17145
171462008-02-01 Kenichi Handa <handa@m17n.org>
17147
17148 * callproc.c (Fcall_process): Handle carryover correctly.
17149
17150 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17151 (raw_text_coding_system): Check NILP (coding_system).
17152 (coding_inherit_eol_type): Check NILP (coding_system) and
17153 NILP (parent).
17154 (consume_chars): Fix for the case of raw-text.
17155
17156 * process.c (read_process_output): Handle carryover correctly.
17157
171582008-02-01 Dave Love <fx@gnu.org>
17159
17160 * regex.c (re_search_2): Fix last change.
17161
171622008-02-01 Kenichi Handa <handa@m17n.org>
17163
17164 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17165 target_multibyte. Even in a unibyte case, return a converted
17166 multibyte char.
17167 (GET_CHAR_AFTER): New macro.
17168 (PATFETCH): Translate via multibyte char.
17169 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17170 (SETUP_MULTIBYTE_RANGE): New macro.
17171 (regex_compile): Setup compiled code so that its multibyteness
17172 matches that of a target. Fix the handling of "[X-YZ]" using
17173 SETUP_MULTIBYTE_RANGE.
17174 (analyse_first) <charset>: For filling fastmap for all multibyte
17175 characters, don't check by BASE_LEADING_CODE_P.
17176 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17177 the same as RE_MULTIBYTE_P (bufp) now.
17178 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17179 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17180 (TRANSLATE_VIA_MULTIBYTE): New macro.
17181 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17182 It is the same as RE_MULTIBYTE_P (bufp) now.
17183 <exactn>: Translate via multibyte.
17184 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17185 translate it.
17186 <charset, charset_not>: Fetch a character by
17187 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17188 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17189 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17190 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17191 by GET_CHAR_AFTER.
17192 (bcmp_translate): Likewise.
17193
17194 * search.c (compile_pattern): Check the member target_multibyte,
17195 not the member multibyte of buf.
17196
17197 * lread.c (read1): While reading a string, set force_singlebyte
17198 and force_multibyte correctly.
17199
17200 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17201 up of unibyte_to_multibyte_table.
17202
172032008-02-01 Kenichi Handa <handa@m17n.org>
17204
17205 * coding.c (setup_coding_system): If coding has
17206 post-read-conversion or pre-write-conversion, set
17207 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17208 respectively.
17209 (decode_coding_gap): Run post-read-conversion if any.
17210
17211 * fileio.c (Finsert_file_contents): Even if we read into a
17212 unibyte buffer, check if we must decode the result or not.
17213
172142008-02-01 Kenichi Handa <handa@m17n.org>
17215
17216 * coding.c (make_conversion_work_buffer): Change the work buffer
17217 name to the same one as that of Emacs 21.
17218
172192008-02-01 Kenichi Handa <handa@m17n.org>
17220
17221 * coding.h (make_conversion_work_buffer): Adjust prototype.
17222 (code_conversion_restore): Don't extern it.
17223
17224 * coding.c (detected_mask): Delete unused variable.
17225 (decode_coding_iso_2022): Pay attention to the byte sequence of
17226 CTEXT extended segment, and retain those bytes as is.
17227 (decode_coding_ccl): Delete unused variable `valids'.
17228 (setup_coding_system): Delete unused variable `category'.
17229 (consume_chars): Delete unused variable `category'. Make it work
17230 for non-multibyte case.
17231 (make_conversion_work_buffer): Change argument.
17232 (saved_coding): Delete unused variable.
17233 (code_conversion_restore): Don't check saved_coding->destination.
17234 (code_conversion_save): New function.
17235 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17236 instead of record_unwind_protect.
17237 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17238 (detect_coding_system): Delete unused variable `mask'.
17239 (Fdefine_coding_system_internal): Delete unused variable id.
17240
17241 * fileio.c (kill_workbuf_unwind): New function.
17242 (Finsert_file_contents): On replacing, call
17243 make_conversion_work_buffer with correct args, and call
17244 record_unwind_protect with the first arg kill_workbuf_unwind.
17245
17246 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17247
172482008-02-01 Kenichi Handa <handa@m17n.org>
17249
17250 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17251 (fontset_add): Fix for the case that TO is less than TO1.
17252 (Ffontset_info): Don't use fallback fontset on checking the
17253 default fontset.
17254 (dump_fontset): New function for debugging.
17255
17256 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17257 coding_type is Qcharset.
17258
172592008-02-01 Kenichi Handa <handa@m17n.org>
17260
17261 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17262 (map_char_table): Don't inherit the value from the parent on
17263 initializing VAL. Adjust for the above change.
17264
172652008-02-01 Kenichi Handa <handa@m17n.org>
17266
17267 * coding.c (Qsignature, Qendian): Delete these variables.
17268 (syms_of_coding): Don't initialize them.
17269 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17270 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17271 detect_info->found.
17272 (decode_coding_utf_16): Don't detect BOM here.
17273 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17274 is NOT utf_16_without_bom.
17275 (setup_coding_system): For a coding system of type utf-16, check
17276 if the attribute :endian is Qbig or not (not nil or not), and set
17277 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17278 (detect_coding): If coding type is utf-16 and BOM detection is
17279 required, detect it.
17280 (Fdefine_coding_system_internal): For a coding system of type
17281 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17282
172832008-02-01 Kenichi Handa <handa@m17n.org>
17284
17285 * coding.c (coding_set_source): Fix for the case that the current
17286 buffer is different from coding->src_object.
17287 (decode_coding_object): Don't use the conversion work buffer if
17288 DST_OBJECT is a buffer.
17289
172902008-02-01 Dave Love <fx@gnu.org>
17291
17292 * lread.c (read_emacs_mule_char) [len==2]: Index
17293 emacs_mule_charset correctly.
17294
172952008-02-01 Dave Love <fx@gnu.org>
17296
17297 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17298 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17299 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17300 treated specially.)
17301 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17302 (detected_mask): Remove Big5 bits.
17303
173042008-02-01 Kenichi Handa <handa@m17n.org>
17305
17306 The following changes are to make the font rescaling facility
17307 compatible with Emacs 21.
17308
17309 * xfaces.c (Vface_font_rescale_alist): Rename from
17310 Vface_resizing_fonts.
17311 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17312 (font_rescale_ratio): Rename from font_resizing_ratio.
17313 (split_font_name): Set font->rescale_ratio.
17314 (better_font_p): Pay attention to font->rescale_ratio.
17315 (build_scalable_font_name): Likewise. Change RESX, and RESY
17316 fields.
17317 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17318
173192008-02-01 Kenichi Handa <handa@m17n.org>
17320
17321 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17322 (Qutf_16_le): Remove these variables.
17323 (syms_of_coding): Don't DEFSYM them.
17324 (decode_coding_utf_16): Fix handling of BOM.
17325 (encode_coding_utf_16): Fix handling of BOM.
17326
173272008-02-01 Kenichi Handa <handa@m17n.org>
17328
17329 * fileio.c (Finsert_file_contents): On replacing, before decoding
17330 the file into the work buffer, set point of the work buffer to the end.
17331
173322008-02-01 Dave Love <fx@gnu.org>
17333
17334 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17335
173362008-02-01 Dave Love <fx@gnu.org>
17337
17338 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17339 and fix C types.
17340
173412008-02-01 Kenichi Handa <handa@m17n.org>
17342
17343 * xdisp.c (SKIP_GLYPHS): New macro.
17344 (set_cursor_from_row): Pay attention to string display properties.
17345
17346 * category.c (copy_category_entry): Fix for the case that RANGE
17347 is an integer.
17348
17349 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17350
17351 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17352
173532008-02-01 Kenichi Handa <handa@m17n.org>
17354
17355 * charset.c (Fcharset_id_internal): New function.
17356 (syms_of_charset): Defsubr it.
17357
17358 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17359 with the last arg charset_list acquired from coding.
17360 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17361 the attribute coding_attr_ccl_valids.
17362
17363 * coding.h (enum define_coding_ccl_arg_index): Set the first
17364 member coding_arg_ccl_decoder to coding_arg_max.
17365
17366 * ccl.h (ccl_driver): Adjust prototype.
17367
17368 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17369 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 17370 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
17371 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17372 last arg Qnil.
17373
173742008-02-01 Kenichi Handa <handa@m17n.org>
17375
17376 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17377 call encode_char.
17378
17379 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17380
173812008-02-01 Dave Love <fx@gnu.org>
17382
17383 * composite.c (syms_of_composite): Make composition_hash_table weak.
17384
173852008-02-01 Kenichi Handa <handa@m17n.org>
17386
17387 * dispextern.h (check_face_attributes, generate_ascii_font_name)
17388 (font_name_registry): Don't extern them.
17389 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
17390
17391 * fontset.h (Qfontset): Don't extern it.
17392 (new_fontset_from_font_name): Extern it.
17393
17394 * fontset.c: Give 8 extra slots to fontset objects.
17395 (Qfontset_info): New variable.
17396 (syms_of_fontset): Defsym it.
17397 (FONTSET_FALLBACK): New macro.
17398 (fontset_face): Try also the default fontset.
17399 (make_fontset): Realize a fallback fontset from the default fontset.
17400 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
17401 using split_font_name_into_vector and build_font_name_from_vector.
17402 (Fset_fontset_font): Access the elements of font_spec by enum
17403 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
17404 name by using split_font_name_into_vector.
17405 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
17406 generate a proper font name from the fontset name. Update
17407 Vfontset_alias_alist.
17408 (n_auto_fontsets): New variable.
17409 (new_fontset_from_font_name): New function.
17410 (Ffont_info): Store the information about fonts generated from the
17411 default fontset in the first extra slot of the returned char-table.
17412
17413 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
17414 (font_name_registry): Delete function.
17415 (split_font_name_into_vector): New function.
17416 (build_font_name_from_vector): New function.
17417 (font_list): The argument REGISTRY is now a list of registry names.
17418 (choose_face_font): If we are choosing an ASCII font, and ATTRS
17419 specifies an explicit font name, return the name as is. Make a
17420 list of registy names.
17421
17422 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
17423 of x_new_fontset.
17424 (Fx_create_frame): Don't call x_new_fontset here. Just use
17425 x_list_fonts to check the existence of fonts.
17426
17427 * xterm.h (x_new_fontset): Adjust prototype.
17428
17429 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
17430 string. Use new_fontset_from_font_name to create a fontset from a
17431 font name.
17432
174332008-02-01 Kenichi Handa <handa@m17n.org>
17434
17435 * syntax.c (Vfind_word_boundary_function_table): New name for
17436 Vnext_word_boundary_function_table.
17437 (find-word-boundary-function-table): New name for
17438 next-word-boundary-function-table.
17439
174402008-02-01 Dave Love <fx@gnu.org>
17441
17442 * Makefile.in: Fix some dependencies.
17443
17444 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
17445 set it to nil before returning.
17446
17447 * composite.c (update_compositions): Fix type error.
17448
17449 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
17450
174512008-02-01 Kenichi Handa <handa@m17n.org>
17452
17453 * xterm.c (x_new_font): Optimize for the case that the font is
17454 already set for the frame.
17455
174562008-02-01 Kenichi Handa <handa@m17n.org>
17457
17458 * chartab.c (char_table_ascii): Check if the char table contents
17459 is sub-char-table or not.
17460 (char_table_set, char_table_set_range): Fix argument to
17461 char_table_ascii.
17462
17463 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
17464 (detect_coding_utf_8, detect_coding_utf_16)
17465 (detect_coding_emacs_mule, detect_coding_iso_2022)
17466 (detect_coding_sjis, detect_coding_big5)
17467 (detect_coding_ccl, detect_coding_charset): Change argument MASK
17468 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
17469 sequence is valid in this coding system. Change callers.
17470 (MAX_ANNOTATION_LENGTH): New macro.
17471 (ADD_ANNOTATION_DATA): New macro.
17472 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
17473 ADD_ANNOTATION_DATA. Change the format of annotation data.
17474 (ADD_CHARSET_DATA): New macro.
17475 (emacs_mule_char): New argument ID. Change callers.
17476 (decode_coding_emacs_mule, decode_coding_iso_2022)
17477 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17478 Produce charset annotation data in coding->charbuf.
17479 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
17480 to charset annotation data in coding->charbuf.
17481 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
17482 coding->common_flags if the coding system is iso-2022 based and
17483 uses designation.
17484 (produce_composition): Adjust for the new annotation data format.
17485 (produce_charset): New function.
17486 (produce_annotation): Handle charset annotation.
17487 (handle_composition_annotation, handle_charset_annotation): New
17488 functions.
17489 (consume_chars): Handle charset annotation. Utilize the above two
17490 functions.
17491 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
17492 buffer, get the deleted text as a string and set
17493 coding->src_object to that string.
17494 (detect_coding, detect_coding_system): Use the new struct
17495 coding_detection_info.
17496
17497 * coding.h (struct coding_detection_info): New structure.
17498 (struct coding_system): Adjust prototype of the member `detector'.
17499 (CODING_ANNOTATE_CHARSET_MASK): New macro.
17500
175012008-02-01 Kenichi Handa <handa@m17n.org>
17502
17503 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
17504
175052008-02-01 Dave Love <fx@gnu.org>
17506
17507 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
17508 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
17509 to new local and nullify apropos_accumulate before returning.
17510 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
17511
175122008-02-01 Kenichi Handa <handa@m17n.org>
17513
17514 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
17515 correctly.
e3eea1fc 17516
aac0c6e3
MR
175172008-02-01 Dave Love <fx@gnu.org>
17518
17519 * fns.c (Flanginfo): Call synchronize_system_time_locale.
17520
175212008-02-01 Kenichi Handa <handa@m17n.org>
17522
17523 The following changes are to make character composition happen
17524 automatically on displaying.
17525
17526 * Makefile.in (lisp, shortlisp): Add composite.elc.
17527
17528 * composite.h (Qauto_composed, Vauto_composition_function)
17529 (Qauto_composition_function): Extern them.
17530
17531 * composite.c (Vcomposition_function_table)
17532 (Qcomposition_function_table): Delete variables.
17533 (Qauto_composed, Vauto_composition_function)
17534 (Qauto_composition_function): New variables.
17535 (run_composition_function): Don't call
17536 compose-chars-after-function.
17537 (update_compositions): Clear `auto-composed' text property.
17538 (compose_chars_in_text): Delete this function.
17539 (syms_of_composite): Staticpro Qauto_composed and
17540 Qauto_composition_function. Declare Vauto_composition_function as
17541 a Lisp variable.
17542
17543 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
17544
17545 * xdisp.c (it_props): Add an entry for Qauto_composed.
17546 (handle_auto_composed_prop): New function.
17547
17548 * xselect.c (selection_data_to_lisp_data): Don't call
17549 compose_chars_in_text.
17550
175512008-02-01 Dave Love <fx@gnu.org>
17552
17553 * keyboard.c (read_char): Modify checking around use of
17554 Vkeyboard_translate_table.
17555
17556 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17557 and fix C types.
17558
175592008-02-01 Kenichi Handa <handa@m17n.org>
17560
17561 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
17562 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17563 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
17564 the case that the last byte is '\r' correctly.
17565 (decode_coding): Flush out the unprocessed data correctly.
17566 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
17567
175682008-02-01 Dave Love <fx@gnu.org>
17569
17570 * xterm.c (XTread_socket): Fix changes for defined keysyms.
17571 Add XK_ISO... case.
17572 (xaw_scroll_callback): Revert last change.
17573
175742008-02-01 Kenichi Handa <handa@m17n.org>
17575
17576 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
17577
175782008-02-01 Kenichi Handa <handa@m17n.org>
17579
17580 * xfaces.c (Vface_resizing_fonts): New variable.
17581 (struct font_name): New member `resizing_ratio'.
17582 (font_resizing_ratio): New function.
17583 (split_font_name): Set font->resizing_ratio.
17584 (better_font_p): Pay attention to font->resizing_ratio.
17585 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
17586 RESX, and RESY fields.
17587 (try_alternative_families): Try scalable fonts if
17588 Vscalable_fonts_allowed is not Qt.
17589 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
17590
175912008-02-01 Dave Love <fx@gnu.org>
17592
17593 * xterm.c (xaw_scroll_callback): Cast correctly.
17594
175952008-02-01 Dave Love <fx@gnu.org>
17596
17597 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
17598 (lispy_kana_keys): Comment out.
17599 (make_lispy_event) [XK_kana_A]: Comment out.
17600
17601 * xterm.c (xaw_scroll_callback): Cast call_data.
17602 (XTread_socket): Deal with ASCII keysyms.
17603 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
17604
176052008-02-01 Dave Love <fx@gnu.org>
17606
17607 * xterm.c (Vx_keysym_table): New.
17608 (syms_of_xterm): Initialize it.
17609 (XTread_socket): Use it.
17610 From head: Eliminate incorrect optimization that tried to avoid
17611 decoding the output of X*LookupString.
17612 (x_get_font_repertory): Delete charset declaration.
17613
176142008-02-01 Kenichi Handa <handa@m17n.org>
17615
17616 * coding.c (detect_coding_charset): If only ASCII bytes are found,
17617 return 0.
17618 (Fdefine_coding_system_internal): Setup
17619 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
17620
176212008-02-01 Dave Love <fx@gnu.org>
17622
17623 * coding.c (Fcheck_coding_system): Doc fix.
17624
17625 * editfns.c (Finsert_byte): Return a proper value.
17626
176272008-02-01 Kenichi Handa <handa@m17n.org>
17628
17629 * coding.c (decode_coding): Fix args to translate_chars. Pay
17630 attention to Vstandard_translation_table_for_decode.
17631 (encode_coding): Fix args to translate_chars. Pay attention to
17632 Vstandard_translation_table_for_encode.
17633
17634 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
17635 SINGLE_BYTE_CHAR_P.
17636
17637 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
17638 not by SINGLE_BYTE_CHAR_P.
17639
17640 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
17641 SINGLE_BYTE_CHAR_P.
17642
17643 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
17644 SINGLE_BYTE_CHAR_P.
17645
17646 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
17647 by SINGLE_BYTE_CHAR_P.
17648
17649 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
17650 SINGLE_BYTE_CHAR_P.
17651
176522008-02-01 Dave Love <fx@gnu.org>
17653
17654 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
17655
176562008-02-01 Dave Love <fx@gnu.org>
17657
17658 * fns.c (Flanginfo): Fix typo.
17659
17660 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
17661
176622008-02-01 Kenichi Handa <handa@m17n.org>
17663
17664 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
17665 (detect_coding_emacs_mule, detect_coding_iso_2022)
17666 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
17667 incomplete byte sequence. Don't update *mask when correctly detected.
17668 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
17669 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
17670 (detect_coding, detect_coding_system): Adjust for the changes above.
17671
176722008-02-01 Kenichi Handa <handa@m17n.org>
17673
17674 * character.c (char_string): Rename from
17675 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
17676 (string_char): Rename from string_char.
17677
17678 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
17679 if C is greater than MAX_3_BYTE_CHAR.
17680 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
17681 string_char instead of string_char_with_unification.
17682
176832008-02-01 Dave Love <fx@gnu.org>
17684
17685 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
17686
176872008-02-01 Kenichi Handa <handa@m17n.org>
17688
17689 * keymap.c (push_key_description): Pay attention to force_multibyte.
17690
17691 * regex.c (re_search_2): Fix for the case of unibyte buffer.
17692
176932008-02-01 Dave Love <fx@gnu.org>
17694
17695 * charset.c (define_charset_internal): Rename `supprementary'.
17696
17697 * Makefile.in (lisp, shortlisp): Remove latin-N.
17698
176992008-02-01 Dave Love <fx@gnu.org>
17700
17701 * xfns.c (x_window, x_window): Use use_xim.
17702
17703 * xterm.c (use_xim): Initialize.
17704 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
17705 (x_term_init): Maybe set use_xim.
17706
17707 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
17708
177092008-02-01 Kenichi Handa <handa@m17n.org>
17710
17711 * search.c (search_buffer): Fix case-fold-search of multibyte
17712 characters.
17713 (boyer_moore): Rename the last argument to char_high_bits.
17714
177152008-02-01 Kenichi Handa <handa@m17n.org>
17716
17717 * xdisp.c (display_string): Fix for the case of zero width glyph.
17718
17719 * xfns.c (x_set_font): Change the error message of the case that
17720 x_new_fontset returns Qt.
17721
17722 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
17723 (Finternal_set_lisp_face_attribute): Use signal_error for the
17724 error of invalid fontset.
17725
17726 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
17727 fontset, return Qt.
17728
177292008-02-01 Dave Love <fx@gnu.org>
17730
17731 * unexelf.c (unexec): Make .got handling not SGI-specific.
17732
17733 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
17734
17735 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
17736
17737 * keyboard.c (read_key_sequence): Fix type error.
17738
17739 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
17740 type error.
17741
17742 * fontset.c (fontset_add): Return Lisp_Object.
17743
177442008-02-01 Dave Love <fx@gnu.org>
17745
17746 * charset.h (charset_ordered_list_tick): Declare extern.
17747
177482008-02-01 Kenichi Handa <handa@m17n.org>
17749
17750 The following changes (and some of 2008-02-01 changes of mine) are
17751 for handling syntax, category, and case conversion for unibyte
17752 characters by converting them to multibyte on the fly. With these
17753 changes, we don't have to setup syntax and case tables for unibyte
17754 characters in each language environment.
17755
17756 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
17757 multibyte if necessary.
17758
17759 * bytecode.c (Fbyte_code): Likewise.
17760
17761 * character.h (LEADING_CODE_LATIN_1_MIN)
17762 (LEADING_CODE_LATIN_1_MAX): New macros.
17763 (unibyte_to_multibyte_table): Extern it.
17764 (unibyte_char_to_multibyte): New macro.
17765 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
17766 (CHAR_LEADING_CODE): New macro.
17767 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
17768
17769 * character.c (unibyte_to_multibyte_table): New variable.
17770 (unibyte_char_to_multibyte): Move to character.h and define as macro.
17771 (multibyte_char_to_unibyte): If C is an eight-bit character,
17772 convert it to the corresponding byte value.
17773
17774 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
17775 not 1, signals an error. Update the elements of
17776 unibyte_to_multibyte_table.
17777 (init_charset_once): Initialize unibyte_to_multibyte_table.
17778 (syms_of_charset): Define the charset `iso-8859-1'.
17779
17780 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
17781 as is without converting it to unibyte. In a unibyte buffer,
17782 convert C to multibyte before checking the syntax.
17783
17784 * lisp.h (unibyte_char_to_multibyte): Delete extern.
17785
17786 * minibuf.c (Fminibuffer_complete_word): Use the macro
17787 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
17788
17789 * regex.h (struct re_pattern_buffer): New member target_multibyte.
17790
17791 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
17792 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
17793 that is zero, convert an eight-bit char to multibyte.
17794 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
17795 non-emacs case.
17796 (PATFETCH): Convert an eight-bit char to multibyte.
17797 (HANDLE_UNIBYTE_RANGE): New macro.
17798 (regex_compile): Setup the compiled pattern for multibyte chars
17799 even if the given regex string is unibyte. Use PATFETCH_RAW
17800 instead of PATFETCH in many places. To handle `charset'
17801 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
17802 only for ASCII chars.
17803 (analyse_first) <exactn>: Simplify because the compiled pattern
17804 is multibyte.
17805 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
17806 <charset>: Use CHAR_LEADING_CODE to get leading codes.
17807 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
17808 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
17809 multibyte always 1.
17810 (re_search_2): In emacs, set the locale variable multibyte to 1,
17811 otherwise to 0. New local variable target_multibyte. Check it
17812 to decide the multibyteness of STR1 and STR2. If
17813 target_multibyte is zero, convert unibyte chars to multibyte
17814 before translating and checking fastmap.
17815 (TARGET_CHAR_AND_LENGTH): New macro.
17816 (re_match_2_internal): In emacs, set the locale variable multibyte
17817 to 1, otherwise to 0. New local variable target_multibyte. Check
17818 it to decide the multibyteness of STR1 and STR2. Use
17819 TARGET_CHAR_AND_LENGTH to fetch a character from D.
17820 <charset, charset_not>: If multibyte is nonzero, check fastmap
17821 only for ASCII chars. Call bcmp_translate with
17822 target_multibyte, not with multibyte.
17823 <begline>: Declare the local variable C as `unsigned'.
17824 (bcmp_translate): Change the last arg name to target_multibyte.
17825
17826 * search.c (compile_pattern_1): Don't adjust the multibyteness of
17827 the regexp pattern and the matching target. Set cp->buf.multibyte
17828 to the multibyteness of the regexp pattern. Set
17829 cp->but.target_multibyte to the multibyteness of the matching target.
17830 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
17831 FETCH_STRING_CHAR_ADVANCE.
17832 (Freplace_match): Convert unibyte chars to multibyte.
17833
17834 * syntax.c (char_quoted, back_comment, scan_words)
17835 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
17836 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
17837 unibyte chars to multibyte.
17838 (skip_chars): Delete the arg syntaxp, and move the code for
17839 handling syntaxes to skip_syntaxes. Change callers.
17840 Fix the case that the multibyteness of STRING and the current
17841 buffer doesn't match.
17842 (skip_syntaxes): New function.
17843 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
17844 SINGLE_BYTE_CHAR_P.
17845
178462008-02-01 Kenichi Handa <handa@m17n.org>
17847
17848 * xfaces.c (QCfontset): New variable.
17849 (LFACE_FONTSET): New macro.
17850 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
17851 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
17852 (Finternal_set_lisp_face_attribute)
17853 (Finternal_get_lisp_face_attribute): Handle QCfontset.
17854 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
17855 check also LFACE_FONTSET_INDEX.
17856 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
17857 attrs[LFACE_FONT_INDEX].
17858 (syms_of_xfaces): Intern and staticpro QCfontset.
17859
17860 * dispextern.h (enum lface_attribute_index): New member
17861 LFACE_FONTSET_INDEX.
17862
17863 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
17864
178652008-02-01 Kenichi Handa <handa@m17n.org>
17866
17867 * coding.c (coding_set_destination): Fix coding->destination for
17868 the case converting a region.
17869 (encode_coding_utf_8): Encode eight-bit chars as single byte.
17870 (encode_coding_object): Fix coding->dst_pos and
17871 coding->dst_pos_byte for the case converting a region.
17872
17873 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
17874
17875 * character.h (BYTE8_STRING): New macro.
17876
17877 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
17878
178792008-02-01 Kenichi Handa <handa@m17n.org>
17880
17881 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
17882 characters by octal form.
17883
17884 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
17885
17886 * buffer.h (_fetch_multibyte_char_len): Delete extern.
17887 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
17888 _fetch_multibyte_char_len.
17889 (FETCH_CHAR_AS_MULTIBYTE): New macro.
17890
17891 * casetab.c (set_canon, set_identity, shuffle): Simplify.
17892
17893 * casefiddle.c (casify_object): Simplify. Handle the case that
17894 the case conversion change the byte length.
17895 (casify_region): Likewise.
17896
17897 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
17898
17899 * character.c (_fetch_multibyte_char_len): Delete this variable.
17900 (syms_of_character): Setup Vprintable_chars.
17901
17902 * editfns.c (Fchar_equal): Fix for the unibyte case.
17903 (Finsert_byte): New function.
17904 (syms_of_editfns): Defsubr it.
17905
17906 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
17907 of direct code 0x3ffff.
17908
17909 * search.c (Freplace_match): Fix for the unibyte case.
17910
179112008-02-01 Kenichi Handa <handa@m17n.org>
17912
17913 * lread.c (safe_to_load_p): Fix the logic.
17914
17915 * syntax.c (scan_words): Don't treat characters belonging to
17916 different scripts as constituting a word.
17917
17918 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
17919
17920 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
17921
17922 * emacs.c (main): In the case of --unibyte, instead of aborting on
17923 finding non-empty buffer, make it unibyte.
17924
179252008-02-01 Kenichi Handa <handa@m17n.org>
17926
17927 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
17928 to create a fontset.
17929
179302008-02-01 Dave Love <fx@gnu.org>
17931
17932 * character.c (Funibyte_char_to_multibyte): Doc fix.
17933
17934 * xfns.c [HAVE_STDLIB_H]: Fix last change.
17935
179362008-02-01 Kenichi Handa <handa@m17n.org>
17937
17938 * fontset.c (fontset_add): Make the type `int'.
17939 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
17940
17941 * character.c (unibyte_char_to_multibyte)
17942 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
17943 charset_unibyte, not charset_primary.
17944
17945 * charset.h (charset_unibyte): Extern it instead of charset_primary.
17946
17947 * charset.c (charset_unibyte): Rename from charset_primary.
17948 (Funibyte_charset): Rename from Fprimary_charset.
17949 (Fset_unibyte_charset): Rename from Fset_primary_charset.
17950 (syms_of_charset): Adjust for the above changes.
17951
17952 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
17953 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
17954 it->multibyte_p is zero.
17955
17956 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
17957 Delete extern.
17958
179592008-02-01 Kenichi Handa <handa@m17n.org>
17960
17961 * coding.c (Fdefine_coding_system_internal): Fix category setting
17962 for a coding system of type iso-2022.
17963
179642008-02-01 Kenichi Handa <handa@m17n.org>
17965
17966 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
17967
179682008-02-01 Kenichi Handa <handa@m17n.org>
17969
17970 * syntax.c (Vnext_word_boundary_function_table): New variable.
17971 (next-word-boundary-function-table): Declare it as a Lisp variable
17972 in syms_of_syntax.
17973 (scan_words): Call functions in Vnext_word_boundary_function_table
17974 if any.
17975
17976 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
17977
17978 * fontset.c (fs_load_font): If fontp->charset is not negative,
17979 return fontp without setting its members.
17980
179812008-02-01 Dave Love <fx@gnu.org>
17982
17983 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
17984
17985 * m/sparc.h (HAVE_ALLOCA): Delete.
17986
17987 * s/irix6-5.h: Don't include strings.h.
17988 (bcopy, bzero, bcmp): Don't undef.
17989
17990 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
17991
17992 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
17993 (TIOCSIGSEND): Don't test IRIX6.
17994 (bcopy, bzero, bcmp): Define conditionally.
17995
179962008-02-01 Kenichi Handa <handa@m17n.org>
17997
17998 * buffer.c (Qas, Qmake, Qto): New variables.
17999 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18000 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18001
18002 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18003 we are inserting a process output into a multibyte buffer.
18004
18005 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18006 multibyte_char_to_unibyte.
18007
18008 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18009 by the primary charset, make it eight-bit char.
18010 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18011
18012 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18013 (charset_8_bit__control, charset_8_bit_graphic)
18014 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18015 (define_charset_internal): New function.
18016 (syms_of_charset): Call define_charset_internal for pre-defined
18017 charsets.
18018
18019 * charset.h (charset_8_bit): Extern it.
18020
18021 * coding.c (make_conversion_work_buffer): Adjust for the change
18022 of Fset_buffer_multibyte.
18023 (encode_coding_raw_text): Increment p0 in the loop.
18024
18025 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18026
18027 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18028 for the change of Fset_buffer_multibyte.
18029
18030 * fns.c (Fstring_to_multibyte): New function.
18031 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18032
180332008-02-01 Dave Love <fx@gnu.org>
18034
18035 * xfns.c (x_put_x_image): Declare args.
18036
18037 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18038 (try_font_list): Declare an arg.
18039
18040 * xdisp.c (message2_nolog, set_message): Declare an arg.
18041
18042 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18043
18044 * syntax.c (scan_sexps_forward): Declare an arg.
18045
18046 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18047 Declare an arg.
18048
18049 * lisp.h (Fnew_fontset): Declare.
18050
18051 * keymap.c (push_key_description): Call CHARACTERP correctly.
18052
18053 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18054 (face_for_char): Delete unused vars.
18055 (Fset_fontset_font): Doc fix. Delete unused vars.
18056
18057 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18058
18059 * composite.c (update_compositions): Declare arg.
18060
18061 * cm.c (calccost, cmgoto): Declare args.
18062
18063 * charset.c: Remove `emacs' conditional. Doc fixes.
18064 (map_char_table_for_charset): Declare.
18065
18066 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18067
18068 * ccl.c: Remove `emacs' conditional.
18069
180702008-02-01 Kenichi Handa <handa@m17n.org>
18071
18072 The following changes are to allow specifying multiple font
18073 patterns for a character range (specified by script or charset).
18074
18075 * Makefile.in (abbrev.o): Depend on syntax.h.
18076 (xfaces.o): Depend on charset.h.
18077
18078 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18079 SINGLE_BYTE_CHAR_P.
18080
18081 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18082
18083 * character.h (Vchar_script_table): Extern it.
18084
18085 * character.c (Vscript_alist): Delete.
18086 (Vchar_script_table, Qchar_script_table): New variable.
18087 (syms_of_character): Declare Vchar_script_table as a lisp variable
18088 and initialize it.
18089
18090 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18091 have property char-table-extra-slots, make no extra slot.
18092
18093 * dispextern.h (struct face): Delete member `charset'.
18094 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18095 SINGLE_BYTE_CHAR_P.
18096 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18097 Add prototypes.
18098 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18099 (generate_ascii_font_name): Rename from generate_ascii_font.
18100
18101 * fontset.h (get_font_repertory_func): New prototype.
18102 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18103 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18104
18105 * fontset.c (Qprepend, Qappend): New variables.
18106 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18107 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18108 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18109 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18110 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18111 (load_font_get_repertory): New functions.
18112 (fontset_set): Delete.
18113 (fontset_face): New arg FACE. Return face ID, not face.
18114 Complete re-write to handle new fontset structure. Change caller.
18115 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18116 (face_for_char): Don't call lookup_face.
18117 (make_fontset_for_ascii_face): New arg FACE.
18118 (fs_load_font): New arg CHARSET_ID. Don't check
18119 Vfont_encoding_alist here.
18120 (find_font_encoding): New function.
18121 (list_fontsets): Use STRINGP, not ! NILP.
18122 (accumulate_script_ranges): New function.
18123 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18124 re-written to handle new fontset structure.
18125 (Ffontset_font): Return a copy of element.
18126 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18127 docstring of font-encoding-alist.
18128
18129 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18130 (Fset_fotset_font): Fix arguments to 5.
18131
18132 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18133
18134 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18135 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18136 (highlight_trailing_whitespace): Adjust for the change of
18137 lookup_named_face.
18138
18139 * xfaces.c: Include charset.h.
18140 (load_face_font): Delete argument C. Change caller.
18141 (generate_ascii_font_name): Rename from generate_ascii_font.
18142 (font_name_registry): New function.
18143 (cache_face): Store ascii faces before non-ascii faces in buckets.
18144 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18145 Lookup only ascii faces.
18146 (lookup_non_ascii_face): New function.
18147 (lookup_named_face): Delete argument C. Change caller.
18148 (lookup_derived_face): Delete argument C. Change caller.
18149 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18150 a string, just call font_list with it.
18151 (choose_face_font): Delete arguments FACE and C. New arg
18152 FONT_SPEC. Change caller.
18153 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18154 Change caller.
18155 (realize_non_ascii_face): New function.
18156 (realize_x_face): Call load_face_font here.
18157 (realize_tty_face): Delete argument C. Change caller.
18158 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18159 get a face ID.
18160 (dump_realized_face): Don't print charset of FACE.
18161
18162 * xfns.c (x_set_font): Always call x_new_fontset and
18163 store_frame_parameter.
18164 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18165 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18166
18167 * xterm.h (x_get_font_repertory): Extern it.
18168
18169 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18170 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18171 it->multibyte_p is zero.
18172 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18173 (x_new_fontset): If FONTSETNAME doesn't match any existing
18174 fontsets, create a new one.
18175 (x_get_font_repertory): New function.
18176
181772008-02-01 Kenichi Handa <handa@m17n.org>
18178
18179 * coding.c (Ffind_coding_systems_region_internal): Detect an
18180 ASCII only string correctly.
18181
18182 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18183 version is 0.
18184
181852008-02-01 Kenichi Handa <handa@m17n.org>
18186
18187 * lread.c: Include "coding.h".
18188 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18189 (load_each_byte, unread_char): New variables.
18190 (readchar_backlog): Delete.
18191 (readchar): Return a character unless load_each_byte is nonzero.
18192 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18193 cons. If unread_char is not -1, simply return it.
18194 (unreadchar): Handle the case that readcharfun is
18195 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18196 (read_multibyte): Delete.
18197 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18198 (read_emacs_mule_char): New functions.
18199 (Fload): Even if the file doesn't have the extension ".elc", if
18200 safe_to_load_p returns a positive version number, assume that the
18201 file contains bytecompiled code. If the version is less than 22,
18202 load the file while decoding multibyte sequences by emacs-mule.
18203 (readevalloop): Don't use readchar_backlog.
18204 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18205 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18206 (read_escape): Delete the arg BYTEREP.
18207 (read1): Set load_each_byte to 1 temporarily while handling
18208 #@NUMBER. Don't call read_multibyte.
18209 (read_vector): Call Fread with a cons. If readcharfun is
18210 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18211 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18212 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18213 and Qload_force_doc_strings.
18214
182152008-02-01 Kenichi Handa <handa@m17n.org>
18216
18217 * xdisp.c (face_before_or_after_it_pos): Call
18218 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18219
182202008-02-01 Kenichi Handa <handa@m17n.org>
18221
18222 * character.h (TRAILING_CODE_P): New macro.
18223 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18224 (string_char_with_unification): Fix prototype.
18225 (Vscript_alist): Extern it.
18226
18227 * character.c (Vscript_alist): New variable.
18228 (string_char_with_unification, str_as_unibyte)
18229 (string_escape_byte8): Add `const' to local variables.
18230 (syms_of_character): Declare script-alist as a Lisp variable.
18231
18232 * charset.h (Vcharset_ordered_list): Extern it.
18233 (charset_ordered_list_tick): Extern it.
18234 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18235 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18236 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18237 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18238 (Funify_charset): Adjust for the change of Funify_charset.
18239
18240 * charset.c (charset_ordered_list_tick): New variable.
18241 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18242 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18243 deunify intead of unify a charset.
18244 (string_xstring_p): Add `const' to local variables.
18245 (find_charsets_in_text): Add `const' to arguments and local variables.
18246 (encode_char): Adjust for the change of Funify_charset. Fix
18247 detecting of invalid code.
18248 (Fset_charset_priority): Increment charset_ordered_list_tick.
18249 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18250 and TO_CODE.
18251
18252 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18253 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18254 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18255 (decode_coding_ccl, consume_chars)
18256 (Ffind_coding_systems_region_internal)
18257 (Fcheck_coding_systems_region): Add `const' to local variables.
18258
18259 * print.c (print_object): Use octal form for printing the
18260 contents of a bool vector.
18261
182622008-02-01 Dave Love <fx@gnu.org>
18263
18264 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18265 <version == 20>: Refuse to load.
18266
182672008-02-01 Dave Love <fx@gnu.org>
18268
18269 * fns.c: Move coding.h.
18270 (Qcodeset, Qdays, Qmonths): New.
18271 (concat): Use CHARACTERP instead of INTEGERP.
18272 (Flocale_codeset): Delete.
18273 (Flanginfo): New function.
18274 (syms_of_fns): Change accordingly.
18275
18276 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18277
182782008-02-01 Dave Love <fx@gnu.org>
18279
18280 * casetab.c (init_casetab_once, init_casetab_once): Fix
18281 CHAR_TABLE_SET call.
18282
18283 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18284
18285 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18286
18287 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18288 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18289 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18290
18291 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18292
18293 * coding.c (ENCODE_DESIGNATION, decode_eol)
18294 (make_conversion_work_buffer, code_conversion_restore)
18295 (Fdefine_coding_system_internal): Convert Lisp types.
18296 (code_conversion_restore): Use EQ, not ==.
18297 (Fencode_coding_string): Fix code_convert_string call.
18298
18299 * coding.h (code_convert_region): Fix prototype.
18300
18301 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18302
18303 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18304 (Ffontset_info): Convert Lisp types.
18305
18306 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18307
18308 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18309
18310 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18311
18312 * chartab.c: Include "...h", not <...h> in some cases.
18313
18314 * callproc.c (Fcall_process): Remove unused variables.
18315
183162008-02-01 Dave Love <fx@gnu.org>
18317
18318 * coding.c (Fset_coding_system_priority): Allow null arg list.
18319
183202008-02-01 Dave Love <fx@gnu.org>
18321
18322 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18323 (Fself_insert_and_exit): Use CHARACTERP.
18324
18325 * callproc.c (Fcall_process): Remove unused vars.
18326
18327 * xterm.c (XTread_socket): Add extra dead keysyms.
18328
18329 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18330
18331 * dispextern.h: Remove prototypes for redraw_frame,
18332 redraw_garbaged_frames.
18333
18334 * cmds.c (Fself_insert_command): Use CHARACTERP.
18335
18336 * chartab.c (make_sub_char_table): Remove unused var.
18337 (Fset_char_table_default, Fmap_char_table): Doc fix.
18338
18339 * keymap.c (access_keymap): Remove generic char code.
18340 (push_key_description): Use CHARACTERP.
18341
183422008-02-01 Dave Love <fx@gnu.org>
18343
18344 * charset.c: Doc fixes.
18345 (Funify_charset): Extra checking.
18346
183472008-02-01 Dave Love <fx@gnu.org>
18348
18349 * lread.c: Remove some unused variables.
18350 (safe_to_load_p): If safe, return the magic number version byte.
18351 (Fload): Maybe use load-with-code-conversion.
18352
183532008-02-01 Kenichi Handa <handa@m17n.org>
18354
18355 * category.c (Fmodify_category_entry): Don't modify the contents
18356 of category_set for characters out of the range. Avoid
18357 unnecessary modification.
18358
18359 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18360 Vchar_unify_table. The default value of the table is now nil.
18361
18362 * character.c (syms_of_character): Setup Vchar_width_table for
18363 eight-bit-control and raw-byte chars.
18364
18365 * charset.h (enum define_charset_arg_index): Delete
18366 charset_arg_parents and add charset_arg_subset and
18367 charset_arg_superset.
18368 (enum charset_attr_index): Delete charset_parents and add
18369 charset_subset and charset_superset.
18370 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18371 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18372 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18373 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18374 (CHARSET_SUPERSET): New macros.
18375 (charset_work): Extern it.
18376 (ENCODE_CHAR): Use charset_work.
18377 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18378 (map_charset_chars): Extern it.
18379
18380 * charset.c (load_charset_map): Set the default value of encoder
18381 and deunifier char-tables to nil.
18382 (map_charset_chars): Change argument. Change callers. Use
18383 map_char_table_for_charset instead of map_char_table.
18384 (Fmap_charset_chars): New optional args from_code and to_code.
18385 (Fdefine_charset_internal): Adjust for the change of
18386 `define-charset' (:parents -> :subset or :superset).
18387 (charset_work): New variable.
18388 (encode_char, syms_of_charset): Adjust for the change of
18389 Fdefine_charset_internal.
18390 (Ffind_charset_string): Setup the vector `charsets' correctly.
18391
18392 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
18393 the previous change.
18394 (char_table_ref_and_range): Adjust for the above change.
18395 (map_sub_char_table_for_charset): New function.
18396 (map_char_table_for_charset): New function.
18397
18398 * keymap.c (describe_vector): Handle a char-table directly here.
18399 (describe_char_table): Delete.
18400
18401 * lisp.h (map_charset_chars): Delete.
18402
184032008-02-01 Dave Love <fx@gnu.org>
18404
18405 * fns.c (count_combining): Comment out (unused).
18406 (Flocale_codeset): New.
18407 (syms_of_fns): Defsubr it.
18408
18409 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
18410 (size_t): Remove.
18411
184122008-02-01 Dave Love <fx@gnu.org>
18413
18414 * Makefile.in (chartab.o): Depend on charset.h.
18415
184162008-02-01 Kenichi Handa <handa@m17n.org>
18417
18418 * character.c (syms_of_character): Set the default value of
18419 Vprintable_chars to Qnil.
18420
184212008-02-01 Dave Love <fx@gnu.org>
18422
18423 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
18424
184252008-02-01 Kenichi Handa <handa@m17n.org>
18426
18427 * charset.c (load_charset_map): Handle the case that from < to
18428 correctly.
18429
18430 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
18431 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
18432 Pay attention to raw-8-bit chars.
18433
184342008-02-01 Kenichi Handa <handa@m17n.org>
18435
18436 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
18437 It is not bytecompiled now.
18438
18439 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
18440 (charset_jisx0208): New variables.
18441 (Fdefine_charset_internal): Setup them if appropriate.
18442 (init_charset_once): Initialize them to -1.
18443
18444 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
18445 (charset_jisx0208): Extern them.
18446
18447 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
18448 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
18449 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
18450 (setup_iso_safe_charsets): Fix arguments to Fassq.
18451 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
18452 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
18453 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
18454 (encode_coding_iso_2022): Change the 1st arg to
18455 ENCODE_ISO_CHARACTER to a variable.
18456
184572008-02-01 Kenichi Handa <handa@m17n.org>
18458
18459 * charset.h (enum define_charset_arg_index): New enums
18460 charset_arg_min_code and charset_arg_max_code.
18461 (struct charset): New member char_index_offset.
18462
18463 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
18464 Take charset->char_index_offset into account.
18465 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
18466 args[charset_arg_max_code]. Setup charset.char_index_offset.
18467 (syms_of_charset): Fix args to Fdefine_charset_internal.
18468
184692008-02-01 Dave Love <fx@gnu.org>
18470
18471 * coding.c (decode_coding_utf_8): Reject overlong sequences.
18472
184732008-02-01 Dave Love <fx@gnu.org>
18474
18475 * coding.c: Doc fixes.
18476 (Fcoding_system_aliases): Fix return value.
18477 (Qmac): Remove (duplicated) definition.
18478
184792008-02-01 Dave Love <fx@gnu.org>
18480
362654a6
JB
18481 * charset.c (Fcharset_priority_list, Fset_charset_priority):
18482 New functions.
aac0c6e3
MR
18483
18484 * character.c (Fstring): Doc fix.
18485
18486 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
18487
362654a6 18488 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
18489 (font-encoding-alist): Doc fix.
18490
184912008-02-01 Dave Love <fx@gnu.org>
18492
18493 * term.c (costs_set): Declare static, non-initialized for pcc.
18494 (encode_terminal_code): Remove unused var.
18495
18496 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
18497 for K&R.
18498
18499 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
18500
18501 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
18502 (suffixes): Move out of make_subsidiaries for K&R.
18503
18504 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
18505
18506 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
18507
185082008-02-01 Dave Love <fx@gnu.org>
18509
18510 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
18511
18512 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
18513
185142008-02-01 Yong Lu <lyongu@asia-infonet.com>
18515
18516 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
18517
18518 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
18519
185202008-02-01 Kenichi Handa <handa@m17n.org>
18521
18522 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
18523 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
18524
185252008-02-01 Kenichi Handa <handa@m17n.org>
18526
18527 * coding.c (decode_coding_charset): Adjust for the change of
18528 Fdefine_coding_system_internal.
18529 (Fdefine_coding_system_internal): For a coding system of
18530 `charset' type, store a list of charset IDs in
18531 `charset_attr_charset_valids' element of coding attributes.
18532
185332008-02-01 Kenichi Handa <handa@m17n.org>
18534
18535 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
18536 (emacs_mule_char): New arg src. Delete arg `composition'. Change
18537 caller. Handle 2-byte and 3-byte charsets correctly.
18538 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
18539 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
18540 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
18541 (DECODE_EMACS_MULE_21_COMPOSITION): Call
18542 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
18543 sequence.
18544 (decode_coding_emacs_mule): Handle composition correctly. Rewind
18545 `src' and `consumed_chars' correctly before calling emacs_mule_char.
18546 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
18547 and alt&rule composition.
18548 (decode_coding_iso_2022): Handle composition correctly.
18549 (init_coding_once): Setup emacs_mule_bytes for private charsets.
18550
18551 * charset.c (Fdefine_charset_internal): Fix bug for the case of
18552 re-defining a charset. If the charset has :emacs-mule-id, setup
18553 emacs_mule_bytes.
18554 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
18555
185562008-02-01 Kenichi Handa <handa@m17n.org>
18557
18558 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
18559 (encode_coding_big5, encode_coding_charset): If coding requires safe
18560 encoding, produce a character specified by
18561 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
18562
185632008-02-01 Dave Love <fx@gnu.org>
18564
18565 * xterm.c (XSetIMValues): Declare.
18566
18567 * process.c: Conditionally include sys/wait.h, pty.h.
18568
18569 * print.c (print_object): Fix print format for 64-bit systems.
18570
18571 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
18572
18573 * buffer.c (emacs_strerror): Declare.
18574
18575 * fontset.c (Fclear_face_cache): Declare.
18576 (accumulate_font_info): Comment-out (unused).
18577 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
18578 variables.
18579
18580 * character.h (string_escape_byte8): Declare.
18581
18582 * charset.c (load_charset_map, load_charset_map_from_file): Remove
18583 unused vars.
18584 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
18585 (Fmap_charset_chars): Doc fix.
18586
18587 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
18588 (Fset_coding_system_priority, Fset_coding_system_priority)
18589 (Fdefine_coding_system_internal): Doc fix.
18590
185912008-02-01 Dave Love <fx@gnu.org>
18592
18593 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
18594
185952008-02-01 Kenichi Handa <handa@m17n.org>
18596
18597 * character.c (string_escape_byte8): Make multibyte string with
18598 correct size.
18599
18600 * charset.c (Fmake_char): Delete unnecessary code.
18601
186022008-02-01 Kenichi Handa <handa@m17n.org>
18603
18604 * xfns.c (x_encode_text): Allocate coding.destination here, and
18605 call encode_coding_object with dst_object Qnil.
18606
18607 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
18608 multibyte form correctly.
18609
18610 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
18611 against Vfont_encoding_alist.
18612
18613 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
18614 handling of charset list.
18615 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
18616 (decode_coding_object): Move point to coding->dst_pos before
18617 calling post-read-conversion function.
18618 (encode_coding_object): Give correct arguments to
18619 pre-write-conversion. Ignore the return value of
18620 pre-write-conversion function. Pay attention to the case that
18621 pre-write-conversion changes the current buffer. If dst_object is
18622 Qt, even if coding->src_bytes is zero, allocate at least one byte
18623 to coding->destination.
18624
18625 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
18626
18627 * charset.c (Fmake_char): Make it more backward compatible.
18628 (Fmap_charset_chars): Fix docstring.
18629
186302008-02-01 Dave Love <fx@gnu.org>
18631
18632 * coding.c: Doc fixes.
18633 (Fdefine_coding_system_alias): Use names, not symbols, in
18634 coding-system-alist.
18635
186362008-02-01 Kenichi Handa <handa@m17n.org>
18637
18638 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
18639 of calling free_realized_face.
18640
186412008-02-01 Yong Lu <lyongu@asia-infonet.com>
18642
18643 * charset.c (read_hex): Don't treat SPC as a comment starter.
18644 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
18645 (Fdecode_char): Fix typo.
18646
186472008-02-01 Kenichi Handa <handa@m17n.org>
18648
18649 * charset.h (struct charset): New member `code_space_mask'.
18650
18651 * coding.c (coding_set_source): Delete the local variable beg_byte.
18652 (encode_coding_charset, Fdefine_coding_system_internal):
18653 Delete the local variable charset.
18654 (Fdefine_coding_system_internal): Setup
18655 attrs[coding_attr_charset_valids] correctly.
18656
18657 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
18658 member to check if CODE is valid or not.
18659 (Fdefine_charset_internal): Initialize `code_space_mask' member.
18660 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
18661 is within the range of charset->min_code and carset->max_code.
18662
186632008-02-01 Dave Love <fx@gnu.org>
18664
18665 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
18666
18667 * dispextern.h (generate_ascii_font): Fix return type.
18668
18669 * xfaces.c (generate_ascii_font): Fix arg declaration.
18670
18671 * coding.c (coding_inherit_eol_type)
18672 (Fset_terminal_coding_system_internal)
18673 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
18674
186752008-02-01 Kenichi Handa <handa@m17n.org>
18676
18677 * coding.c (decode_coding_charset, encode_coding_charset): Handle
18678 multiple charsets correctly.
18679
186802008-02-01 Kenichi Handa <handa@m17n.org>
18681
18682 * search.c (boyer_moore): Fix handling of multibyte character
18683 translation.
18684
18685 * xdisp.c (display_mode_element): When the variable `elt' is
18686 changed, update `this' and `lisp_string'.
18687
186882008-02-01 Kenichi Handa <handa@m17n.org>
18689
18690 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
18691
18692 * callproc.c (Fcall_process): Be sure to give the current buffer
18693 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
18694
18695 * charset.c (struct charset_map_entries): New struct.
18696 (load_charset_map): Rename from parse_charset_map. New args
18697 entries and n_entries. Change caller.
18698 (load_charset_map_from_file): Rename from load_charset_map.
18699 Change caller. New arg control_flag. Call load_charset_map at
18700 the tail.
18701 (load_charset_map_from_vector): New function.
18702 (Fdefine_charset_internal): Setup charset.compact_codes_p.
18703 (encode_char): If the charset is compact, change a character index
18704 to a code point.
18705
18706 * coding.c (coding_alloc_by_making_gap): Check the case that the
18707 source and destination are the same correctly.
18708 (decode_coding_raw_text): Set coding->consumed_char and
18709 coding->consumed to 0.
18710 (produce_chars): If coding->chars_at_source is nonzero, update
18711 coding->consumed_char and coding->consumed before calling
18712 alloc_destination.
18713 (Fdefine_coding_system_alias): Register ALIAS in
18714 Vcoding_system_alist.
18715 (syms_of_coding): Define `no-conversion' coding system at the tail.
18716
18717 * fileio.c (Finsert_file_contents): Set coding_system instead of
18718 val. If the current buffer is multibyte, always call
18719 decode_coding_gap.
18720
18721 * xfaces.c (try_font_list): Give higher priority to fontset's
18722 family than face's family.
18723
187242008-02-01 Kenichi Handa <handa@m17n.org>
18725
18726 * callproc.c (Fcall_process): Be sure to give the current buffer
18727 to decode_coding_c_string.
18728
18729 * xfaces.c (try_font_list): Give a family specified in a fontset
18730 higher priority than a family specified in a face.
18731
187322008-02-01 Kenichi Handa <handa@m17n.org>
18733
18734 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
18735 Fix arguments to insert_from_buffer.
18736
18737 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
18738
187392008-02-01 Kenichi Handa <handa@m17n.org>
18740
18741 * coding.c (produce_chars): Set the variable `multibytep' correctly.
18742 (decode_coding_gap): Set coding->dst_multibyte correctly.
18743
187442008-02-01 Kenichi Handa <handa@m17n.org>
18745
18746 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
18747 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
18748 (encode_coding_utf_16): Substitute coding->default_char for
18749 non-Unicode characters.
18750 (decode_coding): Don't call record_insert here.
18751 (setup_coding_system): Initialize `surrogate' of
18752 coding->spec.utf_16 to 0.
18753 (EMIT_ONE_BYTE): Fix for multibyte case.
18754
18755 * insdel.c (insert_from_gap): Call record_insert.
18756
187572008-02-01 Kenichi Handa <handa@m17n.org>
18758
18759 * casefiddle.c (casify_region): Fix multibyte case.
18760
18761 * character.c (c_string_width): Add return type `int'.
18762 (char_string_with_unification): Delete arg ADVANCED.
18763
18764 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
18765 (CHAR_STRING): Adjust for the change of char_string_with_unification.
18766 (CHAR_STRING_ADVANCE): Make it do-while statement.
18767
18768 * chartab.c (sub_char_table_set_range): Optimize for the case
18769 DEPTH == 3. Add workaround code for a GCC optimization bug.
18770
18771 * charset.c (parse_charset_map): Remove an unused variable.
18772
18773 * coding.c: Delete unused variables.
18774
18775 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
18776 earlier. If inserted is zero and the coding system doesn't
18777 require flushing, don't call decode_coding_gap.
18778
18779 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
18780
187812008-02-01 Kenichi Handa <handa@m17n.org>
18782
18783 The following changes are for using Unicode as an internal
18784 character model, and use UTF-8 format for buffer/string
18785 representation.
18786
18787 * .gdbinit (xchartable): Adjust for the change of char table structure.
18788 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
18789
18790 * Makefile.in (obj): Add character.o and chartab.o.
18791 (lisp, shortlisp): Remove utf-8.elc.
18792 (*.o): For many files, change dependency on charset.h to
18793 character.h, and add dependency on character.h.
18794 (character.o, chartab.o): New targets.
18795
18796 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
18797 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
18798 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
18799 of "charset.h".
18800
18801 * dired.c, filelock.c: Include "character.h".
18802
18803 * alloc.c: Include "character.h" instead of "charset.h".
18804 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
18805 (syms_of_alloc): Remove defsubr for Smake_char_table.
18806
18807 * buffer.c: Include "character.h" instead of "charset.h", don't
18808 include "coding.h".
18809 (Fset_buffer_multibyte): Adjust for UTF-8.
18810
18811 * buffer.h: EXFUN Fbuffer_live_p.
18812
18813 * callproc.c: Include "character.h" instead of "charset.h".
18814 (Fcall_process): Big change for the new code-conversion APIs.
18815
18816 * casetab.c: Include "character.h" instead of "charset.h".
18817 (set_canon, set_identity, shuffle): Adjust for the new
18818 map_char_table spec.
18819 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
18820 accessing the char table structure.
18821
18822 * chartab.c: New file that implements char table.
18823
18824 * category.c: Include "character.h".
18825 (copy_category_entry): New function.
18826 (copy_category_table): Call map_char_table and copy_category_entry.
18827 (Fmake_category_table): Initialize all top-level slots.
18828 (char_category_set): New function.
18829 (modify_lower_category_set): Delete.
18830 (Fmodify_category_entry): Call char_table_ref_and_range.
18831
18832 * category.h (CATEGORY_SET): Just call char_category_set.
18833
18834 * ccl.c: Include "character.h".
18835 (Qccl, Qcclp): New variables.
18836 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
18837 it's less than 256.
18838 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
18839 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
18840 and DST type.
18841 (ccl_driver): Change types of argument, adjust code accordingly.
18842 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
18843 ccl_driver.
18844 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
18845
18846 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
18847 New members src_multibyte, dst_multibyte, consumed, and produced.
18848 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
18849 (CODING_SPEC_CCL_PROGRAM): New macro.
18850 (ccl_driver): Update prototype.
18851 (Qccl, Qcclp, Fccl_program_p): Extern them.
18852 (CHECK_CCL_PROGRAM): New macro.
18853
18854 * character.c, character.h, chartab.c: New files.
18855
18856 * charset.c: Mostly re-written. Move character and multibyte sequence
18857 handling codes to character.c.
18858
18859 * charset.h: Mostly re-written. Move character and multibyte sequence
18860 handling codes to character.h.
18861
18862 * coding.c, coding.h: Mostly re-written.
18863
18864 * composite.c: Include "character.h" instead of "charset.h".
18865 (CHAR_WIDTH): Move to character.h.
18866 (HASH_KEY, HASH_VALUE): Delete.
18867
18868 * composite.h (enum composition_method): Change order of enumeration
18869 symbols.
18870
18871 * data.c: Include "character.h" instead of "charset.h".
18872 (Faref): Call CHAR_TABLE_REF for a char table.
18873 (Faset): Call CHAR_TABLE_SET for a char table.
18874
18875 * dispextern.h (free_realized_face, check_face_attribytes)
18876 (generate_ascii_font): Extern them.
18877 (free_realized_multibyte_face): Delete extern.
18878
18879 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
18880 table structure.
18881
18882 * editfns.c: Include "character.h" instead of "charset.h".
18883 (Fchar_to_string): Always call CHAR_STRING.
18884
18885 * emacs.c (main): Call init_charset_once, init_charset,
18886 syms_of_chartab, and syms_of_character.
18887
18888 * fileio.c: Include "character.h" instead of "charset.h".
18889 (Finsert_file_contents): Big change for the new code-conversion API.
18890 (choose_write_coding_system, Fwrite_region): Likewise.
18891 (build_annotations_2): Delete.
18892 (e_write): Big change for the new code-conversion API.
18893
18894 * fns.c: Include "character.h" instead of "charset.h".
18895 (copy_sub_char_table): Move to chartab.c.
18896 (Fcopy_sequence): Call copy_char_table for a char table.
18897 (concat): Delete codes calling count_multibyte.
18898 (string_char_to_byte, string_byte_to_char): Adjust for the new
18899 multibyte form.
18900 (internal_equal): Adjust for the change of char table structure.
18901 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
18902 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
18903 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
18904 (char_table_translate, optimize_sub_char_table)
18905 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
18906 chartab.c.
18907 (char_table_ref_and_index): Delete.
18908 (HASH_KEY, HASH_VALUE): Move to lisp.h.
18909 (Fmd5): Call preferred_coding_system instead of accessing
18910 Vcoding_category_list. Adjust for the new code-conversion API.
18911 (syms_of_fns): Move defsubr for char table related functions to
18912 chartab.c.
18913
18914 * fontset.c: Mostly re-written.
18915
18916 * fontset.h (struct font_info): Change type of the member encoding_type.
18917 (enum FONT_SPEC_INDEX): New enum.
18918 (fontset_font_pattern, fs_load_font): Update prototype.
18919 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
18920
18921 * indent.c: Include "character.h" instead of "charset.h".
18922 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
18923
18924 * insdel.c: Include "character.h" instead of "charset.h".
18925 (copy_text): Don't refer to Vnonascii_translation_table.
18926 (insert_from_gap): New function.
18927
18928 * keyboard.c: Include "character.h" instead of "charset.h".
18929 (command_loop_1): Never call direct_output_forward_char before
18930 a non-ASCII character.
18931 (read_char): If Vkeyboard_translate_table is a char table, always
18932 translate a character.
18933
18934 * keymap.c: Include "character.h".
18935 (store_in_keymap): Handle the case that IDX is a cons.
18936 (Fdefine_key): Handle the case that KEY is a cons and the car part
18937 is also a cons (range).
18938 (push_key_description): Adjust for the new character code.
18939 (describe_vector): Call describe_char_table for a char table.
18940 (describe_char_table): New function.
18941
18942 * keymap.h (describe_char_table): Extern it.
18943
18944 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
18945 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
18946 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
18947 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
18948 Delete.
18949 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
18950 structure.
18951 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
18952 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
18953 (CHARTAB_SIZE_BITS_3): New macros.
18954 (chartab_size): Extern it.
18955 (struct Lisp_Char_Table): Re-design.
18956 (struct Lisp_Sub_Char_Table): New structure.
18957 (HASH_KEY, HASH_VALUE): Move from fns.c.
18958 (CHARACTERBITS): Define as 22.
18959 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
18960 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
18961 (GC_SUB_CHAR_TABLE_P): New macro.
18962 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
18963 (code_convert_string_norecord): Deleted extern.
18964 (init_character_once, syms_of_character, init_charset)
18965 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
18966
18967 * lread.c: Include "character.h".
18968 (read_multibyte): New arg NBYTES.
18969 (read_escape): Change the meaning of returned *BYTEREP.
18970 (to_multibyte): Delete.
18971 (read1): Adjust the handling of char table and string.
18972
18973 * print.c: Include "character.h" instead of "charset.h".
18974 (print_string): Convert 8-bit raw bytes to octal form by
18975 string_escape_byte8.
18976 (print_object): Adjust for the new multibyte form. Print 8-bit
18977 raw bytes always in octal form. Handle sub char table correctly.
18978
18979 * process.c: Include "character.h" instead of "charset.h".
18980 (read_process_output, send_process): Adjust for the new
18981 code-conversion API.
18982
18983 * puresize.h (BASE_PURESIZE): Increase.
18984
18985 * regex.c: Include "character.h" instead of "charset.h".
18986 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
18987 (regex_compile): Accept a range whose starting and ending
18988 character have different leading bytes.
18989 (analyse_first): Adjust for the above change.
18990
18991 * search.c: Include "character.h" instead of "charset.h".
18992 (search_buffer, boyer_moore): Adjust for the new multibyte form.
18993 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
18994
18995 * syntax.c: Include "character.h" instead of "charset.h".
18996 (syntax_parent_lookup): Delete.
18997 (Fmodify_syntax_entry): Accept a cons as CHAR.
18998 (skip_chars): Adjust for the new multibyte form.
18999 (init_syntax_once): Call char_table_set_range instead of directly
19000 accessing the structure of a char table.
19001
19002 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19003 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19004 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19005 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19006
19007 * term.c: Include "buffer.h" and "character.h".
19008 (encode_terminal_code, write_glyphs): Adjust for the new
19009 code-conversion API.
19010 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19011
19012 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19013
19014 * xdisp.c: Include "character.h".
19015 (get_next_display_element): Adjust for the new multibyte form.
19016 (disp_char_vector): Adjust for the new char table structure.
19017 (decode_mode_spec_coding): Adjust for the new structure of
19018 coding system.
19019 (decode_mode_spec): Adjust for the new code-conversion API.
19020
19021 * xfaces.c: Include "character.h" instead of "charset.h".
19022 (load_face_font): Adjust for the change of choose_face_font and
19023 FS_LOAD_FONT.
19024 (generate_ascii_font): New function.
19025 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19026 (set_font_frame_param): Adjust for the change of choose_face_font.
19027 (free_realized_face): Make it public.
19028 (free_realized_faces_for_fontset): Rename from
19029 free_realized_multibyte_face. Free also faces realized for ASCII.
19030 (choose_face_font): Change arguments. Adjust for the change of
19031 fontset_font_pattern and FS_LOAD_FONT.
19032
19033 * xfns.c: Include "character.h".
19034 (x_encode_text): Adjust for the new code-conversion API.
19035
19036 * xselect.c: Don't include "charset.h".
19037 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19038
19039 * xterm.c: Include "character.h".
19040 (x_encode_char): New argument CHARSET. Change caller.
19041 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19042 Call ENCODE_CHAR instead of SPLIT_CHAR.
19043 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19044 CHAR_WIDTH instead of CHARSET_WIDTH.
19045 (XTread_socket): Adjust for the new code-conversion API.
19046 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19047 (x_load_font): Adjust for the change of struct font.
19048
190492008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19050
19051 * xfaces.c (face_at_buffer_position): Remove unused vars.
19052
190532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19054
19055 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19056 Fix overflow checking.
19057
190582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19059
19060 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19061 Cancel previous change.
19062
190632008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19064
19065 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19066 ccl->eight_bit_control. Fix check for buffer overflow.
19067 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19068 (ccl_driver): Initialize extra_bytes to 0.
19069
190702008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19071
19072 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19073 return it ORed with ctrl_modifier.
19074
190752008-01-29 Miles Bader <miles@gnu.org>
19076
19077 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19078
190792008-01-28 Jason Rumney <jasonr@gnu.org>
19080
19081 * w32.c (stat): Don't double check for networked drive.
19082
190832008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19084
19085 * window.c (run_window_configuration_change_hook): New function.
19086 Code extracted from set_window_buffer. Set the selected frame.
19087 (set_window_buffer): Use it.
19088 * window.h (run_window_configuration_change_hook): Declare.
19089 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19090
19091 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19092
190932008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19094
19095 * Makefile.in: Remove references to unused macros.
19096
190972008-01-26 Eli Zaretskii <eliz@gnu.org>
19098
19099 * w32.c (g_b_init_get_sid_sub_authority)
19100 (g_b_init_get_sid_sub_authority_count): New static variables.
19101 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19102 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19103 (init_user_info): Use them to retrieve uid and gid.
19104 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19105 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19106 st_uid and st_gid of the file.
19107
191082008-01-26 Jason Rumney <jasonr@gnu.org>
19109
19110 * w32.c (logon_network_drive): New function.
19111 (stat): Use it.
19112
191132008-01-26 Chong Yidong <cyd@stupidchicken.com>
19114
19115 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19116 invisible text covered with an ellipsis.
19117
191182008-01-25 Richard Stallman <rms@gnu.org>
19119
19120 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19121 jump back to beginning. Move some other initializations after that.
19122 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19123 New variables.
19124 (syms_of_xdisp): Init them.
19125
19126 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19127
19128 * buffer.c (reset_buffer_local_variables):
19129 Implement `permanent-local-hook'.
19130 (Qpermanent_local_hook): New variable.
19131 (syms_of_buffer): Init and staticpro it.
19132
191332008-01-25 Michael Albinus <michael.albinus@gmx.de>
19134
19135 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19136
191372008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19138
19139 * fns.c (Fclrhash): Return TABLE.
19140
191412008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19142
19143 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19144 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19145 is set even without positional changes.
19146 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19147
19148 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19149
191502008-01-23 Jason Rumney <jasonr@gnu.org>
19151
19152 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19153
19154 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19155 the unicode range available in MULE by locale-coding-system.
19156 Improve dbcs lead byte detection. Set event timestamp and modifiers
19157 earlier.
19158
191592008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19160
19161 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19162 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19163 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19164 when used on child processes.
19165
191662008-01-21 Michael Albinus <michael.albinus@gmx.de>
19167
19168 * dbusbind.c (Fdbus_method_return_internal): Rename from
19169 Fdbus_method_return.
19170 (Fdbus_unregister_object): Move to dbus.el.
19171 (Fdbus_call_method, Fdbus_method_return_internal)
19172 (Fdbus_send_signal): Improve debug messages.
19173
191742008-01-20 Martin Rudalics <rudalics@gmx.at>
19175
19176 * undo.c (undo_inhibit_record_point): New variable.
19177 (syms_of_undo): Initialize it.
19178 (record_point): Don't record point when undo_inhibit_record_point
19179 is set.
19180
191812008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19182
19183 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19184
19185 * xdisp.c (Qauto_hscroll_mode): New var.
19186 (syms_of_xdisp): Initialize it.
19187 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19188 window's buffer.
19189 (hscroll_windows): Don't check automatic_hscrolling_p here.
19190
19191 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19192 vscroll if we're setting window-buffer to the value it already has.
19193
191942008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19195
19196 * m/intel386.h: Remove references to XENIX.
19197
191982008-01-17 Andreas Schwab <schwab@suse.de>
19199
19200 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19201 instead of HAVE_X86_64_LIB64_DIR.
19202 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19203
192042008-01-17 Glenn Morris <rgm@gnu.org>
19205
19206 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19207 to HAVE_X86_64_LIB64_DIR.
19208
192092008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19210
19211 * s/irix3-3.h:
19212 * s/irix4-0.h:
19213 * s/386-ix.h:
19214 * s/domain.h:
19215 * s/hpux9-x11r4.h:
19216 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19217
19218 * sysdep.c: Remove code containing references to symbols defined
19219 by unsupported systems.
19220
192212008-01-16 Glenn Morris <rgm@gnu.org>
19222
19223 * coding.c (select-safe-coding-system-function): Doc fix.
19224
192252008-01-15 Glenn Morris <rgm@gnu.org>
19226
19227 * config.in: Revert 2008-01-13 change: this is a generated file.
19228
192292008-01-13 Tom Tromey <tromey@redhat.com>
19230
19231 * lisp.h: Fix typo.
19232
192332008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19234
19235 * m/sequent-ptx.h:
19236 * m/sequent.h:
19237 * s/ptx.h:
19238 * s/ptx4-2.h:
19239 * s/ptx4.h: Remove files for systems no longer supported.
19240
19241 * callproc.c (Fcall_process): Fix previous change.
19242
192432008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19244
19245 * unexsunos4.c: Remove file, system not supported anymore.
19246
19247 * m/mips.h:
19248 * m/intel386.h:
19249 * callproc.c:
19250 * config.in:
19251 * ecrt0.c:
19252 * emacs.c:
19253 * fileio.c:
19254 * frame.c:
19255 * getpagesize.h:
19256 * keyboard.c:
19257 * lread.c:
19258 * process.c:
19259 * puresize.h:
19260 * sysdep.c:
19261 * systty.h:
19262 * syswait.h:
19263 * unexec.c:
19264 * xdisp.c:
19265 * alloc.c: Remove code containing references to symbols defined by
19266 unsupported systems.
19267
192682008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19269
19270 * coding.c (detect_coding_mask): Fix previous change.
19271
192722008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19273
19274 * coding.c (detect_coding_iso2022): New arg
19275 latin_extra_code_state. Allow Latin extra codes only
19276 when *latin_extra_code_state is nonzero.
19277 (detect_coding_mask): If there is a NULL byte, detect the encoding
19278 as UTF-16 or binary. If Latin extra codes exist, detect the
19279 encoding as ISO-2022 only when there's no other proper encoding is
19280 found.
19281
192822008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19283
19284 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19285 #ifdef MAC_OS.
19286
192872008-01-08 Richard Stallman <rms@gnu.org>
19288
19289 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19290
192912008-01-06 Nick Roberts <nickrob@snap.net.nz>
19292
19293 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19294 menu bar in parentheses.
19295
192962008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19297
19298 * m/7300.h:
19299 * m/acorn.h:
19300 * m/alliant-2800.h:
19301 * m/alliant.h:
19302 * m/alliant1.h:
19303 * m/alliant4.h:
19304 * m/altos.h:
19305 * m/amdahl.h:
19306 * m/apollo.h:
19307 * m/att3b.h:
19308 * m/aviion-intel.h:
19309 * m/aviion.h:
19310 * m/celerity.h:
19311 * m/clipper.h:
19312 * m/cnvrgnt.h:
19313 * m/convex.h:
19314 * m/cydra5.h:
19315 * m/delta88k.h:
19316 * m/dpx2.h:
19317 * m/dual.h:
19318 * m/elxsi.h:
19319 * m/f301.h:
19320 * m/gould-np1.h:
19321 * m/gould.h:
19322 * m/i860.h:
19323 * m/ibmps2-aix.h:
19324 * m/ibmrt-aix.h:
19325 * m/ibmrt.h:
19326 * m/irist.h:
19327 * m/is386.h:
19328 * m/isi-ov.h:
19329 * m/mega68.h:
19330 * m/mg1.h:
19331 * m/news-r6.h:
19332 * m/news-risc.h:
19333 * m/news.h:
19334 * m/nh3000.h:
19335 * m/nh4000.h:
19336 * m/ns16000.h:
19337 * m/ns32000.h:
19338 * m/nu.h:
19339 * m/orion.h:
19340 * m/orion105.h:
19341 * m/paragon.h:
19342 * m/pfa50.h:
19343 * m/plexus.h:
19344 * m/pyramid.h:
19345 * m/pyrmips.h:
19346 * m/sh3el.h:
19347 * m/sps7.h:
19348 * m/sr2k.h:
19349 * m/stride.h:
19350 * m/sun1.h:
19351 * m/sun2.h:
19352 * m/sun3-68881.h:
19353 * m/sun3-fpa.h:
19354 * m/sun3-soft.h:
19355 * m/sun3.h:
19356 * m/sun386.h:
19357 * m/symmetry.h:
19358 * m/tad68k.h:
19359 * m/tahoe.h:
19360 * m/targon31.h:
19361 * m/tek4300.h:
19362 * m/tekxd88.h:
19363 * m/tower32.h:
19364 * m/tower32v3.h:
19365 * m/ustation.h:
19366 * m/wicat.h:
19367 * m/xps100.h:
19368 * s/cxux.h:
19369 * s/cxux7.h:
19370 * s/dgux.h:
19371 * s/dgux4.h:
19372 * s/dgux5-4-3.h:
19373 * s/dgux5-4r2.h:
19374 * s/esix.h:
19375 * s/esix5r4.h:
19376 * s/hiuxmpp.h:
19377 * s/hiuxwe2.h:
19378 * s/iris3-5.h:
19379 * s/iris3-6.h:
19380 * s/isc2-2.h:
19381 * s/isc3-0.h:
19382 * s/isc4-0.h:
19383 * s/isc4-1.h:
19384 * s/newsos5.h:
19385 * s/newsos6.h:
19386 * s/osf1.h:
19387 * s/osf5-0.h:
19388 * s/riscix1-1.h:
19389 * s/riscix12.h:
19390 * s/sco4.h:
19391 * s/sco5.h:
19392 * s/sunos4-0.h:
19393 * s/sunos4-1.h:
19394 * s/sunos413.h:
19395 * s/sunos4shr.h:
19396 * s/umax.h:
19397 * s/unipl5-2.h:
19398 * s/xenix.h:
19399 * cxux-crt0.s:
19400 * unexapollo.c:
19401 * unexconvex.c:
19402 * unexenix.c:
19403 * unexsni.c: Remove files for systems no longer supported.
19404
19405 * m/intel386.h: Remove references to unsupported systems.
19406
19407 * w32.c (get_emacs_configuration): Remove reference to i860.
19408
19409 * sysdep.c: Remove dead code.
19410
194112008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
19412
19413 * s/rtu.h:
19414 * m/masscomp.h: Remove files. Platform is obsolete.
19415
194162008-01-04 Michael Albinus <michael.albinus@gmx.de>
19417
19418 * dbusbind.c (Fdbus_method_return): New function.
19419 (xd_read_message): Add the serial number to the event.
19420 (Fdbus_register_method): Activate the function.
19421
194222008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
19423
19424 * keyboard.c (read_key_sequence): Fix typo.
19425
194262008-01-03 Michael Albinus <michael.albinus@gmx.de>
19427
19428 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
19429 (xd_signature, xd_append_arg): Handle element type detection for
19430 empty arrays.
19431 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
19432 SDATA () calls; this must be solved more general.
19433 (Fdbus_register_signal): Use SBYTES instead of strlen.
19434
194352008-01-03 Magnus Henoch <magnus@zemdatav>
19436
19437 * dbusbind.c (xd_append_arg): Use unsigned char instead of
19438 unsigned int for byte values (necessary for big-endian platform).
19439 (Fdbus_call_method): Handle the case of no returned arguments.
19440
194412007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
19442
19443 * dbusbind.c (xd_read_message): Use non-static input_event struct.
19444
194452007-12-31 Magnus Henoch <mange@freemail.hu>
19446
19447 * dbusbind.c (xd_signature): Signature of variant is just "v".
19448
194492007-12-30 Michael Albinus <michael.albinus@gmx.de>
19450
19451 * dbusbind.c: Fix several errors and compiler warnings.
19452 Reported by Tom Tromey <tromey@redhat.com>.
19453 (XD_ERROR, XD_DEBUG_MESSAGE)
19454 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
19455 (xd_append_arg): Part for basic D-Bus types rewritten.
19456 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
19457 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
19458 appropriate.
19459 (xd_read_message): Return Qnil. Don't signal an error; it is not
19460 useful during event reading.
19461 (Fdbus_register_signal): Signal an error if the check for
19462 FUNCTIONP fails.
19463 (Fdbus_register_method): New function. The implementation is not
19464 complete, the call of the function signals an error therefore.
19465 (Fdbus_unregister_object): New function, renamed from
19466 Fdbus_unregister_signal. The initial check signals an error, if
19467 the object is not well formed.
19468
194692007-12-30 Richard Stallman <rms@gnu.org>
19470
19471 * textprop.c (get_char_property_and_overlay):
19472 Signal error if POSITION is out of range in a buffer.
19473
194742007-12-29 Martin Rudalics <rudalics@gmx.at>
19475
19476 * w32fns.c (Fx_create_frame): Make copy of frame parameters
19477 because the original parameters are in pure storage now.
19478
194792007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19480
19481 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
19482
194832007-12-22 Eli Zaretskii <eliz@gnu.org>
19484
19485 * callint.c (syms_of_callint) <command-history>: Add reference to
19486 history-length in the doc string.
19487
194882007-12-17 Jason Rumney <jasonr@gnu.org>
19489
19490 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
19491 before passing as wParam.
19492
194932007-12-22 Michael Albinus <michael.albinus@gmx.de>
19494
19495 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
19496 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
19497 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
19498 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
19499 as number.
19500 (Fdbus_call_method): Fix docstring.
19501
195022007-12-21 Michael Albinus <michael.albinus@gmx.de>
19503
19504 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
19505 New macros.
19506 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
19507 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
19508 Simplify.
19509 (xd_signature): New function.
19510 (xd_append_arg): Compute also signatures. Major rewrite.
19511 (xd_retrieve_arg): Make debug messages friendly.
19512 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
19513 Check for signatures of arguments.
19514
195152007-12-19 Michael Albinus <michael.albinus@gmx.de>
19516
19517 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
19518 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
19519 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
19520 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
19521 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
19522 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
19523 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
19524 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
19525 (xd_retrieve_value): Remove. Functionality included in ...
19526 (xd_append_arg): New function.
19527 (Fdbus_call_method, Fdbus_send_signal): Apply it.
19528
195292007-12-16 Michael Albinus <michael.albinus@gmx.de>
19530
19531 * dbusbind.c (top): Include <stdio.h>.
19532 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
19533 dbus_message_new_method_call and dbus_message_new_signal.
19534 (Fdbus_register_signal): Rename unique_name to uname.
19535 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
19536 non-existing unique name. Fix typos in matching rule. Return an
19537 object which is useful in Fdbus_unregister_signal.
19538 (Fdbus_unregister_signal): Reimplementation, in order to remove
19539 only the corresponding entry.
19540 (Vdbus_registered_functions_table): Change the order of entries.
19541 Apply these changes in xd_read_message and Fdbus_register_signal.
19542
195432007-12-16 Andreas Schwab <schwab@suse.de>
19544
19545 * fileio.c (Finsert_file_contents): Fix overflow check to not
19546 depend on undefined integer overflow.
19547
195482007-12-14 Jason Rumney <jasonr@gnu.org>
19549
19550 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
19551 for characters above 127.
19552
195532007-12-13 Jason Rumney <jasonr@gnu.org>
19554
19555 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
19556 before dereferencing array.
19557 (lookup_vk_code): Remove zero comparison.
19558
195592007-12-14 Michael Albinus <michael.albinus@gmx.de>
19560
19561 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
19562 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
19563 Use `unsigned int' instead of `uint'.
19564 (xd_read_message, Fdbus_register_signal): Split expressions into
19565 multiple lines before operators "&&" and "||", according to the
19566 GNU Coding Standards.
19567
195682007-12-14 Eli Zaretskii <eliz@gnu.org>
19569
19570 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
19571
195722007-12-12 Juri Linkov <juri@jurta.org>
19573
19574 * buffer.c (Frename_buffer): In interactive spec replace
19575 `read-buffer' with `read-string' that uses `buffer-name-history'
19576 as history, and the current buffer's name as default.
19577
195782007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
19579
19580 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
19581 manipulating the backtrace manually.
19582 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
19583 (struct backtrace, backtrace_list): Remove.
19584 (command_loop_1): Remove dead var `no_direct'.
19585
19586 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
19587 preserve non-built-in buffer-local variables.
19588 (Fkill_all_local_variables): Don't re-create&re-set permanent
19589 buffer-local variables.
19590
195912007-12-09 Juri Linkov <juri@jurta.org>
19592
19593 * buffer.c (Frename_buffer): Change interactive spec from "s" to
19594 Lisp code that uses `read-buffer' with current buffer as default.
19595
195962007-12-08 Michael Albinus <michael.albinus@gmx.de>
19597
19598 * dbusbind.c (xd_read_message): Generate an event for every
19599 registered handler. There might be several handlers registered
19600 for the same signal.
19601 (Fdbus_register_signal): Don't overwrite a registration for the
19602 same signal. Add a new registration if handlers are different.
19603 (Vdbus_registered_functions_table): Rework doc string.
19604
196052007-12-07 Michael Albinus <michael.albinus@gmx.de>
19606
19607 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
19608 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
19609 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
19610 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
19611 Unify argument lists.
19612 (xd_read_message, Fdbus_register_signal): Reorder and extend event
19613 arguments and hash table keys. Use unique name for service.
19614 (Fdbus_unregister_signal): Remove checks.
19615 (Vdbus_registered_functions_table): Fix doc string.
19616
196172007-12-05 Magnus Henoch <mange@freemail.hu>
19618
19619 * process.c (make_process): Initialize pty_flag to 0.
19620
196212007-12-05 Jason Rumney <jasonr@gnu.org>
19622
19623 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
19624 specified XBMs.
19625
196262007-12-05 Richard Stallman <rms@gnu.org>
19627
19628 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
19629
196302007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19631
19632 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
19633 New variable.
19634 (mac_try_close_socket) [MAC_OSX]: New function.
19635 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
19636 Update cfsockets_for_select. Replace invalid CFRunLoop source.
19637
19638 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
19639 Use mac_try_close_socket.
19640
196412007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19642
19643 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
19644 reloc_base.
19645 (copy_dysymtab): Compute relocation base here.
19646 (rebase_reloc_address) [__ppc64__]: New function.
19647 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
19648 changed.
19649
196502007-12-05 Jason Rumney <jasonr@gnu.org>
19651
19652 * w32proc.c (sys_spawnve): Quote args with wildcards.
19653
196542007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19655
19656 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
19657 __objc_* sections.
19658 (unrelocate) [_LP64]: Set relocation base to address of data segment.
19659
196602007-12-05 Michael Albinus <michael.albinus@gmx.de>
19661
19662 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
19663 Move check for Vdbus_registered_functions_table to
19664 xd_read_queued_messages.
19665 (xd_read_queued_messages): Protect xd_read_message calls by
19666 internal_condition_case_1.
19667
196682007-12-04 Michael Albinus <michael.albinus@gmx.de>
19669
19670 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
19671 Qdbus_system_bus and Qdbus_session_bus, respectively.
19672 (Vdbus_intern_symbols): Remove.
19673 (Vdbus_registered_functions_table): New hash table.
19674 (XD_SYMBOL_INTERN_SYMBOL): Remove.
19675 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
19676 Rewrite in order to manage registered functions by hash table
19677 Vdbus_registered_functions_table.
19678
196792007-12-03 Jan Djärv <jan.h.d@swipnet.se>
19680
19681 * xterm.c: Update URL to Window Manager Specification in comment.
19682
196832007-12-02 Michael Albinus <michael.albinus@gmx.de>
19684
19685 * config.in (HAVE_DBUS): Add.
19686
19687 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
19688 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
19689 (obj): Add $(DBUS_OBJ).
19690 (LIBES): Add $(DBUS_LIBS).
19691 (dbusbind.o): New target.
19692
19693 * dbusbind.c: New file.
19694
19695 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
19696
19697 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
19698 (Qdbus_event): New Lisp symbol.
19699 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
19700 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 19701 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
19702
19703 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
19704
197052007-12-01 Richard Stallman <rms@gnu.org>
19706
19707 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
19708
197092007-11-30 Jason Rumney <jasonr@gnu.org>
19710
19711 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
19712 (w32con_reset_terminal_modes): Clear screen buffer.
19713 (w32_face_attributes): Don't use color indexes that are out of range.
19714 Only reverse the default colors.
19715
19716 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
19717 WINDOWSNT.
19718
19719 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
19720
197212007-11-29 Jason Rumney <jasonr@gnu.org>
19722
19723 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
19724 (w32_face_attributes): Use Vtty_defined_color_alist to determine
19725 if the terminal colors are initialized.
19726 (unspecified_fg, unspecified_bg): Remove unused declarations.
19727
197282007-11-29 Andreas Schwab <schwab@suse.de>
19729
19730 * keyboard.c (apply_modifiers): Fix typo.
19731
197322007-11-29 Richard Stallman <rms@gnu.org>
19733
19734 * keymap.c (Fcurrent_local_map): Doc fix.
19735
197362007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
19737
19738 * s/gnu-kfreebsd.h: New file.
19739
197402007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
19741
19742 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
19743 Don't cast redundantly.
19744
19745 * keyboard.c (KEY_TO_CHAR): New macro.
19746 (parse_modifiers, apply_modifiers): Accept integer arguments.
19747 (read_key_sequence): Use them to unify the "shift->unshift" mapping
19748 for chars and symbol keys.
19749 After doing such remapping, apply function-key-map again.
19750
197512007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
19752
19753 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
19754 compiled anymore.
19755
197562007-11-26 Andreas Schwab <schwab@suse.de>
19757
19758 * process.c (list_processes_1): Fix indentation level of the
19759 command column.
19760
197612007-11-23 Andreas Schwab <schwab@suse.de>
19762
19763 * editfns.c (Fformat): Handle %c specially since it requires the
19764 argument to be of type int.
19765
197662007-11-23 Markus Triska <markus.triska@gmx.at>
19767
19768 * emacs.c (main): Call init_editfns before init_process, since
19769 init_process sets Vprocess_connection_type depending on OS release.
19770
197712007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
19772
19773 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
19774 (find_symbol_value): Use do_symval_forwarding.
19775
19776 * data.c (set_internal): Set the value in the `cons-cell' (for
19777 Buffer_Local_values) not only for frame-local variables.
19778
197792007-11-22 Andreas Schwab <schwab@suse.de>
19780
19781 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
19782 values to sprintf.
19783 * keymap.c (Fsingle_key_description): Likewise.
19784 * print.c (print_object): Likewise.
19785
197862007-11-22 Jan Djärv <jan.h.d@swipnet.se>
19787
19788 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
19789 file for image is nil.
19790
197912007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
19792
19793 * term.c: Include stdarg.h.
19794 (fatal): Implement using varargs.
19795 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
19796
197972007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19798
19799 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
19800 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
19801 Update call to buffer_slot_type_mismatch.
19802 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
19803 (buffer_slot_type_mismatch): Update.
19804 * buffer.c (buffer_local_types): Remove.
19805 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
19806 (defvar_per_buffer): Set the type in the buffer_objfwd.
19807
198082007-11-21 Jason Rumney <jasonr@gnu.org>
19809
19810 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
19811 CreateFileMapping returns NULL on failure.
19812
198132007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
19814
19815 * search.c (Fset_match_data): Remove the `evaporate' feature.
19816 (unwind_set_match_data): Don't use the `evaporate' feature.
19817
198182007-11-21 Jason Rumney <jasonr@gnu.org>
19819
19820 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
19821
19822 * w32console.c (w32con_write_glyphs): Remove unused variables.
19823
198242007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
19825
19826 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
19827
19828 * s/darwin.h (MULTI_KBOARD): Remove.
19829
19830 * macfns.c (x_create_tip_frame, Fx_create_frame)
19831 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
19832
198332007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
19834
19835 * buffer.c (Fbuffer_local_value): Remove redundant test.
19836 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
19837 than in `current-buffer' to match the comment.
19838 Do the swap using swap_in_global_binding.
19839
19840 * data.c (store_symval_forwarding, set_internal):
19841 * eval.c (specbind): Remove dead code.
19842
19843 * coding.c (detect_coding, Fupdate_coding_systems_internal):
19844 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
19845 Since we do not want to see internal Lisp_*fwd objects here.
19846
198472007-11-18 Jan Djärv <jan.h.d@swipnet.se>
19848
19849 * sysdep.c (init_system_name): Use getaddrinfo if available.
19850
19851 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
19852 (x_scroll_bar_note_movement): start, end, with, height in struct
19853 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
19854
198552007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
19856
19857 * puresize.h (BASE_PURESIZE): Increase to 1190000.
19858
198592007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
19860
19861 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
19862 This undoes Richard's change of 14-Oct-2002.
19863
19864 * alloc.c (allocate_other_vector):
19865 * lisp.h (allocate_other_vector): Remove.
19866
19867 * window.c (struct save_window_data): Move non-lisp data to the end
19868 and make it `int' rather than Lisp_Object.
19869 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
19870 Done wrap/unwrap integer values.
19871 (Fset_window_configuration, compare_window_configurations):
19872 Update use of fields to their new types.
19873
19874 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
19875 Turn integer fields into `int'. Merge x_window_low and x_window_high.
19876 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
19877 (SET_SCROLL_BAR_X_WINDOW): Remove.
19878 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
19879 Access the new x_window field directly.
19880 * xterm.c (x_scroll_bar_create): Use a pseudovector.
19881 Don't wrap/unwrap integers into Lisp_Objects.
19882 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
19883 (x_scroll_bar_report_motion):
19884 Don't wrap/unwrap integers into Lisp_Objects.
19885 (x_term_init): Use SDATA.
19886 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
19887 (x_scroll_bar_set_handle, x_scroll_bar_remove)
19888 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
19889 (x_scroll_bar_report_motion, x_scroll_bar_clear):
19890 * xfns.c (x_set_background_color):
19891 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
19892 Access the new x_window field directly.
19893
19894 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
19895 (allocate_pseudovector): Make non-static.
19896
19897 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
19898 (allocate_pseudovector): Declare.
19899 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
19900
199012007-11-15 Andreas Schwab <schwab@suse.de>
19902
19903 * editfns.c (Fformat): Correctly format EMACS_INT values.
19904 Also take precision into account when formatting an integer.
19905
19906 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
19907
199082007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
19909
19910 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
19911 (syms_of_keyboard): Defsubr it.
19912
19913 * data.c (swap_in_global_binding): Fix longstanding bug where
19914 store_symval_forwarding was not called with the right second argument,
19915 thus causing objfwd-ing from being dropped.
19916
199172007-11-14 Juanma Barranquero <lekktu@gmail.com>
19918
19919 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
19920 (Fx_display_pixel_height, Fx_display_planes)
19921 (Fx_display_color_cells, Fx_server_max_request_size)
19922 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19923 (Fx_display_visual_class, Fx_display_save_under):
19924 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
19925 (Fx_display_pixel_height, Fx_display_planes)
19926 (Fx_display_color_cells, Fx_server_max_request_size)
19927 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
19928 (Fx_display_mm_height, Fx_display_mm_width)
19929 (Fx_display_backing_store, Fx_display_visual_class)
19930 (Fw32_select_font, Fx_display_save_under):
19931 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
19932 (Fx_display_pixel_height, Fx_display_planes)
19933 (Fx_display_color_cells, Fx_server_max_request_size)
19934 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
19935 (Fx_display_save_under): Fix typos in docstrings.
19936
199372007-11-14 Juanma Barranquero <lekktu@gmail.com>
19938
19939 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
19940 corresponding to deleted entries; they are an implementation detail.
19941 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
19942 Remove variables.
19943 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
19944 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
19945 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
19946 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
19947 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
19948 (Fw32_define_rgb_color, Fw32_load_color_file)
19949 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
19950 Fix typos in docstrings.
19951 (Fx_server_version): Reflow docstring.
19952 (Fw32_shell_execute): Doc fixes.
19953
199542007-11-13 Juanma Barranquero <lekktu@gmail.com>
19955
19956 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
19957 if w32_parse_hot_key returned nil.
19958
199592007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
19960
19961 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
19962
199632007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 19964
aac0c6e3
MR
19965 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
19966
19967 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
19968
19969 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
19970 Remove W32_SCROLL_BAR_CLICK_EVENT.
19971
19972 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
19973 Add MULTIMEDIA_KEY_EVENT.
19974
19975 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
19976 (lispy_multimedia_keys) [WINDOWSNT]: New array.
19977 (make_lispy_event) [WINDOWSNT]: Use it to translate
19978 MULTIMEDIA_KEY_EVENT.
19979
19980 * w32term.h (WM_APPCOMMAND): Define if not already.
19981 (GET_APPCOMMAND_LPARAM): Likewise.
19982
19983 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
19984 WM_APPCOMMAND.
19985
19986 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
19987 (syms_of_w32fns): Export and initialize it.
19988 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
19989
199902007-11-09 Chong Yidong <cyd@stupidchicken.com>
19991
19992 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
19993 twice.
19994
19995 * xdisp.c (handle_face_prop): Fix last change.
19996
199972007-11-09 Richard Stallman <rms@gnu.org>
19998
19999 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20000 not just for after-strings and before-strings.
20001 Call face_for_overlay_string and pass the overlay to it.
20002 (handle_display_prop): Determine whether property came from an overlay.
20003 Pass OVERLAY arg to handle_single_display_spec.
20004 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20005 (load_overlay_strings): Fill in it->string_overlays.
20006 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20007
20008 * xfaces.c (face_for_overlay_string): Function renamed from
20009 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20010
20011 * dispextern.h (struct it): New elt string_overlays.
20012 New elt from_overlay, also in stack.
20013 Rearrange a few elements.
20014 (face_for_overlay_string): Decl renamed from
20015 face_at_buffer_position_no_overlays, and add argument.
20016
200172007-11-09 Richard Stallman <rms@gnu.org>
20018
20019 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20020 to get the base face for an overlay string.
20021
20022 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20023
20024 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20025
20026 * xdisp.c (handle_stop): Move some code out of loop.
20027
200282007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20029
20030 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20031 Fix conversion from Lisp object to ATSUFontID.
20032
200332007-11-09 Jason Rumney <jasonr@gnu.org>
20034
20035 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20036
200372007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20038
20039 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20040 Don't assume regions are aligned to page boundary.
20041 (print_load_command_name): Add LC_UUID if defined.
20042
200432007-11-09 Richard Stallman <rms@gnu.org>
20044
20045 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20046
200472007-11-07 Jason Rumney <jasonr@gnu.org>
20048
20049 * s/windows95.h: Remove.
20050
200512007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20052
20053 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20054 abort with a message on unhandled store_type values.
20055
200562007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20057
20058 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20059 Remove HAVE_X11R5 and HAVE_X11R4.
20060
200612007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20062
20063 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20064
200652007-11-01 Johan Bockgård <bojohan@gnu.org>
20066
20067 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20068 Don't set s->stippled_p here, since it has already been set by
20069 x_set_glyph_string_gc from x_draw_glyph_string.
20070
200712007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20072
20073 * sunfns.c: Remove file.
20074
20075 * m/sun386.h:
20076 * m/sun2.h:
20077 * m/sparc.h: Remove Sun windows code.
20078
200792007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20080
20081 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20082 (init_keyboard): Set current_kboard's window-system to nil.
20083 (tty_read_avail_input): Typo.
20084 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20085
200862007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20087
20088 * s/usg5-4.h:
20089 * s/usg5-3.h:
20090 * s/ptx.h:
20091 * m/is386.h:
20092 * m/ibmps2-aix.h:
20093 * Makefile.in: Remove all mentions of X10.
20094
20095 * dispnew.c (syms_of_display): Don't mention version 10.
20096
200972007-10-28 Juanma Barranquero <lekktu@gmail.com>
20098
20099 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20100 ($(BLD)/abbrev.$(O)): Remove.
20101
201022007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20103
20104 Rewrite abbrev.c in Elisp.
20105 * image.c (Qcount): Don't declare as extern.
20106 (syms_of_image): Initialize and staticpro `Qcount'.
20107 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20108 * emacs.c (main): Don't call syms_of_abbrev.
20109 * Makefile.in (obj): Remove abbrev.o.
20110 (abbrev.o): Remove.
20111 * abbrev.c: Remove.
20112
201132007-10-26 Martin Rudalics <rudalics@gmx.at>
20114
20115 * window.c (window_min_size_2): Don't count header-line.
20116
201172007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20118
20119 * frame.h (struct frame): Move all bit fields after the first bit
20120 field to take advantage of the available space. Group all the
20121 chars together to reduce wasted space due to padding.
20122
201232007-10-26 Juanma Barranquero <lekktu@gmail.com>
20124
20125 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20126
20127 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20128 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20129 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20130 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20131 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20132 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20133 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20134 (last_marked, mark_object_loop_halt): Make static.
20135
20136 * frame.c (syms_of_frame) <delete-frame-functions>:
20137 Fix typo in docstring.
20138
201392007-10-25 Juanma Barranquero <lekktu@gmail.com>
20140
20141 * w32.c (init_environment): Fix tiny memory leak.
20142 (w32_get_resource): Remove unused variable `ok'.
20143
201442007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20145
20146 Make `window-system' into a keyboard-local variable (rather than
20147 frame-local as done originally by multi-tty).
20148
20149 * keyboard.h (struct kboard): Add Vwindow_system.
20150 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20151 (mark_kboards): Mark Vwindow_system.
20152
20153 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20154 (init_display): Don't set the obsolete `window-system' frame-param.
20155
20156 * xterm.c (x_term_init):
20157 * w32term.c (w32_create_terminal):
20158 * term.c (init_tty): Set Vwindow_system.
20159 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20160 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20161
20162 * xfns.c (Fx_create_frame, x_create_tip_frame):
20163 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20164 * macfns.c (Fx_create_frame):
20165 Don't set the obsolete `window-system' frame-param.
20166
20167 * frame.h (Qwindow_system): Remove.
20168 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20169 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20170
201712007-10-24 Richard Stallman <rms@gnu.org>
20172
20173 * frame.c (x_figure_window_size): For fullscreen case,
20174 set USPosition | PPosition without clobbering rest of window_prompting.
20175
20176 * keyboard.c (Fcurrent_idle_time): Doc fix.
20177
20178 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20179
201802007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20181
20182 * process.c (unwind_request_sigio): Only define if __ultrix__.
20183
20184 * callproc.c (child_setup): Remove spurious *.
20185
20186 * lisp.h (Fget_text_property): Declare.
20187 (have_menus_p): Declare it here rather than in sys-dep header files.
20188 * macterm.h (have_menus_p):
20189 * msdos.h (have_menus_p):
20190 * xterm.h (have_menus_p): Remove.
20191
20192 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20193 (Fmake_variable_frame_local): Just check the variable's const-ness
20194 rather than checking nil or t.
20195
201962007-10-22 Jason Rumney <jasonr@gnu.org>
20197
20198 * w32fns.c: Include math.h.
20199 (w32_abort): Declaration moved to nt/config.nt.
20200
20201 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20202 (abort): Redefinition moved to nt/config.nt.
20203
20204 * m/windowsnt.h: Remove.
20205
202062007-10-22 Juanma Barranquero <lekktu@gmail.com>
20207
20208 * emacs.c (Fdump_emacs): Fix typo in message.
20209 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20210 <installation-directory>: Reflow docstring.
20211
202122007-10-22 Juri Linkov <juri@jurta.org>
20213
20214 * minibuf.c: Allow minibuffer default to be a list of default values.
20215 With empty input use the first element of this list as returned default.
20216 (string_to_object)
20217 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20218 (read_minibuf): If defalt is cons, set histstring to its car.
20219 (Fread_string): If default_value is cons, set val to its car.
20220 (Fread_buffer): If def is cons, use its car.
20221 (Fcompleting_read): If defalt is cons, set val to its car.
20222
202232007-10-21 Michael Albinus <michael.albinus@gmx.de>
20224
20225 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20226
202272007-10-20 Juanma Barranquero <lekktu@gmail.com>
20228
20229 * doc.c (Fdocumentation): Check for advice in all cases.
20230
202312007-10-19 Chong Yidong <cyd@stupidchicken.com>
20232
20233 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20234
202352007-10-19 Richard Stallman <rms@gnu.org>
20236
20237 * doc.c (Fdocumentation): Check for and handle an advised function.
20238
202392007-10-19 Juanma Barranquero <lekktu@gmail.com>
20240
20241 * process.c (Fset_process_filter): Doc fix.
20242
202432007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20244
20245 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20246 which caused key-translation-map to applied repeatedly (thus breaking
20247 double-mode).
20248
202492007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20250
20251 * xselect.c (x_own_selection, x_handle_selection_clear)
20252 (x_clear_frame_selections):
20253 * w32menu.c (list_of_panes, list_of_items):
20254 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20255 * textprop.c (validate_plist, interval_has_all_properties)
20256 (interval_has_some_properties, interval_has_some_properties_list)
20257 (add_properties, text_property_list):
20258 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20259 * minibuf.c (Fassoc_string):
20260 * macselect.c (x_own_selection, x_clear_frame_selections)
20261 (Fx_disown_selection_internal):
20262 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20263 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20264
202652007-10-17 Chong Yidong <cyd@stupidchicken.com>
20266
20267 * process.c: Link to libs for calling res_init() if available.
20268 (Fmake_network_process): Call res_init() before getaddrinfo or
20269 gethostbyname, if possible.
20270
202712007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20272
20273 * lread.c (read1): Set pvectype for char_tables.
20274
20275 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20276 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20277 Add type checks.
20278 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20279
20280 * alloc.c (free_misc): Use XMISCTYPE.
20281 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20282
202832007-10-17 Glenn Morris <rgm@gnu.org>
20284
20285 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20286 (syms_of_minibuf): Add Qcompletion_ignore_case.
20287 * dired.c (Qcompletion_ignore_case): Change to external.
20288 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20289 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20290 (Fread_file_name): Use it rather than intern'ing.
20291
20292 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20293 (Fread_coding_system): Ignore case of user input.
20294
202952007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20296
20297 * xdisp.c (handle_display_prop): Ignore display specs after
20298 replacing one when string text is being replaced.
20299 (handle_single_display_spec): Pretend as if characters with display
20300 property haven't been consumed only when buffer text is being replaced.
20301
203022007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20303
20304 * xfns.c (Fx_create_frame, Fx_display_list):
20305 * window.c (window_fixed_size_p, enlarge_window)
20306 (shrink_window_lowest_first):
20307 * macterm.c (init_font_name_table):
20308 * macfns.c (Fx_create_frame, Fx_display_list):
20309 * lread.c (close_load_descs):
20310 * keyboard.c (read_char_x_menu_prompt):
20311 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20312 * coding.c (code_convert_region_unwind): Test the type of an object
20313 rather than just !NILP before extracting data from it.
20314
20315 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20316
20317 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20318 (XMISCANY): New macro.
20319 (XMISCTYPE): Use it.
20320 (struct Lisp_Misc_Any): New type.
20321 (union Lisp_Misc): Use it.
20322 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20323 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20324 (find_symbol_value, set_internal, default_value, Fset_default)
20325 (Fmake_variable_buffer_local, Fmake_local_variable)
20326 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20327 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20328 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20329 * alloc.c (allocate_buffer): Set the size and tag.
20330 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20331 Use XMISCANY.
20332 (die): Follow the GNU convention for error messages.
20333 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20334 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20335 tag any more.
20336 (set_buffer_internal_1):
20337 * frame.c (store_frame_param):
20338 * eval.c (specbind):
20339 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20340
20341 * doc.c (Fsnarf_documentation): Simplify.
20342
203432007-10-14 Juanma Barranquero <lekktu@gmail.com>
20344
20345 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20346 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20347
203482007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20349
20350 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20351
203522007-10-14 Juanma Barranquero <lekktu@gmail.com>
20353
20354 * eval.c (do_autoload): Don't save autoloads.
20355
20356 * data.c (Ffset): Save autoload of the function being set.
20357
203582007-10-07 John Paul Wallington <jpw@pobox.com>
20359
20360 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20361 parameter before setting up faces.
20362
203632007-10-13 Eli Zaretskii <eliz@gnu.org>
20364
20365 * ccl.c (Fregister_code_conversion_map):
20366 * keyboard.c (append_tool_bar_item): Reformat last change.
20367
20368 * lisp.h (eabs): Rename from `abs'. All callers changed.
20369
203702007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20371
20372 * buffer.c (add_overlay_mod_hooklist):
20373 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20374 * fontset.c (make_fontset):
20375 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20376 (append_tool_bar_item):
20377 * macmenu.c (grow_menu_items):
20378 * w32menu.c (grow_menu_items):
20379 * xmenu.c (grow_menu_items): Use larger_vector.
20380
203812007-10-13 Eli Zaretskii <eliz@gnu.org>
20382
20383 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
20384 selected frame'' on MSDOS).
20385
203862007-10-12 Martin Rudalics <rudalics@gmx.at>
20387
20388 * frame.c (Qexplicit_name): New variable.
20389 (x_report_frame_params): Report it in parameter alist.
20390 (syms_of_frame): Intern and staticpro it.
20391
203922007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
20393
20394 * macfns.c (x_create_tip_frame): Set terminal for frame.
20395
203962007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
20397
20398 * frame.c (Qenvironment): Remove.
20399 (syms_of_frame) <Qenvironment>: Don't initialize.
20400 (Fdelete_frame): Don't treat the `environment' param specially.
20401 * frame.h (Qenvironment): Don't declare.
20402 * callproc.c (set_initial_environment): Don't set unused frame param.
20403
20404 * frame.c (Fframe_with_environment): Remove.
20405 (syms_of_frame) <Sframe_with_environment>: Don't declare.
20406
20407 * lisp.h (Fframe_with_environment): Don't declare.
20408
204092007-10-10 Juanma Barranquero <lekktu@gmail.com>
20410
20411 * indent.c (indent_tabs_mode, last_known_column)
20412 (last_known_column_modified): Make static.
20413 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
20414
204152007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
20416
20417 * puresize.h (BASE_PURESIZE): Increase to 1170000.
20418
204192007-10-09 Jason Rumney <jasonr@gnu.org>
20420
20421 * w32term.c (x_set_window_size): Disable code that attempts to tell
20422 Lisp code about a size change before it actually happens.
20423
204242007-10-09 Richard Stallman <rms@gnu.org>
20425
20426 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
20427 return HANDLED_RETURN.
20428
204292007-10-08 Martin Rudalics <rudalics@gmx.at>
20430
20431 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
20432 when there's an unread command event.
20433
20434 * frame.c (focus_follows_mouse): Move here from frame.el to allow
20435 window autoselection act appropriately when leaving selected frame.
20436 (syms_of_frame): Initialize focus_follows_mouse.
20437 * frame.h (focus_follows_mouse): Extern it.
20438 * macterm.c (XTread_socket): When focus_follows_mouse is nil
20439 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
20440 * msdos.c (dos_rawgetc): Likewise.
20441 * w32term.c (w32_read_socket): Likewise.
20442 * xterm.c (handle_one_xevent): Likewise.
20443 * xdisp.c (syms_of_xdisp): In doc-string of
20444 mouse-autoselect-window mention focus-follows-mouse.
20445
204462007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20447
20448 * macterm.c (mac_load_query_font): Fix missing return value.
20449 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
20450 Add BLOCK_INPUT.
20451
204522007-10-08 Richard Stallman <rms@gnu.org>
20453
20454 * xdisp.c (get_window_cursor_type): Implement documented behavior
20455 for cursor-in-non-selected-windows = t.
20456
204572007-10-08 Jason Rumney <jasonr@gnu.org>
20458
20459 * w32.c (w32_get_resource): Always close registry keys.
20460
204612007-10-08 Jason Rumney <jasonr@gnu.org>
20462
20463 * makefile.w32-in (LIBS): Add COMCTL32.
20464
20465 * w32fns.c (globals_of_w32fns): Init common controls.
20466
204672007-10-08 Richard Stallman <rms@gnu.org>
20468
20469 * image.c (our_memory_buffer): Rename from omfib_buffer.
20470
204712007-10-08 Richard Stallman <rms@gnu.org>
20472
20473 * buffer.c (Foverlays_at): Doc fix.
20474
204752007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
20476
20477 * fns.c (Fplist_put): Preserve uneven tail data.
20478
204792007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
20480
20481 * termhooks.h (enum event_kind): Remove trailing comma.
20482
20483 * frame.h (enum): Remove trailing comma.
20484
204852007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
20486
20487 * w32proc.c (delete_child): Don't terminate threads of zombies.
20488
204892007-10-08 Martin Rudalics <rudalics@gmx.at>
20490
20491 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
20492
20493 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
20494 last-repeatable-command.
20495 (init_kboard): Initialize Vlast_repeatable_command.
20496 (command_loop_1): Set it to real_this_command unless that was
20497 bound to an input event.
20498 (mark_kboards): Mark it.
20499
205002007-10-08 Richard Stallman <rms@gnu.org>
20501
20502 * eval.c (condition-case): Doc fix.
20503
205042007-10-08 Masatake YAMATO <jet@gyve.org>
20505
20506 * xfaces.c (tty_supports_face_attributes_p): Fix code
20507 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
20508 was copied and not edited.
20509
205102007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
20511
20512 Add new `input-decode-map' keymap and use it for terminal
20513 escape sequences.
20514 * keyboard.h (struct kboard): Add Vinput_decode_map.
20515 Remove Vlocal_key_translation_map.
20516 * keyboard.c (read_key_sequence): Add support for input-decode-map.
20517 (init_kboard): Init input-decode-map.
20518 Replace local-key-translation-map back with key-translation-map.
20519 (syms_of_keyboard): Declare input-decode-map.
20520 Remove local-key-translation-map. Update docstrings.
20521 (mark_kboards): Mark Vinput_decode_map.
20522 Don't mark Vlocal_key_translation_map.
20523 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
20524 Replace local-key-translation-map back with key-translation-map.
20525 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
20526 Bind in input-decode-map rather than function-key-map.
20527
20528 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
20529 This was made redundant by the previous introduction of XSETPVECTYPE.
20530
205312007-10-09 Richard Stallman <rms@gnu.org>
20532
20533 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
20534
205352007-09-29 Richard Stallman <rms@gnu.org>
20536
20537 * eval.c (internal_condition_case_2, internal_condition_case_1)
20538 (internal_condition_case): Reenable abort if x_catching_errors ()
20539 to see if that really happens and why.
20540
205412007-10-06 Andreas Schwab <schwab@suse.de>
20542
20543 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
20544
205452007-10-04 Juanma Barranquero <lekktu@gmail.com>
20546
20547 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
20548
205492007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
20550
20551 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
20552
205532007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
20554
20555 * window.h (struct window):
20556 * window.c (struct save_window_data, struct saved_window):
20557 * termhooks.h (struct terminal):
20558 * process.h (struct Lisp_Process):
20559 * frame.h (struct frame):
20560 * buffer.h (struct buffer):
20561 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
20562 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
20563 The size field of (pseudo)vectors is now unsigned.
20564 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
20565
20566 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
20567 Turn `count' into an integer.
20568
20569 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
20570 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
20571 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
20572 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
20573 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
20574
20575 * alloc.c (allocate_pseudovector): New fun.
20576 (ALLOCATE_PSEUDOVECTOR): New macro.
20577 (allocate_window, allocate_terminal, allocate_frame)
20578 (allocate_process): Use it.
20579 (mark_vectorlike): New function.
20580 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
20581 (mark_terminals): Use it.
20582 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
20583 (Fmake_byte_code): Use XSETPVECTYPE.
20584
20585 * frame.c (Fframe_parameters): Minor simplification.
20586
20587 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
20588
20589 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
20590
20591 * buffer.c (Fget_buffer_create, init_buffer_once):
20592 * lread.c (defsubr):
20593 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
20594
20595 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
20596 defined differently in the m/*.h files.
20597 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
20598 (XSETPVECTYPE): New macro.
20599 (XSETPSEUDOVECTOR): Use it.
20600
20601 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
20602 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
20603
20604 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
20605 * lread.c (defvar_per_buffer):
20606 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
20607
20608 * window.c (candidate_window_p): Only consider as visible frames that
20609 are on the same terminal.
20610
20611 * m/ibms390x.h (MARKBIT): Remove unused macro.
20612
206132007-10-01 Juanma Barranquero <lekktu@gmail.com>
20614
20615 * lread.c (Fload): Fix typo in docstring.
20616
206172007-10-01 Michaël Cadilhac <michael@cadilhac.name>
20618
20619 * floatfns.c (Fexpt): Manually check for overflows, so that a power
20620 of a non-zero value can't yield zero.
20621
206222007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
20623
20624 * term.c (term_clear_mouse_face, term_mouse_highlight)
20625 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
20626
20627 * print.c (safe_debug_print): Use XHASH.
20628
20629 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
20630 Lisp elements such as tags.
20631 (XHASH): New macro.
20632 (EQ): Use it.
20633 (SREF, SSET, STRING_COPYIN): Use SDATA.
20634 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
20635
20636 * alloc.c (mark_terminal): Remove left-over declaration.
20637 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
20638 (allocate_vectorlike): Remove type argument. Adjust callers.
20639 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
20640 Only handle the one remaining MEM_TYPE_VECTORLIKE.
20641
20642 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
20643 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
20644 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
20645 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
20646 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
20647 Use them.
20648
20649 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
20650 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
20651 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
20652
206532007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
20654
20655 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
20656 loaded by default.
20657
206582007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
20659
20660 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
20661 on this tty.
20662 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
20663
20664 * term.c (mouse_face_window): Rename from Qmouse_face_window.
20665 Update all users.
20666 (handle_one_term_event): Use Gpm_DrawPointer.
20667 (Fgpm_mouse_start): Rename from Fterm_open_connection.
20668 Signal errors instead of returning nil. Always return nil.
20669 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
20670 Make it a noop if gpm-mouse was not activated.
20671 (syms_of_term): Update names.
20672
206732007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
20674
20675 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
20676 (init_sys_modes): Check that gpm_tty is the current tty.
20677
20678 * alloc.c (allocate_terminal): Set the vector size to only count the
20679 lisp fields. Initialize those to nil.
20680 (mark_object): Don't treat terminals specially.
20681 (mark_terminal): Remove.
20682 (mark_terminals): Use mark_object instead.
20683
20684 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
20685 the GC to the beginning.
20686
20687 * indent.h:
20688 * indent.c: Use EMACS_INT for ints coming from Elisp data.
20689
20690 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
20691
206922007-09-25 Jason Rumney <jasonr@gnu.org>
20693
20694 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
20695
20696 * w32console.c (create_w32cons_output): Remove.
20697
20698 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
20699
20700 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
20701 (reset_sys_modes): Use reset_terminal_modes_hook.
20702
207032007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
20704
20705 * eval.c (do_autoload): Don't output any message.
20706
207072007-09-24 Juri Linkov <juri@jurta.org>
20708
20709 * emacs.c (standard_args): Change priority of "--no-splash"
20710 from 40 to 3. Add "--no-desktop" with the same priority.
20711
207122007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
20713
20714 * alloc.c (gc_sweep): Check cons cell mark bits word by word
20715 and optimize the case where they are all 1.
20716
207172007-09-23 Johannes Weiner <hannes@saeurebad.de>
20718
20719 * lisp.h (abs): Define if not defined.
20720 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
20721 Don't define `abs', since it's defined in lisp.h.
20722
207232007-09-22 Eli Zaretskii <eliz@gnu.org>
20724
20725 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
20726 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
20727 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
20728 (init_tty): Use DEV_TTY instead of "/dev/tty".
20729 [WINDOWSNT]: No need to protect from NAME arg being null.
20730
207312007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
20732
20733 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
20734 up the tty state.
20735
207362007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20737
20738 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
20739 (gpm_tty): Change its type.
20740 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
20741 (gpm_tty): Change its type and initialize it.
20742 (Fterm_open_connection): Check the frame is indeed a tty.
20743 Use the new gpm_tty.
20744 (Fterm_close_connection): Use the new gpm_tty.
20745 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
20746 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
20747
207482007-09-21 Juanma Barranquero <lekktu@gmail.com>
20749
20750 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
20751 underline_color, to draw strike-through.
20752
207532007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
20754
20755 * lisp.h (allocate_terminal): Declare.
20756
20757 * window.c (candidate_window_p): Consider frames that are being placed
20758 by the user as somewhere between visible and iconified.
20759 (window_loop): Prefer windows on the current frame.
20760 (Fselect_window): Move the use of select-frame to the beginning so we
20761 can just delegate all the work (it'll call us back anyway).
20762
20763 * frame.c (Qdisplay_environment_variable):
20764 * frame.h (Qdisplay_environment_variable): Delete.
20765
20766 * .gdbinit (xbacktrace): Print the arg's address rather than the value
20767 of the first arg, since that value may be a union.
20768
20769 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
20770 parameter rather than Qdisplay_environment_variable. If all else
20771 fails, look for DISPLAY in initial-environment.
20772
207732007-09-21 Glenn Morris <rgm@gnu.org>
20774
20775 * Makefile.in (emacstool): Remove target.
20776 (lisp, shortlisp): Remove termdev.elc.
20777
207782007-09-21 Markus Triska <markus.triska@gmx.at>
20779
20780 * xterm.c (x_delete_display): Compile session management conditionally.
20781
207822007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
20783
20784 * callproc.c (getenv_internal_1): New function.
20785 (getenv_internal): Use it.
20786 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
20787
20788 * terminal.c (get_terminal): Don't accept ints to represent terminals.
20789 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
20790 (Fset_terminal_parameter): Work with dead terminals as well.
20791 (Fmodify_terminal_parameters): Remove.
20792
20793 * terminal.c (get_terminal): Handle terminals.
20794 Make sure the terminal returned is live.
20795 (create_terminal): Use allocate_terminal.
20796 (mark_terminals): Move to alloc.c.
20797 (delete_terminal): Use terminal->name as liveness status.
20798 NULL out fields after freeing their contents.
20799 Don't deallocate the object.
20800 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
20801 rather than an int.
20802 (Fterminal_live_p): Accept non-integer arguments.
20803 (Fterminal_list): Return terminal objects rather than an ints.
20804
20805 * alloc.c (enum mem_type): New member for `terminal' objects.
20806 (allocate_terminal): New function.
20807 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
20808 Handle terminals.
20809 (mark_terminal): New fun.
20810 (mark_terminals): Move from terminal.c.
20811
20812 * term.c (get_tty_terminal): Don't treat output_initial specially.
20813 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
20814 (delete_tty): Use terminal->name as liveness status.
20815
20816 * termhooks.h (struct terminal): Make it into a pseudovector.
20817 Remove `deleted' replaced by checking `name's nullness.
20818
20819 * print.c (print_object): Handle terminals.
20820
20821 * lisp.h (enum pvec_type): New `terminal' pseudovector.
20822 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
20823
20824 * frame.c (make_terminal_frame):
20825 * keyboard.c (tty_read_avail_input):
20826 * w32term.c (x_delete_terminal):
20827 * xfns.c (Fx_create_frame, x_create_tip_frame):
20828 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
20829
208302007-09-20 Glenn Morris <rgm@gnu.org>
20831
20832 * process.c (Fmake_network_process): Doc fix.
20833
208342007-09-19 Jason Rumney <jasonr@gnu.org>
20835
20836 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
20837
208382007-09-19 Michaël Cadilhac <michael@cadilhac.name>
20839
20840 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
20841 Fix a C warning regarding variable constness.
20842
20843 * xterm.c (handle_one_xevent): Fix a C warning.
20844
208452007-09-18 Jason Rumney <jasonr@gnu.org>
20846
20847 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
20848
208492007-09-17 Jan Djärv <jan.h.d@swipnet.se>
20850
20851 * gtkutil.c (gdpy_def): New variable.
20852 (xg_initialize): Initialize gdpy_def.
20853 (xg_display_close): If no other display exists, set gdpy_def to a
20854 new connection.
20855
208562007-09-16 Jan Djärv <jan.h.d@swipnet.se>
20857
20858 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
20859 when we have no file name for the icon.
20860 (xg_tool_bar_expose_callback): Remove.
20861 (xg_create_tool_bar): Don't connect expose signal to
20862 xg_tool_bar_expose_callback.
20863 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
20864
208652007-09-16 Andreas Schwab <schwab@suse.de>
20866
20867 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
20868 values instead of zapping them.
20869
208702007-09-14 Glenn Morris <rgm@gnu.org>
20871
20872 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
20873 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
20874 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
20875 scope and rename to omfib_buffer for clarity.
20876 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
20877
208782007-09-14 Kenichi Handa <handa@m17n.org>
20879
20880 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
20881
208822007-09-13 Jason Rumney <jasonr@gnu.org>
20883
20884 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
20885
20886 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
20887
20888 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
20889 (mac_term_init): Call here instead, passing rif.
20890
208912007-09-13 Glenn Morris <rgm@gnu.org>
20892
20893 * s/hpux.h: No longer define `static' as nothing.
20894
208952007-09-13 Johan Bockgård <bojohan@gnu.org>
20896
20897 * callint.c (Fcall_interactively): Remove unused var `fun'.
20898
208992007-09-12 Romain Francoise <romain@orebokech.com>
20900
20901 * window.c (prefer_window_split_horizontally, display_buffer):
20902 Revert 2007-09-08 change.
20903
209042007-09-12 Glenn Morris <rgm@gnu.org>
20905
20906 * alloca.c: Remove file.
20907 * Makefile.in (alloca): Do not undef.
20908 (allocaobj, alloca.o): Remove.
20909 (otherobj): Remove allocaobj.
20910 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
20911 * regex.c (C_ALLOCA): Remove all references and code that was only
20912 used when this was defined.
20913 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
20914 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
20915 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
20916
20917 * Makefile.in (SOURCES, unlock, relock): Delete.
20918
20919 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
20920 (menu_grab_callback): All uses changed.
20921
20922 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
20923 (x_reply_selection_request): All uses changed.
20924
209252007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
20926
20927 * lread.c (load_warn_old_style_backquotes): Change message to look
20928 better when it appears in the middle of byte-compiler messages.
20929
209302007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
20931
20932 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
20933
20934 * xterm.c (x_create_terminal): Add comment.
20935
20936 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
20937
209382007-09-10 Richard Stallman <rms@gnu.org>
20939
20940 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
20941
209422007-09-10 Michaël Cadilhac <michael@cadilhac.name>
20943
20944 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
20945 (DEFUN): Document `intspec', use it instead of `prompt'.
20946
20947 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
20948
20949 * data.c (Finteractive_form): If the interactive specification starts
20950 with a `(', use it as a Lisp form.
20951
20952 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
20953 name and file modes.
20954
20955 * callint.c (Fcall_interactively): Comment fixes.
20956
209572007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
20958
20959 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
20960 and compiled functions.
20961
209622007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
20963
20964 * window.c (prefer_window_split_horizontally): New variable.
20965 (display_buffer): Consider splitting window horizontally depending
20966 on prefer_window_split_horizontally.
20967
209682007-09-08 Eli Zaretskii <eliz@gnu.org>
20969
20970 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
20971
209722007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20973
20974 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
20975
20976 * frame.c (x_set_frame_parameters): Check number is positive before
20977 using XFASTINT.
20978
20979 * window.c (freeze_window_start): Don't presume selected_window holds
20980 a window object.
20981 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
20982
209832007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
20984
20985 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
20986
209872007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
20988
20989 * window.c (Vsplit_window_preferred_function): New var.
20990 (Fdisplay_buffer): Use it.
20991 (syms_of_window): Export, and initialize it.
20992
209932007-09-06 Pixel <pixel@mandriva.com> (tiny change)
20994
20995 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
20996
209972007-09-06 Glenn Morris <rgm@gnu.org>
20998
20999 * gtkutil.c (menu_grab_callback) <cnt>:
21000 * xselect.c (x_reply_selection_request) <cnt>: Move static
21001 variable to file scope.
21002
210032007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21004
21005 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21006 consistent values of selected_frame and selected_window.
21007
210082007-09-04 Jason Rumney <jasonr@gnu.org>
21009
21010 * w32console.c (initialize_w32_display): Zero unused hooks.
21011
210122007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21013
21014 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21015 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21016
210172007-09-04 Jason Rumney <jasonr@gnu.org>
21018
21019 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21020 in w32console.c. Set up input. Remove XXX comments that have been
21021 confirmed as correct.
21022
21023 * s/ms-w32.h (MULTI_KBOARD): Define.
21024
21025 * w32console.c (one_and_only_w32cons): Remove.
21026 (initialize_w32_display): Take terminal argument.
21027
21028 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21029 initialize_w32_display.
21030 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21031
21032 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21033
21034 * keyboard.c (discard_mouse_events): Discard it.
21035 (make_lispy_event): Translate it to a lisp event.
21036 (lispy_wheel_names): Add wheel-left and right events.
21037 (syms_of_keyboard): Enlarge wheel_syms.
21038
21039 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21040 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21041
21042 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21043
21044 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21045 from WM_MOUSEHWHEEL.
21046 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21047
21048 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21049 terminal.
21050
21051 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21052 keyboard for the terminal.
21053
210542007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21055
21056 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21057 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21058 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21059 and resume-tty-function to resume-tty-hook.
21060 (Fsuspend_tty, Fresume_tty): Use new names.
21061
210622007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21063
21064 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21065 if it starts with "n:".
21066
210672007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21068
21069 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21070
210712007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21072
21073 * frame.h:
21074 * frame.c (Qterm_environment_variable): Remove.
21075 (syms_of_frame): Don't init and staticpro it.
21076
21077 * callproc.c (getenv_internal): Remove special case for $TERM.
21078
21079 * callproc.c (Vinitial_environment): New variable.
21080 (set_initial_environment): Initialize it.
21081 (syms_of_callproc): Declare it.
21082 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21083 TERM under which a process runs is never related to the TERM in which
21084 Emacs is running.
21085
210862007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21087
21088 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21089 * s/darwin.h: ... do it here.
21090
210912007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21092
21093 * lisp.h (set_initial_environment): Rename from set_global_environment.
21094
21095 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21096 removed by mistake on the multi-tty branch.
21097
21098 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21099 (Fmodify_frame_parameters): Return a value.
21100
21101 * image.c (png_load): Comment-out var only used in commented-out code.
21102
21103 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21104 before passing it to mark_object.
21105
21106 * xfaces.c (internal_resolve_face_name): Return a value.
21107 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21108
21109 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21110 (x_icon): Comment-out var only used in commented-out code.
21111
211122007-08-29 Romain Francoise <romain@orebokech.com>
21113
21114 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21115 QUIT hasn't been provided.
21116
211172007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21118
21119 * callproc.c (child_setup, getenv_internal): Use the
21120 display-environment-variable and term-environment-variable frame params.
21121 (set_initial_environment): Initialise Vprocess_environment.
21122
21123 * config.in: Disable multi-keyboard support on a mac.
21124
21125 * frame.c (Qterm_environment_variable)
21126 (Qdisplay_environment_variable): New variables.
21127 (syms_of_frame): Intern and staticpro them.
21128 (Fmake_terminal_frame): Disable output method test.
21129
21130 * frame.h: Declare them here.
21131
21132 * macfns.c (x_set_mouse_color): Get rif from the frame.
21133 (x_set_tool_bar_lines): Don't use updating_frame.
21134 (mac_window): Add 2 new parameters for consistency with other systems.
21135 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21136 frame parameters following what is done in X11 and w32. Don't use
21137 FRAME_MAC_DISPLAY_INFO.
21138 (Fx_open_connection, start_hourglass): Remove window-system check.
21139 (x_create_tip_frame): Get the keyboard from the terminal.
21140
21141 * macmenu.c: Reorder includes.
21142 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21143
21144 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21145 terminal parameter.
21146 (x_clear_frame): Add a frame parameter.
21147 (note_mouse_movement): Get rif from the frame.
21148 (mac_term_init): Initialize the terminal.
21149 (mac_initialize): Make static and move terminal initialization ...
21150 (mac_create_terminal): ... to this new function.
21151
21152 * macterm.h (struct mac_display_info): Add terminal.
21153 (mac_initialize): Delete declaration.
21154
21155 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21156
21157 * sysdep.c: Comment out text after #endif.
21158
21159 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21160 is defined. Better initialize ttys in windows. Use terminal
21161 specific mouse_position_hook.
21162
21163 * termhooks.h (union display_info): Add mac_display_info.
21164
21165 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21166 Set the default minibuffer frame, window_system and the rest of the
21167 frame parameters following what is done in X11.
21168
21169 * w32term.c (w32_initialize): Make static.
21170
21171 * xselect.c (x_handle_selection_clear): Only access
21172 terminal->kboard when MULTI_KBOARD is defined.
21173
21174 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21175 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21176
211772007-08-29 Jason Rumney <jasonr@gnu.org>
21178
21179 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21180 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21181
21182 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21183 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21184
21185 * keyboard.c (restore_kboard_configuration): Only define when
21186 MULTI_KBOARD defined.
21187
21188 * makefile.w32-in: Update dependancies from Makefile.in.
21189 (OBJ1): Add terminal.$(O)
21190
21191 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21192 Don't define function body.
21193 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21194
21195 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21196
21197 * w32.c (request_sigio, unrequest_sigio): Remove.
21198
21199 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21200 (w32con_clear_frame, w32con_clear_end_of_line)
21201 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21202 (w32con_delete_glyphs, w32con_set_terminal_window)
21203 (scroll_line, w32_sys_ring_bell): Add frame arg.
21204 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21205 Add terminal arg.
21206 (PICK_FRAME): Remove.
21207 (w32con_write_glyphs): Use frame specific terminal coding.
21208 (one_and_only_w32cons): New global variable.
21209 (initialize_w32_display): Use it for storing hooks.
21210 (create_w32cons_output): New function.
21211
21212 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21213 arg a frame.
21214
21215 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21216 Set window_system.
21217 (x_set_tool_bar_lines): Don't use updating_frame.
21218 (Fx_create_frame): Set terminal and ref count.
21219 (Fx_open_connection): Remove window-system check.
21220
21221 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21222
21223 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21224 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21225 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21226 Add frame arg.
21227 (x_delete_terminal, w32_create_terminal): New functions.
21228 (w32_term_init): Create a terminal.
21229 (w32_initialize): Move terminal specific initialization to
21230 w32_create_terminal.
21231
21232 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21233 (w32_clear_rect, w32_clear_area): Use background from frame.
21234 (w32_display_info): Add terminal.
21235 (w32_sys_ring_bell, x_delete_display): Declare here.
21236
21237 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21238
21239 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21240
212412007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21242
21243 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21244 Fix get_named_tty calls for the controlling tty.
21245
212462007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21247
194d44e7 21248 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21249
212502007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21251
21252 * term.c (tty_insert_glyphs): Add missing first parameter.
21253
212542007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21255
21256 * buffer.c (Fbuffer_list, Fbury_buffer):
21257 Take frame->buried_buffer_list into account.
21258
21259 * cm.c (current_tty): New variable, for cmputc().
21260 (cmputc): Use it.
21261 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21262 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21263 (cmgoto): Add tty parameter. Pass it on to calccost().
21264 Use emacs_tputs() instead of tputs().
21265
21266 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21267 tputs().
21268 (current_tty): New variable, for cmputc().
21269 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21270
21271 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21272 (internal_condition_case, internal_condition_case_1)
21273 (internal_condition_case_2): Don't abort when x_catching_errors.
21274
21275 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21276 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21277 prevent crashes caused by bogus longjmps in read_char.
21278
21279 * keymap.h (Fset_keymap_parent): Add EXFUN.
21280
21281 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21282 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21283 Remove redundant definition.
21284
21285 * macfns.c (x_set_mouse_color, x_make_gc):
21286 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21287
21288 * w32term.c (x_free_frame_resources):
21289 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21290 (w32_initialize): Use the accessor macros for terminal characteristics.
21291
21292 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21293 Use the accessor macros for terminal characteristics.
21294 * msdos.c (internal_terminal_init): Use the accessor macros for
21295 terminal characteristics.
21296 (ScreenVisualBell, internal_terminal_init):
21297 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21298
21299 * termopts.h (no_redraw_on_reenter): Declare.
21300
21301 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21302 (mark_terminals, mark_ttys): Declare.
21303 (Fgarbage_collect): Call them.
21304 (mark_object): Mark buried_buffer_list.
21305
21306 * prefix-args.c: Include stdlib.h for exit.
21307
21308 * syssignal.h: Add comment.
21309
21310 * indent.c: Include stdio.h.
21311
21312 * window.h (Vinitial_window_system): Declare.
21313 (Vwindow_system): Delete declaration.
21314
21315 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21316
21317 * image.c (lookup_image): Don't initialize `c' until the xasserts
21318 have been run.
21319
21320 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21321 FRAME_FOREGROUND_PIXEL.
21322
21323 * print.c (print_preprocess): Don't lose print_depth levels while
21324 iterating.
21325
21326 * widget.c (update_from_various_frame_slots):
21327 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21328
21329 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21330 frames.
21331 (window_internal_height): Remove bogus make_number call.
21332 (init_window_once): Call make_terminal_frame with two zero parameters.
21333
21334 * fileio.c (Fread_file_name): Update comment.
21335
21336 * callint.c (Fcall_interactively):
21337 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21338 Make sure it is correctly unwound.
21339
21340 * xsmfns.c (x_session_close): New function.
21341
21342 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21343 Delete declarations.
21344
21345 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21346 (x_output): Remove background_pixel and foreground_pixel fields.
21347 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21348 (x_delete_device, x_session_close): Declare.
21349
21350 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21351 (read_filtered_event): Call `read_char' with a local
21352 `wrong_kboard_jmpbuf'.
21353
21354 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21355 Don't call single_kboard_state. Use FRAME_RIF.
21356
21357 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21358 systems.
21359
21360 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21361 (Fframe_with_environment, Fset_input_meta_mode)
21362 (Fset_quit_char): EXFUN.
21363 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21364 (init_sys_modes, reset_sys_modes): Update prototypes.
21365 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21366
21367 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21368 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21369 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21370 Delete declarations.
21371 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21372 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21373 New declarations.
21374
21375 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21376 already does that during init_display(). Call syms_of_keymap
21377 before syms_of_keyboard. Call `syms_of_terminal'.
21378 Call set_initial_environment, not set_process_environment.
21379 (shut_down_emacs): Call reset_all_sys_modes() instead of
21380 reset_sys_modes().
21381
21382 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21383 (internal_resolve_face_name, resolve_face_name_error): New functions.
21384 (resolve_face_name): Protect against loops and errors thrown by Fget.
21385 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
21386 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
21387
21388 * scroll.c: Replace CURTTY() with local variables throughout the
21389 file (where applicable).
21390 (calculate_scrolling, calculate_direct_scrolling)
21391 (scrolling_1, scroll_cost): Use the accessor macros for terminal
21392 characteristics.
21393
21394 * keymap.c (Vfunction_key_map): Remove.
21395 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
21396 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
21397 (Vkey_translation_map): Remove.
21398 (syms_of_keymap): Remove DEFVAR for key-translation-map.
21399 (Fdescribe_buffer_bindings)
21400 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
21401 Update for terminal-local key-translation-map.
21402
21403 * Makefile.in (callproc.o): Update dependencies.
21404 (lisp, shortlisp): Add termdev.elc.
21405 (obj): Add terminal.o.
21406 (terminal.o): Add dependencies.
21407 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
21408 (data.o, fns.o): Add termhooks.h dependency.
21409 (SOME_MACHINE_LISP): Add dnd.elc.
21410 (minibuf.o): Fix typo.
21411 Update dependencies.
21412
21413 * data.c (do_symval_forwarding, store_symval_forwarding)
21414 (find_symbol_value): Use the selected frame's keyboard, not
21415 current_kboard.
21416
21417 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
21418 Vwindow_system.
21419
21420 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
21421 Fmenu_bar_open.
21422 (syms_of_xmenu): Update defsubr.
21423 (mouse_position_for_popup, Fx_popup_menu)
21424 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
21425 (set_frame_menubar, free_frame_menubar)
b97439ce 21426 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
21427 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
21428 an X frame.
21429
21430 * xselect.c (x_own_selection): Abort if not an X frame.
21431 (some_frame_on_display): Check if it is an X frame.
21432 (x_handle_selection_clear): Deal with MULTI_KBOARD.
21433
21434 * coding.c: Include frame.h and termhooks.h.
21435 (terminal_coding, keyboard_coding): Delete.
21436 (Fset_terminal_coding_system_internal)
21437 (Fset_keyboard_coding_system_internal)
21438 (Fkeyboard_coding_system)
21439 (Fterminal_coding_system): Add a terminal parameter.
21440 Get terminal_coding from the terminal.
21441 (init_coding_once): Don't call setup_coding_system here.
21442
21443 * dispextern.h (set_scroll_region, turn_off_insert)
21444 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
21445 (tty_clear_end_of_line, tty_setup_colors)
21446 (delete_tty, updating_frame)
21447 (produce_special_glyphs, produce_glyphs, write_glyphs)
21448 (insert_glyphs): Remove.
21449 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
21450 (tty_turn_off_highlight, get_tty_size): Add declaration.
21451 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
21452
21453 * frame.h (enum output_method): Add output_initial.
21454 (struct x_output): Delete.
21455 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21456 Access foreground_pixel and background_pixel directly from the frame.
21457 (tty_display): Delete.
21458 (struct frame): Add buried_buffer_list, foreground_pixel,
21459 background_pixel and terminal. Delete kboard.
21460 (union output_data): Add tty.
21461 (FRAME_KBOARD): Get the kboard from the terminal.
21462 (FRAME_INITIAL_P): New macro.
21463 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
21464 (Qterm_environment_variable, Qdisplay_environment_variable)
21465 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
21466 New declarations.
21467
21468 * termchar.h (tty_output, tty_display_info): New structures.
21469 (tty_list): Declare.
21470 (FRAME_TTY, CURTTY): New macros.
21471 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
21472 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
21473 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
21474 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
21475
21476 * callproc.c: Include frame.h and termhooks.h, for terminal
21477 parameters.
21478 (add_env): New function.
21479 (child_setup): Use it.
21480 (child_setup, getenv_internal): Handle the new Vprocess_environment.
21481 (getenv_internal): Fix get_terminal_param call.
21482 (Fgetenv_internal, egetenv): Update doc.
21483 (syms_of_callproc): Initialize Vprocess_environment to nil.
21484 Register and initialize them. Remove obsolete defvars. Update doc
21485 strings.
21486 (child_setup): Handle Vlocal_environment_variables.
21487 (getenv_internal): Add terminal parameter.
21488 Handle Vlocal_environment_variables.
21489 (Fgetenv_internal): Add terminal parameter.
21490 (child_setup, getenv_internal, Fgetenv_internal): Store the local
21491 environment in a frame (not terminal) parameter. Update doc strings.
21492 (set_initial_environment): Rename from set_global_environment.
21493 Store Emacs environment in initial frame parameter.
21494
21495 * xdisp.c (redisplay_internal): Update references to
21496 `previous_terminal_frame'.
21497 (display_mode_line, Fformat_mode_line): Replace calls to
21498 `push_frame_kboard' with `push_kboard'.
21499 (get_glyph_string_clip_rects): Add extra parentheses and
21500 braces to prevent compiler warnings.
21501 (calc_pixel_width_or_height): Add xassert to check that the
21502 frame is alive. Don't call `lookup_image' on a termcap frame.
21503 (message2_nolog, message3_nolog, redisplay_internal)
21504 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
21505 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
21506 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
21507 (Fx_display_pixel_width, Fx_display_pixel_height)
21508 (Fx_display_planes, Fx_display_color_cells)
21509 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
21510 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
21511 (Fx_display_backing_store, Fx_display_visual_class)
21512 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
21513 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
21514
21515 * xfns.c (x_set_foreground_color x_set_background_color)
21516 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
21517 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21518 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
21519 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
21520 terminal that is being deleted.
21521 (Fx_create_frame): Use `store_frame_param' to set `window-system'
21522 frame parameter, and make sure it overrides any user-supplied setting.
21523 (Fx_close_connection, Fx_synchronize): Unify argument names with
21524 the rest of the DEFUNs.
21525
21526 * dispnew.c (Fsend_string_to_terminal): Update call to
21527 `get_tty_terminal'.
21528 (Fredraw_frame, Fsend_string_to_terminal)
21529 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
21530 FRAME_TERMCAP_P and FRAME_TTY.
21531 (window_change_signal): Don't believe width/height values that are
21532 impossibly small.
21533 (Vinitial_window_system): Rename from Vwindow_system.
21534 (termscript, Wcm, rif): Delete.
21535
21536 * termhooks.h (struct terminal): New struct containing the
21537 previously global text display hooks and new members NAME,
21538 DELETED and PARAM_ALIST.
21539 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
21540 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
21541 (FRAME_RIF): New macros.
21542 (get_terminal_param, get_device): New declarations.
21543 (termscript): Delete declaration.
21544
21545 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
21546 (XTflash, x_free_frame_resources, x_scroll_bar_create)
21547 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
21548 FRAME_FOREGROUND_PIXEL.
21549 (x_fully_uncatch_errors): Disable definition.
21550 (x_scroll_bar_expose): Fix reference to foreground pixel.
21551 (XTread_socket): Disable loop on all X displays.
21552 (x_delete_terminal): Don't set terminal->deleted and let
21553 delete_terminal delete the frames on the terminal.
21554 (x_delete_display): Doc update to reflect changes in
21555 delete_terminal.
21556 (x_display_info) <terminal>: Move member earlier in the struct.
21557 (deleting_tty): Remove old variable.
21558 (Fsuspend_tty): Call clear_tty_hooks.
21559 (Fresume_tty, init_tty): Call set_tty_hooks.
21560 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
21561 errors on X frames.
21562 (x_catch_errors_unwind): Abort if x_error_message is NULL.
21563 (handle_one_xevent): Initialize `f' to NULL.
21564 (x_delete_terminal, x_create_terminal): New functions.
21565 (XTset_terminal_modes, XTreset_terminal_modes)
21566 (XTread_socket, x_connection_closed, x_term_init)
21567 (x_term_init, x_delete_display): Add terminal parameter.
21568 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
21569 X connections.
21570
21571 * frame.c: Include termchar.h.
21572 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
21573 (Qwindow_system, Qenvironment, Qterm_environment_variable)
21574 (Qdisplay_environment_variable): New vars.
21575 (Fframep): Deal with output_initial.
21576 (Fframe-live-p): Doc fix.
21577 (Fwindow-system): New function.
21578 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
21579 (make_terminal_frame): Don't create frames on a terminal that is
21580 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21581 (store_frame_param): Check for found_for_frame before calling XFRAME.
21582 (Fmake_terminal_frame): Handle NULL tty names correctly.
21583 (syms_of_frame): Enhance doc string of `default-frame-alist'.
21584 (Fdelete_frame): Remove unused variable `count'. Don't allow other
21585 frames to refer to a deleted frame in their 'environment parameter.
21586 (Fframe_with_environment): New function.
21587 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
21588 (get_future_frame_param): New function.
21589 (Fmake_terminal_frame): Use it.
21590 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
21591
21592 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
21593 * sysdep.c (reset_sys_modes): Update for renames.
21594
21595 * keyboard.c (tty_read_avail_input): New function.
21596 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
21597 (syms_of_keyboard): Defsubr them.
21598 (Fset_input_meta_mode, Fset_quit_char): New functions.
21599 (Fset_input_mode): Split to above functions.
21600 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
21601 parameter. Use it in call to `read_char'.
21602 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
21603 Set wrong_kboard_jmpbuf correctly in recursive calls.
21604 Use current_kboard to access Vkeyboard_translate_table.
21605 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
21606 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
21607 Update longjmp invocations. Remember the original current_kboard,
21608 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
21609 changes it. Comment out unnecessary calls to
21610 `record_single_kboard_state' and `any_kboard_state'.
21611 Update recursive calls.
21612 (wrong_kboard_jmpbuf): Remove global variable.
21613 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
21614 Handle deleted interrupted_kboards correctly; that is a legal
21615 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
21616 and read_char calls. Abort if interrupted_kboard died in read_char.
21617 (any_kboard_state, single_kboard_state)
21618 (push_frame_kboard): Remove function.
21619 (pop_kboard): Switch out of single_kboard mode if the kboard has
21620 been deleted. Remove unused variable. Help debugging by not
21621 changing current_kboard unnecessarily. Set current_kboard to the
21622 kboard of the selected frame when the stored kboard object has
21623 been deleted before pop_kboard.
21624 (temporarily_switch_to_single_kboard): Change first parameter to a
21625 frame pointer. Throw an error when caller wants to change kboards
21626 while in single_kboard mode. Don't push_kboard if we weren't in
21627 single kboard state. Don't pop_kboard if we popped into any
21628 kboard state.
21629 (restore_kboard_configuration): Abort if pop_kboard changed the
21630 kboard in single_kboard mode. Call pop_kboard only after setting
21631 up single_kboard mode.
21632 (Frecursive_edit): Switch to single_kboard mode only in nested
21633 command loops.
21634 (cmd_error, command_loop, command_loop_1, timer_check):
21635 Comment out unnecessary call to `any_kboard_state' and
21636 `record_single_kboard_state'.
21637 (delete_kboard): Exit single_kboard mode if we have just deleted
21638 that kboard. Use FRAME_KBOARD.
21639 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
21640 `fatal_error_signal'.
21641 (record_single_kboard_state): Don't push_kboard if we weren't in
21642 single kboard state. Don't pop_kboard if we popped into any
21643 kboard state.
21644 (push_frame_kboard): Rename to push_kboard.
21645 (kbd_buffer_get_event): Use FRAME_TERMINAL.
21646 (read_avail_input): Read input from all terminals.
21647 (mark_kboards): Also mark Vkeyboard_translate_table.
21648 (kbd_buffer_store_event_hold): Simplify condition.
21649 (read_key_sequence): Reinitialize fkey and keytran at each replay.
21650 (Vkeyboard_translate_table): Move to struct kboard.
21651 (init_kboard): Initialize Vkeyboard_translate_table.
21652 (syms_of_keyboard): Use DEFVAR_KBOARD to define
21653 Vkeyboard_translate_table. Update doc strings. Update docs of
21654 local-function-key-map and function-key-map.
21655
21656 * terminal.c: New file.
21657
21658 * term.c: Include errno.h.
21659 (Vring_bell_function, device_list, initial_device)
21660 (next_device_id, ring_bell, update_begin, update_end)
21661 (set_terminal_window, cursor_to, raw_cursor_to)
21662 (clear_to_end, clear_frame, clear_end_of_line)
21663 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
21664 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
21665 (syms_of_term): Move their initialization to terminal.c.
21666 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
21667 (Ftty_display_color_cells)
21668 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
21669 (clear_tty_hooks, set_tty_hooks)
21670 (init_tty, maybe_fatal): New functions.
21671 (Ftty_type): Return nil if terminal is not on a tty instead of
21672 throwing an error. Doc update.
21673 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
21674 Doc update. Initialize new subrs and variables.
21675 (delete_tty): Use terminal->deleted.
21676 (tty_set_terminal_modes): Rename from set_terminal_modes.
21677 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
21678 (set_scroll_region): Rename to `tty_set_scroll_region'.
21679 (turn_on_insert): Rename to `tty_turn_on_insert'.
21680 (turn_off_insert): Rename to `tty_turn_off_insert'.
21681 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
21682 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
21683 (toggle_highligh): Rename to `tty_toggle_highlight'.
21684 (background_highlight): Rename to `tty_background_highlight'.
21685 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
21686 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
21687 (tty_set_scroll_region, tty_background_highlight)
21688 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
21689 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
21690 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
21691 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
21692 Add static modifier.
21693 (tty_reset_terminal_modes, tty_set_terminal_window)
21694 (tty_set_scroll_region, tty_background_highlight)
21695 (tty_highlight_if_desired, tty_cursor_to)
21696 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
21697 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
21698 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
21699 renames.
21700
217012007-08-28 Jan Djärv <jan.h.d@swipnet.se>
21702
21703 * keyboard.c: Qrtl is new.
21704 (parse_tool_bar_item): Handle :rtl keyword.
21705 (syms_of_keyboard): Intern :rtl keyword.
21706
21707 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
21708
21709 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
21710 so no Lisp code is executed.
21711 (file_for_image, find_rtl_image): New functions.
21712 (xg_get_image_for_pixmap): Use file_for_image.
21713 (update_frame_tool_bar): If direction is RTL, use RTL image if
21714 defined. Use Gtk stock images if defined.
21715
217162007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21717
21718 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
21719 for nonexistent or zero-width glyph in composition glyph.
21720
217212007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
21722
21723 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
21724
21725 * xdisp.c (Finvisible_p): New function.
21726 (syms_of_xdisp): defsubr it.
21727
217282007-08-24 Juanma Barranquero <lekktu@gmail.com>
21729
21730 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
21731 Doc fixes.
21732
217332007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21734
21735 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
21736
217372007-08-24 Martin Rudalics <rudalics@gmx.at>
21738
21739 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
21740 whether decoding has modified buffer contents.
21741
217422007-08-24 Jason Rumney <jasonr@gnu.org>
21743
21744 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
21745 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
21746 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
21747 (init_svg_functions) [HAVE_NTGUI]: New function.
21748 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
21749 (svg_load_image): Use them.
21750 (svg_load_image) [HAVE_NTGUI]: Implement background.
21751
217522007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21753
21754 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
21755 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
21756 (LIBX): Remove @RSVG_LIBS@.
21757 (LIBES): Add $(RSVG_LIBS).
21758
21759 * image.c (svg_load_image): Blend with specified background if exists.
21760 Use IMAGE_BACKGROUND. Add Mac OS Support.
21761
21762 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
21763 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
21764 Remove macros.
21765 [MAC_OSX] (socket_callback): Do nothing.
21766 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
21767 ReceiveNextEvent.
21768 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
21769 socket_callback.
21770 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
21771
217722007-08-22 Glenn Morris <rgm@gnu.org>
21773
21774 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
21775
217762007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
21777
21778 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
21779
21780 * image.c: Add support for SVG images. Some additional comments
21781 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
21782 (svg_image_p): New function to test for SVG image.
21783 (svg_load): New function to load SVG image.
21784 (svg_load_image): New function, helper for svg_load.
21785 (Qsvg): New Lisp_object.
21786 (svg_keyword_index): New enum.
21787 (svg_format): New static `image_keyword' struct.
21788 (svg_type): New static `image_type' struct.
21789 (librsvg/rsvg.h): Include it.
21790
217912007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
21792
21793 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
21794
217952007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
21796
21797 * lread.c (Qold_style_backquotes): New var.
21798 (syms_of_lread): Init and staticpro it.
21799 (load_warn_old_style_backquotes): New fun.
21800 (Fload): Use them to warn about old style backquotes.
21801 (end_of_file_error, Fload): Remove unused vars.
21802
21803 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
21804
21805 * lread.c (Vold_style_backquotes): New var.
21806 (syms_of_lread): Init and export it to Elisp.
21807 (read1): Set it when we find an old-style (back)quote.
21808
218092007-08-22 Jason Rumney <jasonr@gnu.org>
21810
21811 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
21812
218132007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
21814
21815 * puresize.h (BASE_PURESIZE): Increase to 1140000.
21816
218172007-08-19 Richard Stallman <rms@gnu.org>
21818
21819 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
21820
218212007-08-19 Andreas Schwab <schwab@suse.de>
21822
21823 * alloc.c (pure): Round PURESIZE up.
21824
218252007-08-17 Jan Djärv <jan.h.d@swipnet.se>
21826
21827 * xterm.c (handle_one_xevent): Remove check that mouse click is in
21828 active frame.
21829
218302007-08-16 Richard Stallman <rms@gnu.org>
21831
21832 * eval.c (Fcommandp): Add parens to clarify.
21833
21834 * minibuf.c (Fall_completions): Use enum for type of table.
21835
21836 * emacs.c (USAGE2): Improve text.
21837
218382007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
21839
21840 * term.c (tty_default_color_capabilities): Declare static
21841 variables in file scope, to avoid HPUX compiler problem.
21842
218432007-08-13 Jan Djärv <jan.h.d@swipnet.se>
21844
21845 * gtkutil.c (update_frame_tool_bar): Use -1 as index
21846 to gtk_toolbar_insert.
21847
218482007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
21849
21850 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
21851
21852 * insdel.c (reset_var_on_error): New fun.
21853 (signal_before_change, signal_after_change):
21854 Use it to reset (after|before)-change-functions to nil in case of error.
21855 Bind inhibit-modification-hooks to t.
21856 Don't bind (after|before)-change-functions to nil while they run.
21857
218582007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21859
21860 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
21861 filling pixmap with stippled background.
21862
218632007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21864
21865 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
21866 Don't use invisible frame as parent window for repositioning.
21867
218682007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
21869
21870 * print.c (new_backquote_output): Rename from old_backquote_output.
21871 (print): Inverse its logic (according to its name) so as to match the
21872 behavior of new_backquote_flag in lread.c.
21873
218742007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21875
21876 * gmalloc.c (posix_memalign): New function.
21877
21878 * macterm.c (frame_highlight, frame_unhighlight): Don't call
21879 ActivateControl/DeactivateControl here.
21880 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
21881 frame-notice-user-settings is non-nil.
21882 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
21883 for kEventParamFMFontStyle.
21884 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
21885 mac_pass_command_to_system and mac_pass_control_to_system here.
21886 (XTread_socket): Call ActivateControl/DeactivateControl here.
21887 (XTread_socket) [TARGET_API_MAC_CARBON]:
21888 Check mac_pass_command_to_system and mac_pass_control_to_system here.
21889 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
21890 for window repositioning.
21891
218922007-08-08 Glenn Morris <rgm@gnu.org>
21893
21894 * Replace `iff' in doc-strings and comments.
21895
218962007-08-07 Chong Yidong <cyd@stupidchicken.com>
21897
21898 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
21899
219002007-08-07 Martin Rudalics <rudalics@gmx.at>
21901
21902 * fileio.c (Finsert_file_contents): Run format-decode and
21903 after_insert_file_functions on entire buffer when REPLACE is
21904 non-nil and inhibit modification_hooks and point_motion_hooks.
21905 For consistency, run after_insert_file_functions iff something
21906 got inserted. Move signal_after_change and update_compositions
21907 after code running after_insert_file_functions. Make sure that
21908 undo_list doesn't record intermediate steps of the decoding process.
21909
219102007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21911
21912 * emacs.c (main)
21913 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
21914 Call malloc_enable_thread on interactive startup.
21915
21916 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
21917 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
21918 [USE_PTHREAD]: Conditionalize with it.
21919 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
21920 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
21921 New functions.
21922
219232007-08-06 Chong Yidong <cyd@stupidchicken.com>
21924
21925 * xdisp.c (redisplay_window): When restoring original buffer
21926 position, make sure it is still valid.
21927
21928 * image.c (png_load): Ignore png-supplied background color.
21929
219302007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21931
21932 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
21933 Use kCFAbsoluteTimeIntervalSince1970.
21934
21935 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
21936 New variable.
21937 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
21938 event loop should be quit.
21939 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
21940 Quit dialog event loop if quit_dialog_event_loop is set.
21941
21942 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
21943 (Selection): New typedef. Use instead of ScrapRef.
21944 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
21945 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
21946 (mac_clear_selection): Rename from clear_scrap.
21947 (get_flavor_type_from_symbol): New argument SEL and subsume function of
21948 scrap_has_target_type. All uses changed.
21949 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
21950 (mac_selection_has_target_p): New functions.
21951 (mac_put_selection_value): Rename from put_scrap_string.
21952 (mac_get_selection_value): Rename from get_scrap_string.
21953 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
21954 (put_scrap_private_timestamp, scrap_has_target_type)
21955 (get_scrap_private_timestamp): Remove functions.
21956 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
21957 (x_own_selection, x_get_local_selection):
21958 Use mac_valid_selection_value_p.
21959 (x_own_selection): Don't use put_scrap_private_timestamp.
21960 Record OWNERSHIP-INFO into Vselection_alist instead.
21961 (x_get_local_selection): Don't check type if request is local.
21962 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
21963 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
21964
219652007-08-04 Jan Djärv <jan.h.d@swipnet.se>
21966
21967 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
21968 add comment explaining why.
21969
219702007-08-03 Richard Stallman <rms@gnu.org>
21971
21972 * fileio.c (Fvisited_file_modtime): Use make_time.
21973
219742007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
21975
21976 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
21977 build.
21978
219792007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
21980
21981 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
21982
219832007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
21984
21985 * puresize.h (BASE_PURESIZE): Increase to 1130000.
21986
219872007-07-30 Richard Stallman <rms@gnu.org>
21988
21989 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
21990
219912007-07-29 Jan Djärv <jan.h.d@swipnet.se>
21992
21993 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
21994
219952007-07-28 Nick Roberts <nickrob@snap.net.nz>
21996
21997 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
21998 remote default-directory.
21999
22000 * buffer.c (mode-line-format): Update doc string.
22001
220022007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22003
22004 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22005 scroll bar gap.
22006 (x_scroll_bar_create): Set bar->fringe_extended_p.
22007 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22008 on frame edge. Check fringe background extension. Don't clear
22009 extended fringe background area.
22010
22011 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22012 (w32_fill_area): Enclose multiple statements with do ... while (0).
22013
22014 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22015 Extend fringe background to scroll bar gap.
22016 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22017 Set bar->fringe_extended_p.
22018 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22019 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22020 background extension. Don't clear extended fringe background area.
22021
22022 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22023 New member fringe_extended_p.
22024
220252007-07-25 Glenn Morris <rgm@gnu.org>
22026
22027 * Relicense all FSF files to GPLv3 or later.
22028
22029 * COPYING: Switch to GPLv3.
22030
220312007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22032
22033 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22034
22035 * data.c (Finteractive_form): Check for the presence of an
22036 `interactive-form' symbol property more thoroughly.
22037
22038 * data.c (Finteractive_form): Use an `interactive-form' property if
22039 present, analogous to the function-documentation property.
22040
220412007-07-24 Jason Rumney <jasonr@gnu.org>
22042
22043 * w32fns.c (x_real_positions): Get real position from OS instead of
22044 calculating it.
22045
220462007-07-23 Jason Rumney <jasonr@gnu.org>
22047
22048 * filelock.c (current_lock_owner): Allow for @ sign in username.
22049
220502007-07-22 Nick Roberts <nickrob@snap.net.nz>
22051
22052 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22053 remote default-directory.
22054
22055 * buffer.c (mode-line-format): Describe above case in doc string.
22056
220572007-07-20 Eli Zaretskii <eliz@gnu.org>
22058
22059 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22060 Define if not defined.
22061
220622007-07-18 Jason Rumney <jasonr@gnu.org>
22063
22064 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22065
220662007-07-18 Richard Stallman <rms@gnu.org>
22067
22068 * data.c (Fsetq_default): Doc fix.
22069
22070 * eval.c (Fsetq): Doc fix.
22071
220722007-07-18 Juanma Barranquero <lekktu@gmail.com>
22073
22074 * coding.c (Ffind_operation_coding_system):
22075 * eval.c (For, Fand): Doc fixes.
22076 Reported by Johan Bockgård.
22077
220782007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22079
22080 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22081
22082 * xterm.h: Declare x_ewmh_activate_frame.
22083
22084 * xterm.c (x_ewmh_activate_frame): New function.
22085 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22086
220872007-07-17 Martin Rudalics <rudalics@gmx.at>
22088
22089 * window.c (Fdisplay_buffer): If largest or LRU window is the
22090 only window, split it even if it is not eligible for splitting.
22091 This restores the original behavior broken by the 2007-07-15
22092 change.
22093
220942007-07-17 Glenn Morris <rgm@gnu.org>
22095
22096 * abbrev.c (abbrev_check_chars): New function.
22097 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22098 Call abbrev_check_chars to check abbrev characters are word
22099 constituents. Doc fix.
22100
221012007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22102
22103 * process.c (Fstart_process, Fmake_network_process)
22104 (read_process_output): Fix up last changes.
22105
221062007-07-16 Eli Zaretskii <eliz@gnu.org>
22107
22108 * makefile.w32-in (clean): Don't delete *~.
22109
221102007-07-16 Andreas Schwab <schwab@suse.de>
22111
22112 * window.c (Fdisplay_buffer): Use NILP.
22113 (Fset_window_scroll_bars): Likewise.
22114
221152007-07-15 Martin Rudalics <rudalics@gmx.at>
22116
22117 * window.c (window_min_size_2): New function.
22118 (window_min_size_1, size_window, Fdisplay_buffer)
22119 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22120 windows without mode- or header-lines when window-min-height is
22121 too small.
22122 (size_window): Reset nodelete_p after testing it, following an
22123 earlier note by Kim F. Storm.
22124 (display_buffer): Do not set split_height_threshold to twice the
22125 value of window_min_height to avoid changing the value of a
22126 customizable variable. Rather explicitly check whether the
22127 height of the window that shall be splitted is at least as large
22128 as split_height_threshold.
22129 (Fwindow_full_width_p): New defun.
22130 (syms_of_window): Defsubr it.
22131
22132 * window.h: Add EXFUN for Fwindow_full_width_p.
22133
221342007-07-14 Jason Rumney <jasonr@gnu.org>
22135
22136 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22137
221382007-07-14 Richard Stallman <rms@gnu.org>
22139
22140 * eval.c (maybe_call_debugger): New function.
22141 (find_handler_clause): Use maybe_call_debugger.
22142 Call it when the handler says `debug'.
22143 Eliminate DEBUGGER_VALUE_PTR.
22144 (Fsignal): Eliminate debugger_value.
22145 (Qdebug): New variable.
22146 (syms_of_eval): Initialize it.
22147
221482007-07-14 Juanma Barranquero <lekktu@gmail.com>
22149
22150 * eval.c (Fprogn):
22151 * keyboard.c (Ftrack_mouse):
22152 * print.c (Fwith_output_to_temp_buffer):
22153 * window.c (Fsave_window_excursion): Doc fix.
22154
221552007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22156
22157 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22158
221592007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22160
22161 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22162 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22163 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22164 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22165 Remove unused encoding_carryover.
22166 * process.c: Adjust all functions accordingly.
22167
221682007-07-12 Richard Stallman <rms@gnu.org>
22169
22170 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22171
221722007-07-11 Jason Rumney <jasonr@gnu.org>
22173
22174 * makefile.w32-in (LIBS): Include OLE32.
22175
22176 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22177 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22178
221792007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22180
22181 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22182 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22183 from a Lisp_Object into a bare pointer.
22184 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22185 Adjust the code correspondingly.
22186
22187 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22188
22189 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22190 (term_show_mouse_face): Remove unused var `j'.
22191 (handle_one_term_event): Remove unused vars `i' and `j'.
22192 Don't cast return value of ttyname since it's not necessary.
22193
221942007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22195
22196 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22197 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22198
22199 * fns.c (map_char_table): Use an array of int for `indices' rather than
22200 an array of Lisp_Objects (which are only ever integers anyway).
22201 (Fmap_char_table): Update caller.
22202 * lisp.h: Update prototype.
22203 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22204 * fontset.c (Ffontset_info):
22205 * casetab.c (set_case_table): Update callers.
22206
22207 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22208
22209 * keymap.c (struct accessible_keymaps_data)
22210 (struct where_is_internal_data): New structures.
22211 (accessible_keymaps_1, where_is_internal_1): Use them to change
22212 interface to adhere to the one used by map_keymap.
22213 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22214 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22215
22216 * keymap.h (map_keymap_function_t): More informative prototype.
22217
222182007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22219
22220 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22221 (looking_at_1): Don't change search_regs and last_thing_searched
22222 if `inhibit-changing-match-data' is non-nil.
22223 (string_match_1, search_buffer, set_search_regs): Likewise.
22224 (syms_of_search): Add Lisp level definition for
22225 `inhibit-changing-match-data' and set it to nil.
22226 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22227 start and end of the match, instead of using values in search_regs.
22228
222292007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22230
22231 * minibuf.c (Fcompleting_read): New value `confirm-only'
22232 for `require-match'.
22233
222342007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22235
22236 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22237 part of the 2007-06-27 change to syms_of_fileio.
22238
222392007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22240
22241 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22242 Check WINDOWP before using XWINDOW. Consolidate return statements.
22243
222442007-06-27 Richard Stallman <rms@gnu.org>
22245
22246 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22247
222482007-06-27 Juanma Barranquero <lekktu@gmail.com>
22249
22250 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22251
222522007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22253
22254 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22255 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22256 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22257 (_free_internal, memalign): Use them.
22258 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22259 Initialize to PTHREAD_MUTEX_INITIALIZER.
22260 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22261 (morecore_nolock): Rename from morecore. All uses changed.
22262 Use only nolock versions of internal allocation functions.
22263 (_malloc_internal_nolock, _realloc_internal_nolock)
22264 (_free_internal_nolock): New functions created from
22265 _malloc_internal, _realloc_internal, and _free_internal.
22266 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22267 Copy hook value to automatic variable before its use.
22268 (memalign): Copy hook value to automatic variable before its use.
22269
222702007-06-26 Kenichi Handa <handa@m17n.org>
22271
22272 * coding.c (Ffind_operation_coding_system): Docstring improved.
22273 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22274
222752007-06-25 David Kastrup <dak@gnu.org>
22276
22277 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22278 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22279 cater for additional parameter.
22280
22281 * keymap.h: Adjust number of parameters to `current-active-maps'.
22282
22283 * doc.c (Fsubstitute_command_keys): Adjust call of
22284 `current-active-maps'.
22285
222862007-06-25 David Kastrup <dak@gnu.org>
22287
22288 * callint.c (Fcall_interactively): Make the parsing of interactive
22289 specs somewhat more readable.
22290
222912007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22292
22293 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22294 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22295 if extended background has already been filled.
22296
222972007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22298
22299 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22300 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22301
22302 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22303 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22304 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22305 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22306 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22307 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22308 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22309 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22310 Run timers during dialog popup.
22311 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22312
223132007-06-21 Jason Rumney <jasonr@gnu.org>
22314
22315 * image.c (convert_mono_to_color_image): Swap fore and background.
22316
223172007-06-20 Jason Rumney <jasonr@gnu.org>
22318
22319 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22320 (w32_free_bdf_font): Unmap memory not handle.
22321
223222007-06-20 Sam Steingold <sds@gnu.org>
22323
22324 * gmalloc.c (__morecore): Fix the declaration to comply with the
22325 definition.
22326
223272007-06-20 Juanma Barranquero <lekktu@gmail.com>
22328
22329 * w32term.c (w32_delete_display): Remove leftover declaration.
22330 (w32_define_cursor, w32_initialize): Make static.
22331
22332 * w32.c (_wsa_errlist): Fix typo in error message.
22333 (init_environment): Ignore any environment variable from the
22334 registry having a null value.
22335
223362007-06-20 Glenn Morris <rgm@gnu.org>
22337
22338 * Makefile.in (LIBGIF): Default to -lgif.
22339
223402007-06-17 Jason Rumney <jasonr@gnu.org>
22341
22342 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22343 unicode strings.
22344
223452007-06-16 Juanma Barranquero <lekktu@gmail.com>
22346
22347 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22348 Fix typo in docstring.
22349
223502007-06-16 Eli Zaretskii <eliz@gnu.org>
22351
22352 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22353 and their keybindings.
22354
223552007-06-15 Chong Yidong <cyd@stupidchicken.com>
22356
22357 * composite.c (update_compositions): Fix last fix.
22358
223592007-06-14 Jason Rumney <jasonr@gnu.org>
22360
22361 * w32.c (get_process_times_fn): New function pointer.
22362 (globals_of_w32): Intialize it if present in kernel32.dll.
22363 (w32_get_internal_run_time): New function.
22364
22365 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22366
223672007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22368
22369 * composite.c (update_compositions): Check the validness of
22370 compositions.
22371
223722007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22373
22374 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22375 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22376
22377 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22378 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22379
22380 * macgui.h (USE_MAC_TOOLBAR): New define.
22381
22382 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22383 Return immediately unless popup is activated.
22384
22385 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
22386 background to scroll bar gap.
22387 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
22388 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
22389 scroll bars on frame edge. Check fringe background extension.
22390 Don't clear extended fringe background area.
22391 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
22392 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
22393 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
22394 [USE_MAC_TOOLBAR]: New macros.
22395 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
22396 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
22397 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
22398 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
22399 [USE_MAC_TOOLBAR]: New functions.
22400 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
22401 manually if previous repositioning has failed.
22402 (mac_handle_keyboard_event): Use precomputed event kind.
22403 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
22404 as tool bar item click. Handle mouse movement over tool bar items.
22405
22406 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
22407 toolbar_win_gravity.
22408 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
22409 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
22410 Add externs.
22411
22412 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
22413 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
22414
224152007-06-14 Chong Yidong <cyd@stupidchicken.com>
22416
22417 * image.c (search_image_cache): Remove unused variable.
22418
224192007-06-13 Chong Yidong <cyd@stupidchicken.com>
22420
22421 * xfns.c, xmenu.c: Link to xaw3d if available.
22422
224232007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22424
22425 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
22426 frame_foreground and frame_background.
22427
22428 * image.c (lookup_image): Save frame foreground and background colors.
22429 (search_image_cache): Check if saved and current frame colors match.
22430
224312007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
22432
22433 * regex.c (regex_compile): Remove the `regnum' counter.
22434 Use bufp->re_nsub instead. Add support for \(?N:RE\).
22435
224362007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
22437
22438 * term.c: Include intervals.h to declare Fget_text_property.
22439
224402007-06-10 Jason Rumney <jasonr@gnu.org>
22441
22442 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
22443
224442007-06-08 Juanma Barranquero <lekktu@gmail.com>
22445
22446 * callint.c (Fcall_interactively):
22447 * editfns.c (Fdelete_and_extract_region):
22448 * fileio.c (Fread_file_name):
22449 * fns.c (Fmapconcat):
22450 * keyboard.c (cmd_error_internal):
22451 * keymap.c (Fkey_description):
22452 * lread.c (openp):
22453 * minibuf.c (read_minibuf):
22454 * search.c (wordify):
22455 * sunfns.c (sel_read):
22456 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
22457 * xfns.c (x_default_scroll_bar_color_parameter):
22458 * xmenu.c (menu_help_callback):
22459 * xselect.c (Fx_get_atom_name):
22460 * xterm.c (x_term_init): Use empty_unibyte_string.
22461
224622007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
22463
22464 * alloc.c (init_strings): Initialize canonical empty strings.
22465 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
22466 canonical empty string when the requested size is 0.
22467
22468 * emacs.c (empty_unibyte_string): Rename from empty_string.
22469 (empty_multibyte_string): New canonical empty string.
22470 (syms_of_emacs): Don't initialize empty_string.
22471
22472 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
22473 string, if appropriate.
22474 (empty_unibyte_string, empty_multibyte_string): New externs.
22475 (empty_string): Remove extern.
22476
22477 * lread.c (syms_of_lread): Use empty_unibyte_string.
22478
224792007-06-07 Jason Rumney <jasonr@gnu.org>
22480
22481 * s/ms-w32.h: Don't define HAVE_TZNAME.
22482
22483 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
22484
224852007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22486
22487 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
22488
22489 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
22490 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
22491
22492 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22493 Don't call next handler.
22494 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
22495 Remove argument. Install handler to application.
22496 (set_frame_menubar): Don't change deep_p.
22497 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
22498 FRAME_OUTER_TO_INNER_DIFF_Y.
22499 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
22500 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
22501 [HAVE_DIALOGS]: New macros.
22502 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
22503 Use them.
22504 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
22505
22506 * macselect.c [MAC_OSX] (install_service_handler): Rename from
22507 init_service_handler. All callers changed. Return OSStatus value.
22508
22509 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
22510 All callers changed so as not to call SetPortWindowPort.
22511 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
22512 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
22513 mac_draw_string_common.
22514 (mac_draw_image_string_qd): Likewise.
22515 (mac_draw_string_common): Use them. Add INLINE.
22516 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
22517 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
22518 GetGlobalMouse.
22519 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
22520 and FRAME_OUTER_TO_INNER_DIFF_Y.
22521 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
22522 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
22523 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
22524 repositioning window to mac_handle_window_event.
22525 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
22526 saving window location to mac_handle_window_event
22527 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
22528 (install_menu_target_item_handler): Remove argument in extern.
22529 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
22530 Also accept command events.
22531 (do_keystroke): New function created from XTread_socket.
22532 (init_command_handler): Remove functions.
22533 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
22534 and save window location by kEventWindowShowing and kEventWindowHiding
22535 handlers here. Don't call next handler for window state change and
22536 focus events.
22537 (mac_handle_application_event, mac_handle_keyboard_event)
22538 [TARGET_API_MAC_CARBON]: New functions.
22539 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
22540 kEventWindowShowing and kEventWindowHiding events. Move installation
22541 of mouse, font, text input and menu target item handlers to
22542 install_application_handler.
22543 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
22544 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22545 New function.
22546 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22547 Register it.
22548 (XTread_socket) [TARGET_API_MAC_CARBON]:
22549 Consolidate SendEventToEventTarget calls.
22550 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
22551 Move application activation handler to mac_handle_application_event.
22552 Move keyboard handler to mac_handle_keyboard_event.
22553 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
22554 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
22555 init_command_handler. Call install_application_handler.
22556
22557 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
22558 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
22559
225602007-06-07 Glenn Morris <rgm@gnu.org>
22561
22562 * emacs.c (main): Use `emacs-copyright' in --version output.
22563
225642007-06-06 Chong Yidong <cyd@stupidchicken.com>
22565
22566 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
22567
225682007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22569
22570 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
22571
22572 * macgui.h: Replace WindowPtr with WindowRef.
22573
22574 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22575 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22576 Replace ControlHandle with ControlRef.
22577 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
22578
22579 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22580 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22581 Replace ControlHandle with ControlRef.
22582 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
22583 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
22584
22585 * macterm.h (struct scroll_bar): Rename member control_handle_low
22586 and control_handle_high to control_ref_low and control_ref_high.
22587 All uses changed.
22588 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
22589 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
22590 respectively. All uses changed.
22591 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
22592 (install_window_handler, remove_window_handler): Replace WindowPtr
22593 with WindowRef in externs.
22594
225952007-06-05 Juanma Barranquero <lekktu@gmail.com>
22596
22597 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
22598
225992007-06-03 Nick Roberts <nickrob@snap.net.nz>
22600
22601 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
22602
22603 * frame.c (Fmouse_position, Fmouse_pixel_position):
22604 Condition on HAVE_GPM too.
22605
22606 * term.c (term_mouse_highlight): Remove unused variables.
22607 (Fterm_open_connection): Set gpm_zerobased to 1.
22608 (term_mouse_movement, term_mouse_click, handle_one_term_event):
22609 Use zero based co-ordinates.
22610 (handle_one_term_event): Report a drag as mouse movement too.
22611
22612 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
22613
226142007-06-03 Chong Yidong <cyd@stupidchicken.com>
22615
22616 * image.c (search_image_cache): New function. Require background
22617 color match if background color is unspecified in the image spec.
22618 (uncache_image, lookup_image): Use it.
22619
226202007-06-01 Juanma Barranquero <lekktu@gmail.com>
22621
22622 * window.c (Fshrink_window): Reflow docstring.
22623
226242007-06-02 Chong Yidong <cyd@stupidchicken.com>
22625
22626 * Version 22.1 released.
22627
226282007-06-01 Richard Stallman <rms@gnu.org>
22629
22630 * xfns.c (x_encode_text): Add GCPRO.
22631
226322007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22633
22634 * xfns.c (x_set_name_internal): Save encoded name before
22635 x_encode_text in case string data is relocated.
22636
226372007-05-31 Richard Stallman <rms@gnu.org>
22638
22639 * buffer.c (syms_of_buffer): Doc fix.
22640
226412007-05-30 Nick Roberts <nickrob@snap.net.nz>
22642
22643 * sysdep.c (init_sys_modes): Add rather than replace with
22644 O_NONBLOCK.
22645
22646 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
22647 term_mouse_moveto.
22648
22649 * termhooks.h (term_mouse_moveto): New extern.
22650
22651 * term.c (mouse_face_window): Rename...
22652 (Qmouse_face_window): ...to this.
22653 (term_show_mouse_face, term_clear_mouse_face)
22654 (term_mouse_highlight): Use Qmouse_face_window.
22655 (term_mouse_moveto): New function.
22656 (term_mouse_position): Make it work.
22657 (syms_of_term): Uncomment assignment to mouse_position_hook.
22658 Staticpro Qmouse_face_window.
22659
226602007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22661
22662 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
22663 around current_column call.
22664
226652007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
22666
22667 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
22668 * xdisp.c (next_element_from_buffer):
22669 * window.c (delete_window):
22670 * term.c (term_mouse_highlight):
22671 * msdos.c (getdefdir):
22672 * macterm.c (mac_create_bitmap_from_bitmap_data)
22673 (init_font_name_table):
22674 * fns.c (Fsxhash):
22675 * data.c (Fmake_local_variable):
22676 * ccl.c (ccl_driver): Likewise.
22677
226782007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22679
22680 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
22681 Call mac_wakeup_from_rne on window size change.
22682
226832007-05-25 Chong Yidong <cyd@stupidchicken.com>
22684
22685 * image.c (uncache_image): Fix typo.
22686
226872007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
22688
22689 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
22690
226912007-05-22 Richard Stallman <rms@gnu.org>
22692
22693 * xterm.c (x_connection_closed): Remove NO_RETURN.
22694
226952007-05-22 Martin Rudalics <rudalics@gmx.at>
22696
22697 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
22698
226992007-05-21 Chong Yidong <cyd@stupidchicken.com>
22700
22701 * image.c (uncache_image): New function.
22702 (Fimage_refresh): New function.
22703
227042007-05-20 Jan Djärv <jan.h.d@swipnet.se>
22705
22706 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
22707
227082007-05-20 Nick Roberts <nickrob@snap.net.nz>
22709
22710 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
22711 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
22712
227132007-05-20 Nick Roberts <nickrob@snap.net.nz>
22714
22715 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
22716 conditional on [HAVE_GPM_H].
22717
227182007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
22719
22720 * syntax.c (skip_chars): Update syntax-table only after we checked that
22721 the new location is valid.
22722
227232007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22724
22725 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
22726 mac_get_window_bounds.
22727
227282007-05-20 Nick Roberts <nickrob@snap.net.nz>
22729
22730 * Makefile.in (LIBGPM): Allow it to be set from configure.
22731 If set then link Emacs with it.
22732
22733 * config.in: Regenerate.
22734
22735 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
22736 New externs.
22737
22738 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
22739 Include gpm.h.
22740 (handle_one_term_event, term_gpm): New externs.
22741
22742 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
22743 and allow it to be interrupted by SIGIO.
22744
22745 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
22746 (wait_reading_process_output): Wait on gpm_fd too.
22747 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
22748 (add_gpm_wait_descriptor_called_flag): New variable.
22749 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
22750
22751 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
22752 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
22753 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
22754 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
22755 (make_lispy_event): Add case GPM_CLICK_EVENT.
22756 (read_avail_input): Handle mouse input.
22757
22758 * term.c (write_glyphs_with_face): New function.
22759 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
22760 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
22761 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
22762 (mouse_face_face_id, term_gpm, pos_x, pos_y)
22763 (last_mouse_x, last_mouse_y): New variables.
22764 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
22765 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
22766 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
22767 (Fterm_close_connection): New functions.
22768 (term_init): Initialise mouse_face_window.
22769
227702007-05-19 Chong Yidong <cyd@stupidchicken.com>
22771
22772 * xdisp.c (redisplay_window): If first window line is a
22773 continuation line, recompute the new window start instead of
22774 recentering.
22775
227762007-05-18 Glenn Morris <rgm@gnu.org>
22777
22778 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
22779 Suggested by Alfred M. Szmidt <ams@gnu.org>.
22780
227812007-05-17 Glenn Morris <rgm@gnu.org>
22782
22783 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
22784
227852007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22786
22787 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
22788 dead key repeat and up events.
22789
227902007-05-14 Chong Yidong <cyd@stupidchicken.com>
22791
22792 * image.c (pbm_load): Check image size for monochrome pbm.
22793
227942007-05-13 Chong Yidong <cyd@stupidchicken.com>
22795
22796 * xterm.c (XTread_socket): Revert last change.
22797
227982007-05-12 Chong Yidong <cyd@stupidchicken.com>
22799
22800 * image.c (pbm_load): Correctly check image size for greyscale pbm.
22801
22802 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
22803
228042007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22805
22806 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
22807 mixup (YAILOM).
22808
228092007-05-07 Andreas Schwab <schwab@suse.de>
22810
22811 * keymap.c (Flookup_key): Fix typo in last change.
22812
228132007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
22814
22815 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
22816 mapping for unibyte strings.
22817
228182007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22819
22820 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
22821 (Fx_popup_dialog) [MAC_OSX]: Likewise.
22822
228232007-04-29 Richard Stallman <rms@gnu.org>
22824
22825 * insdel.c (replace_range): For undo, record insertion first.
22826
228272007-04-29 Andreas Schwab <schwab@suse.de>
22828
22829 * lisp.h (VECSIZE): Use OFFSETOF.
22830
228312007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22832
22833 * xdisp.c (try_window_reusing_current_matrix): Fix number of
22834 disabled lines.
22835
228362007-04-28 Richard Stallman <rms@gnu.org>
22837
22838 * lread.c (read_escape): In a string, \s is always space.
22839
228402007-04-27 Jan Djärv <jan.h.d@swipnet.se>
22841
22842 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
22843
22844 * gtkutil.c (xg_update_menubar, create_menus): Create empty
22845 submenu for menu bar items.
22846
22847See ChangeLog.10 for earlier changes.
22848
22849;; Local Variables:
22850;; coding: utf-8
22851;; add-log-time-zone-rule: t
aac0c6e3
MR
22852;; End:
22853
e3eb1dae 22854 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
22855
22856 This file is part of GNU Emacs.
22857
22858 GNU Emacs is free software: you can redistribute it and/or modify
22859 it under the terms of the GNU General Public License as published by
22860 the Free Software Foundation, either version 3 of the License, or
22861 (at your option) any later version.
22862
22863 GNU Emacs is distributed in the hope that it will be useful,
22864 but WITHOUT ANY WARRANTY; without even the implied warranty of
22865 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22866 GNU General Public License for more details.
22867
22868 You should have received a copy of the GNU General Public License
22869 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
22870
22871;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40