* progmodes/grep.el (grep-regexp-alist):
[bpt/emacs.git] / src / ChangeLog
CommitLineData
a4ada374
DN
12009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
4 * xterm.c (syms_of_xterm):
5 * xfaces.c (syms_of_xfaces):
6 * xdisp.c (syms_of_xdisp):
7 * lread.c (syms_of_lread):
8 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
9 build_string.
10 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
11
af98fc7f
SM
122009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
13
14 * fns.c (Fplist_get): Merge the active and the uncommented code.
15
e90292a9
JD
162009-11-10 Jan Djärv <jan.h.d@swipnet.se>
17
18 * keyboard.h: Declare timer_check.
19
20 * keyboard.c (timer_check_2): New function that does what the old
21 timer_check did.
22 (timer_check): Call timer_check_2 until -1 or a non-zero time is
23 returned, i.e. don't return -1 with timers pending.
24
25 * process.c: Remove extern declaration of timer_check.
26
27 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
28 even if timer_check returned -1.
29
af98fc7f
SM
30 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
31 xg_dialog_data.
e90292a9
JD
32 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
33 the event loop.
34 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
35 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
36 Destroy the dialog after xg_dialog_run.
37
045b83c0
SM
382009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
39
40 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
41
1fb99a3a
JD
422009-11-10 Jan Djärv <jan.h.d@swipnet.se>
43
44 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
45
04e452cb
JB
462009-11-09 Juanma Barranquero <lekktu@gmail.com>
47
48 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
49
ef7417fd
SM
502009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
51
52 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
53 w32menu.c, and nsmenu.m.
54 Simplify the obsolete case where position is nil.
55 (cleanup_popup_menu): New function, moved from nsmenu.m.
56 (struct skp): Remove slot `notreal'.
57 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
58 adjust callers.
59 (single_menu_item): Adjust call to parse_menu_item.
60 (syms_of_menu): Defsubr x-popup-menu.
61 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
62 (keymap_panes): Don't export any more.
63 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
64 (xmenu_show): Declare.
65 * keyboard.c (parse_menu_item): Remove arg `notreal'.
66 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
67 * keyboard.h (parse_menu_item): Update declaration.
68 * xmenu.c (Fx_popup_menu): Remove.
69 (syms_of_xmenu): Don't defsubr x-popup-menu.
70 * w32menu.c (Fx_popup_menu): Remove.
71 (syms_of_w32menu): Don't defsubr x-popup-menu.
72 * nsmenu.m (cleanup_popup_menu): Remove.
73 (ns_menu_show): Rename from ns_popup_menu and remove all the code
74 moved to menu.c's Fx_popup_menu.
75 (Fx_popup_menu): Remove.
76 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
77 menu_items (it's done in menu.c already).
78
424d6179
SM
792009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
80
81 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
82 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
83
c0df13a6 842009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
85
86 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 87 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
88 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
89 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
90
2de9f71c
SM
912009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
92
93 Let integers use up 2 tags to give them one extra bit and thus double
94 their range.
95 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
96 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
97 New macros.
98 (enum Lisp_Type): Use them. Give explicit values.
99 (Lisp_Type_Limit): Remove.
100 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
101 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
102 Pay attention to USE_2_TAGS_FOR_INTS.
103 (INTEGERP): Use LISP_INT_TAG_P.
104 * fns.c (internal_equal): Simplify the default case.
105 (sxhash): Use case_Lisp_Int.
106 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
107 any more.
108 (Ftype_of): Use case_Lisp_Int.
109 (store_symval_forwarding): Take into account the fact that Ints can
110 now have more than one tag.
111 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
112 buffer_slot_type_mismatch):
113 * xfaces.c (face_attr_equal_p):
114 * print.c (print_object):
115 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
116 Use case_Lisp_Int.
117
323637a2
EZ
1182009-11-06 Eli Zaretskii <eliz@gnu.org>
119
7ac65b38
EZ
120 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
121
323637a2
EZ
122 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
123 warning.
124
e511451f
JD
1252009-11-06 Jan Djärv <jan.h.d@swipnet.se>
126
127 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
128
129 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
130
131 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
132 ButtonPressRelease and MotionNotify (bug#4870).
133
5e2327cf
DN
1342009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
135
5adc433e
DN
136 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
137
d67b4f80
DN
138 * xterm.c (syms_of_xterm):
139 * xselect.c (syms_of_xselect):
140 * xmenu.c (syms_of_xmenu):
141 * xfns.c (syms_of_xfns):
142 * xfaces.c (syms_of_xfaces):
143 * xdisp.c (syms_of_xdisp):
144 * window.c (syms_of_window):
145 * w32fns.c (syms_of_w32fns):
146 * undo.c (syms_of_undo):
147 * textprop.c (syms_of_textprop):
148 * terminal.c (syms_of_terminal):
149 * syntax.c (syms_of_syntax):
150 * sound.c (syms_of_sound):
151 * search.c (syms_of_search):
152 * print.c (syms_of_print):
153 * minibuf.c (syms_of_minibuf):
154 * macros.c (syms_of_macros):
155 * keymap.c (syms_of_keymap, initial_define_key)
156 (initial_define_lispy_key):
157 * keyboard.c (syms_of_keyboard):
158 * insdel.c (syms_of_insdel):
159 * image.c (syms_of_image):
160 * fringe.c (syms_of_fringe):
161 * frame.c (syms_of_frame):
162 * fontset.c (syms_of_fontset):
163 * fns.c (syms_of_fns):
164 * fns.c (syms_of_fns):
165 * fileio.c (syms_of_fileio):
166 * fileio.c (syms_of_fileio):
167 * eval.c (syms_of_eval):
168 * doc.c (syms_of_doc):
169 * dispnew.c (syms_of_display):
170 * dired.c (syms_of_dired):
171 * dbusbind.c (syms_of_dbusbind):
172 * data.c (syms_of_data):
173 * composite.c (syms_of_composite):
174 * coding.c (syms_of_coding):
175 * cmds.c (syms_of_cmds):
176 * charset.c (define_charset_internal, syms_of_character):
177 * ccl.c (syms_of_ccl):
178 * category.c (syms_of_category, init_category_once):
179 * casetab.c (syms_of_casetab):
180 * casefiddle.c (syms_of_casefiddle):
181 * callint.c (syms_of_callint):
182 * bytecode.c (syms_of_bytecode):
183 * buffer.c (keys_of_buffer, syms_of_buffer):
184 * alloc.c (syms_of_alloc):
185 * process.c (syms_of_process, init_process):
186 * lread.c (syms_of_lread, init_obarray):
187 * font.c (build_style_table):
188 * emacs.c (syms_of_emacs, main): Replace calls to intern with
189 intern_c_string, calls to make_pure_string with
190 make_pure_c_string. Use pure_cons instead of Fcons.
191
5e2327cf
DN
192 * process.c (socket_options): Make it const.
193 (set_socket_option, init_process): Use a const pointer.
194
195 * lread.c (intern_c_string): New function.
196 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
197 (defvar_int): Uset it. Make the name const char*.
198
199 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
200 (defvar_int): Update prototypes.
201 (DEFUN, EXFUN): Support for prototypes is now required.
202 (intern_c_string): New prototype.
203 (struct Lisp_Subr): Make symbol_name constant.
204
205 * font.c (struct table_entry): Remove unused member. Make NAMES
206 constant.
207 (weight_table, slant_table, width_table): Make constant.
208
209 * emacs.c (struct standard_args): Make name and longname constant.
210
211 * character.h (DEFSYM): Use intern_c_string.
212
a56eaaef
DN
2132009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
214
215 * alloc.c (make_pure_c_string): New function.
216
217 * eval.c (Fautoload): Purecopy all arguments.
218
f6a07420
KH
2192009-11-05 Kenichi Handa <handa@m17n.org>
220
221 * fileio.c (Finsert_file_contents): Be sure set coding-system of
222 the buffer in case of replace.
223
5d28d4b1
DN
2242009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
225
226 * puresize.h (BASE_PURESIZE): Increase to 1620000.
227
b349d111
SM
2282009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
229
d528b1ce
SM
230 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
231 when applicable (bug#4851).
232
b349d111
SM
233 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
234 (P_): Support for prototypes is now required.
235
c38eb027
CY
2362009-10-31 Chong Yidong <cyd@stupidchicken.com>
237
238 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
239 (Bug#4827).
240
0405f8d9
EZ
2412009-10-30 Eli Zaretskii <eliz@gnu.org>
242
d528b1ce 243 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 244
ca0a881a
DN
2452009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
246
247 * puresize.h (BASE_PURESIZE): Increase to 1470000.
248
d528b1ce
SM
249 * lread.c (Fload): Purecopy the file name when building
250 Vpreloaded_file_list.
ca0a881a 251
47e0e0e4
JR
2522009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
253
254 * w32fns.c (syms_of_w32fns): Change default value of
255 w32-scroll-lock-modifier to nil. (Bug#2827)
256
057bce6f
JB
2572009-10-26 Juanma Barranquero <lekktu@gmail.com>
258
782a943e 259 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 260
242bc74c
AS
2612009-10-26 Andreas Schwab <schwab@redhat.com>
262
263 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
264
522d013a
JB
2652009-10-26 Juanma Barranquero <lekktu@gmail.com>
266
267 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
268 For delta < 0, skip check that only makes sense when the mini-window
269 is going to be enlarged. (Bug#4534)
270
18060980
CY
2712009-10-25 Chong Yidong <cyd@stupidchicken.com>
272
273 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
274 string in menu maps (Bug#4471).
275
fec8f0fe
CY
2762009-10-24 Chong Yidong <cyd@stupidchicken.com>
277
278 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
279 FRAME_NS_VIEW on terminal frames (Bug#4765).
280
10d66ec0
AS
2812009-10-24 Andreas Schwab <schwab@linux-m68k.org>
282
1cae01f7
AS
283 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
284 DBUS_TYPE_UINTnn separately to get proper sign extension.
285
58a12889
AS
286 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
287 can properly handle unsigned types.
d528b1ce 288 (make_uid, make_gid): Remove.
58a12889 289
987c9327
AS
290 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
291 types again.
292
522d013a 293 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
294 (system_process_attributes): Likewise.
295
905a9ed3
DN
2962009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
297
298 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
299
300 * eval.c (Fautoload): Purecopy the filename. Simplify.
301
302 * category.c (Fdefine_category): Purecopy docstring.
303
a599b3e8
AS
3042009-10-23 Andreas Schwab <schwab@linux-m68k.org>
305
7b792fc9
AS
306 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
307
a599b3e8
AS
308 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
309
b35ac83e
CY
3102009-10-23 Chong Yidong <cyd@stupidchicken.com>
311
312 * window.c (Fwindow_edges, Fwindow_pixel_edges)
313 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
314 (Bug#4775).
315
e8903e00
SM
3162009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
317
318 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
319 (init_fileio_once):
320 * lisp.h (init_fileio_once): Remove.
321 * emacs.c (main): Don't call init_fileio_once.
322
8f43cbf3
DN
3232009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
324
325 * puresize.h (BASE_PURESIZE): Increase to 1430000.
326
26898943
AS
3272009-10-21 Andreas Schwab <schwab@linux-m68k.org>
328
329 * doprnt.c (doprnt): Fix overflow check.
330
5c646d5a
JD
3312009-10-21 Jan Djärv <jan.h.d@swipnet.se>
332
3132a7ea
JD
333 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
334
5c646d5a
JD
335 * xterm.h (x_wait_for_event): Declare it.
336
337 * xterm.c (pending_event_wait): New variable.
338 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
339 see pending_event_wait.eventtype.
340 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
341 (x_new_font): Call change_frame_size with new rows/columns before we
342 try to resize the frame.
5c646d5a 343 (x_wait_for_event): New function.
d528b1ce
SM
344 (x_set_window_size_1): Don't change gravity unless change_gravity
345 is set.
5c646d5a
JD
346 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
347 don't change frame size, instead wait for the ConfigureNotify.
348 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
349 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
350 (x_initialize): Initialize pending_event_wait.
351
352 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
353 size.
354
355 * widget.c (EmacsFrameSetValues): Add comment.
356 (EmacsFrameSetCharSize): Just call x_set_window_size.
357
358 * gtkutil.c (xg_frame_set_char_size): Flush events and call
359 x_wait_for_event.
d528b1ce 360 (flush_and_sync): Remove again.
5c646d5a
JD
361 (xg_get_font_name): Suggest monospace if no previous font is known.
362
e9c1637d
SM
3632009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
364
365 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 366 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 367
5a72cccb
YM
3682009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
369
370 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
371 processing pending events when event is filtered for input method.
ab04798f 372 (Bug#3681)
5a72cccb 373
2629aa37
JB
3742009-10-20 Juanma Barranquero <lekktu@gmail.com>
375
376 * fns.c: Add #endif accidentally removed in previous change.
377
c3417a74
DN
3782009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
379
380 * fns.c: Remove code for unsupported system: MAC_OS.
381 * image.c: Likewise. Include setjmp.h.
382
9685cef2
JD
3832009-10-19 Jan Djärv <jan.h.d@swipnet.se>
384
385 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
386 pixel -1 (bug #4742).
387
d7306fe6
DN
3882009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
389
019d2c4c
DN
390 * process.c (create_pty): Remove conditionals for no longer
391 supported systems: UNIPLUS and RTU.
392
ee6bacd4
DN
393 * xterm.c:
394 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
395
d7306fe6
DN
396 * alloc.c: Do not define struct catchtag.
397 * eval.c: Move struct catchtag definition ...
398 * lisp.h: ... here.
399
400 * image.c: Move png.h #include earlier to avoid warnings.
401
402 * xterm.c:
403 * xsmfns.c:
404 * xselect.c:
405 * xrdb.c:
406 * xmenu.c:
407 * xftfont.c:
408 * xfont.c:
409 * xfns.c:
410 * xfaces.c:
411 * xdisp.c:
412 * window.c:
413 * widget.c:
414 * w32xfns.c:
415 * w32uniscribe.c:
416 * w32term.c:
417 * w32select.c:
418 * w32reg.c:
419 * w32proc.c:
420 * w32menu.c:
421 * w32inevt.c:
422 * w32heap.c:
423 * w32font.c:
424 * w32fns.c:
425 * w32console.c:
426 * w32.c:
427 * w16select.c:
428 * vm-limit.c:
429 * unexsol.c:
430 * unexec.c:
431 * unexcw.c:
432 * unexaix.c:
433 * undo.c:
434 * tparam.c:
435 * textprop.c:
436 * terminfo.c:
437 * terminal.c:
438 * termcap.c:
439 * term.c:
440 * syntax.c:
441 * sound.c:
442 * sheap.c:
443 * search.c:
444 * scroll.c:
445 * region-cache.c:
446 * regex.c:
447 * ralloc.c:
448 * process.c:
449 * print.c:
b024548b
DN
450 * nsterm.m:
451 * nsselect.m:
452 * nsmenu.m:
453 * nsimage.m:
454 * nsfont.m:
455 * nsfns.m:
d7306fe6
DN
456 * msdos.c:
457 * minibuf.c:
458 * menu.c:
459 * marker.c:
460 * macros.c:
461 * keymap.c:
462 * keyboard.c:
463 * intervals.c:
464 * insdel.c:
465 * indent.c:
466 * gtkutil.c:
467 * ftxfont.c:
468 * ftfont.c:
469 * fringe.c:
470 * frame.c:
471 * fontset.c:
472 * font.c:
473 * fns.c:
474 * floatfns.c:
475 * filelock.c:
476 * fileio.c:
477 * emacs.c:
478 * editfns.c:
479 * dosfns.c:
480 * doprnt.c:
481 * doc.c:
482 * dispnew.c:
483 * dired.c:
484 * dbusbind.c:
485 * data.c:
486 * composite.c:
487 * coding.c:
488 * cmds.c:
489 * cm.c:
490 * chartab.c:
491 * charset.c:
492 * character.c:
493 * ccl.c:
494 * category.c:
495 * casetab.c:
496 * casefiddle.c:
497 * callproc.c:
498 * callint.c:
499 * bytecode.c:
500 * buffer.c:
501 * atimer.c: Include setjmp.h. (Bug#4643)
502
fd5f21e6
SM
5032009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
504
4c0354d7
SM
505 Remove leftover table unibyte_to_multibyte_table.
506 * character.c (unibyte_to_multibyte_table): Remove.
507 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
508 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
509 * character.h (UNIBYTE_TO_CHAR): New macro.
510 (MAKE_CHAR_MULTIBYTE): Use it.
511 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
512 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
513 (message_dolog, set_message_1):
514 * search.c (Freplace_match):
515 * editfns.c (Fcompare_buffer_substrings):
516 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
517 (concat):
518 * insdel.c (copy_text, count_size_as_multibyte):
519 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
520 * term.c (produce_glyphs):
521 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
522 * regex.c (RE_CHAR_TO_MULTIBYTE):
523 * cmds.c (internal_self_insert):
524 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
525
fd5f21e6
SM
526 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
527
4418646e
DN
5282009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
529
530 * puresize.h (BASE_PURESIZE): Increase to 1310000.
531
35f5c1d2
JB
5322009-10-16 Juanma Barranquero <lekktu@gmail.com>
533
534 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
535
a0cd8f6b
AR
5362009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
537
538 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
539 still needed under Tiger.
540
541 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
542
543 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
544 __Apple__.
545
546 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
547
01a8d3fa
KH
5482009-10-15 Kenichi Handa <handa@m17n.org>
549
550 * print.c (print_object): Escape a symbol like "2E10" too.
551
bf6c75c9 5522009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
553
554 Cleanups and changes for 64-bit compile under Snow Leopard.
555 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
556
557 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
558
c5959062 559 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
560 (ns_findfonts, nsfont_list_family): Use long format in printf, and
561 cast argument.
562 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 563 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
564
565 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
566
567 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
568 where appropriate.
569
570 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
571 where appropriate.
6e4780c5
JB
572 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
573 Use stringWithUTF8String.
bf6c75c9
AR
574 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
575
6e4780c5
JB
576 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
577 Add formal protocol mention to inheritance.
bf6c75c9
AR
578 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
579
6e4780c5
JB
580 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
581 Fix printf format.
bf6c75c9
AR
582 (ns_query_color): Use CGFloat where appropriate.
583 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
584 (EmacsScroller-mouseDown:) Use long format in printf, and cast
585 argument.
586
3d87f118
AR
587 * config.in (NS_HAVE_NSINTEGER): Drop.
588
a95c8102
AR
589 * dbusbind.c (dbus-method-return-internal)
590 (dbus-method-error-internal): Use long format in printf, and cast
591 argument.
592
593 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
594 in printf, and cast argument.
595
6873acca 596 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
597 cast argument.
598
9ec6f100
GM
5992009-10-11 Glenn Morris <rgm@gnu.org>
600
601 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
602
5be883cd
JD
6032009-10-08 Jan Djärv <jan.h.d@swipnet.se>
604
605 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
606 menu bar with a small width so it doesn't enlarge the frame.
607
d7a39b51
JB
6082009-10-08 Juanma Barranquero <lekktu@gmail.com>
609
610 * fontset.c (Fset_fontset_font): Fix typos in error messages.
611
0c2b6f8e
GM
6122009-10-06 Glenn Morris <rgm@gnu.org>
613
614 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
615 SOME_MACHINE_LISP (this enters indirectly via DOC).
616
e02131a2
EZ
6172009-10-05 Eli Zaretskii <eliz@gnu.org>
618
619 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
620
b4744254
EZ
6212009-10-04 Eli Zaretskii <eliz@gnu.org>
622
623 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
624 Doc fix.
625
dbf64827
JB
6262009-10-03 Martin Rudalics <rudalics@gmx.at>
627
628 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
629
e9a0aef8
MA
6302009-10-02 Michael Albinus <michael.albinus@gmx.de>
631
d528b1ce 632 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
633 used anymore outside fileio.c.
634
635 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
636
64eb2b56
JB
6372009-10-01 Juanma Barranquero <lekktu@gmail.com>
638
639 * lisp.h (Qdelete_directory_internal):
640 Declare, instead of Qdelete_directory.
641
642 * w32fns.c (Fsystem_move_file_to_trash): Use it.
643
9d28c33e
SM
6442009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
645
646 * eval.c (Fcalled_interactively_p): Add `kind' argument.
647
9d8f3bd9
MA
6482009-10-01 Michael Albinus <michael.albinus@gmx.de>
649
9d28c33e 650 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
651 Fdelete_directory. It is not a command anymore. It has no file
652 name handler.
653
9694740b
SM
6542009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
655
656 * xdisp.c (get_next_display_element): Use an enum in last change.
657
748e162f
KH
6582009-09-28 Kenichi Handa <handa@m17n.org>
659
9694740b 660 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
661 unibyte_display_via_language_environment in handling
662 Vnobreak_char_display.
663
17efd58d
AR
6642009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
665
666 * nsterm.h (ns_app_name): New extern variable.
667
668 * nsterm.m (ns_app_name): New variable.
669 (ns_term_init): Set and use it.
670 (ns_term_shutdown): Use it.
671
672 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
673 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
674
675 * nsfns.m (ns_set_name_iconic, ns_set_name)
676 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
677 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
678
9694740b
SM
679 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
680 Remove double-casting in client_data comparison.
31c2d412 681
3208cb35
YM
6822009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
683
684 * keyboard.c (make_lispy_event): Remember last wheel direction.
685 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
686
b7d552d6
GM
6872009-09-26 Glenn Morris <rgm@gnu.org>
688
689 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
690 internal.elc. Add term/pc-win.elc.
691 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
692 term/x-win.elc.
693 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
694 term/w32-win.elc.
695 (NS_SUPPORT): New.
696 (lisp): Add NS_SUPPORT.
697 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
698
4ff670a8
DR
6992009-09-25 David Reitter <david.reitter@gmail.com>
700
701 * nsmenu.m (EmacsMenu-clear): Recognize application menu
702 on Mac OS X 10.6+ (bug#4513).
703
feabfb6c
JB
7042009-09-24 Juanma Barranquero <lekktu@gmail.com>
705
706 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
707 some parts of Emacs code (like font selection) don't grok them.
708 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 709
de59072a
AS
7102009-09-24 Andreas Schwab <schwab@redhat.com>
711
712 * coding.c (decode_coding_iso_2022): Fix operator precedence.
713
a489517b
JB
7142009-09-24 Juanma Barranquero <lekktu@gmail.com>
715
716 * dired.c (Fdirectory_files): Fix typo in docstring.
717
0592970c
AR
7182009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
719
720 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
721 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
722 (EmacsScroller-setPosition:portion:whole:): Remove -display call
723 under GNUstep.
724 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
725
726 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
727 glyph advancement.
728
48e8a88b
AR
7292009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
730
731 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 732 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
733
734 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
735 deleted (bug #4492).
736
e14f0a78
AR
737 * nsfont.m (Vns_reg_to_script): New lisp variable.
738 (syms_of_nsfont): Declare it.
739 (ns_registry_to_script): New function.
740 (ns_get_req_script): Call it.
741 (ns_findfonts): Don't give up on non-unicode registry.
742
743 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
744
5b650faa
SM
7452009-09-20 Tom Tromey <tromey@redhat.com>
746
747 * eval.c (find_handler_clause): Make stack-trace-on-error work in
748 batch mode (bug#4228).
749
a489517b 7502009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
751
752 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 753 carefully. (Bug #4339)
0bae4e09 754
fcfe06f3
CY
7552009-09-18 Chong Yidong <cyd@stupidchicken.com>
756
d798ba87 757 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 758
31642728
AR
7592009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
760
761 * emacs.c (inhibit_x_resources): Update doc string for NS.
762 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 763 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
764
765 * nsterm.h (ns_no_defaults): Remove.
766
767 * nsterm.m (ns_no_defaults): Remove.
768 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
769 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
770 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
771 don't update the NSWindow itself.
772 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 773 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
774
775 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
776 ns_use_qd_smoothing.
777
778 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
779 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 780 (x-close-connection): Drop PSFlush() under OS X.
a489517b 781 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 782
8686ac71
JB
7832009-09-17 Juanma Barranquero <lekktu@gmail.com>
784
785 * emacs.c (inhibit_x_resources): New variable.
786 (main) [HAVE_NS]: Don't process --quick command line option.
787 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
788
789 * lisp.h (inhibit_x_resources): Declare it extern.
790
791 * w32reg.c (x_get_string_resource):
792 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
793
e227ba05
EZ
7942009-09-17 Eli Zaretskii <eliz@gnu.org>
795
362654a6
JB
796 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
797 Add lisp/term/internal.elc.
e227ba05 798
742d40e8
SM
7992009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
800
801 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
802 (bug#4461).
803
005bd5a2
DN
8042009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
805
806 * puresize.h (BASE_PURESIZE): Increase to 1290000.
807
808 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
809 (OBJECTS_MACHINE): Remove, unused.
810
f9af9719
SM
8112009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
812
813 * frame.c (x_get_resource_string): Remove unused.
814
0307c7d2
JD
8152009-09-15 Jan Djärv <jan.h.d@swipnet.se>
816
817 * xterm.c (x_new_font): Call change_frame_size before calling
818 x_set_window_size, in case frame size won't change.
819
820 * frame.c (x_set_font): Remove dead code.
821
428b13d6
SM
8222009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
823
824 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
825
5766c380
SM
8262009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
827
828 * lread.c (Fload): Don't output a message after loading an obsolete
829 package any more (done in Lisp now).
830
2fd0161b
CY
8312009-09-12 Chong Yidong <cyd@stupidchicken.com>
832
833 * fns.c (syms_of_fns): Doc fix (Bug#4227).
834
bc5e75b6
SM
8352009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
836
837 * keymap.c (Fwhere_is_internal): Use nconc2.
838
c31c985e
AM
8392009-09-11 Alan Mackenzie <acm@muc.de>
840
841 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
842 batch mode.
843
78012bd2
AS
8442009-09-11 Andreas Schwab <schwab@linux-m68k.org>
845
846 * xdisp.c (display_mode_element): Detect cycles.
847
9d889332
SM
8482009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
849
850 * keymap.c (where_is_internal): Don't erroneously return nil right after
851 filling the cache.
852 (where_is_internal_1): Fix up typo.
853
7ab5d780
GM
8542009-09-11 Glenn Morris <rgm@gnu.org>
855
856 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
857 share a common doc-string.
858
5238a749
SM
8592009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
860
66d77eda
SM
861 * keymap.c (get_keymap): Return the actual keymap symbol rather than
862 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
863
5238a749
SM
864 * keymap.c (QCadvertised_binding): New constant.
865 (syms_of_keymap): Initialize it.
866 (Fwhere_is_internal): Try and use bindings from :advertised-binding
867 if applicable.
868
19f48442
SM
8692009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
870
50d4ba39
SM
871 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
872 (parse_menu_item): Streamline since bindings are recomputed all the
873 time anyway. Don't bother checking Vdefine_key_rebound_commands any
874 more and don't support lmenu's menu-alias any more either.
875
a88a5372
SM
876 * keymap.c (where_is_internal_data): Make noindirect a boolean.
877 (where_is_internal): Strip it down to only traverse the keymaps.
878 Move the cache handling from Fwhere_is_internal to here.
879 (Fwhere_is_internal): Move the handling of remapping and the choice of
880 the best binding from where_is_internal to here.
881 Unify the cached/noncached paths, so remapping is also handled
882 correctly when the cache is used, and so the cache can be used to
883 speed up remap-handling when applicable.
884 Give preference to non-remapped bindings.
885 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
886 non-remapped bindings.
887 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
888 command remapping.
889
19f48442
SM
890 * xdisp.c (display_mode_element): Move list length limit from 50 to
891 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
892
599498c3 8932009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
894
895 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
896
f9b7b5ac
SM
8972009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
898
a53af587
JB
899 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
900 (Bug#4334)
901
f9b7b5ac
SM
902 * keymap.c (where_is_internal): Filter out shadowed remappings.
903 Assume that where_is_internal returns unshadowed bindings to simplify
904 the code and get rid of the gotos. Use ASIZE.
905
04f4b72d
JD
9062009-09-04 Jan Djärv <jan.h.d@swipnet.se>
907
4da146f2
JD
908 * xterm.c (x_focus_changed): If we get a focusout and pointer
909 is invisible, make it visible.
910
04f4b72d
JD
911 * xterm.h: Remove condition for declaration of
912 x_*_window_to_frame.
913
7cef7ce3
SM
9142009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
915
916 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
917 initial terminal as well.
918
a54fa5b7
JD
9192009-09-02 Jan Djärv <jan.h.d@swipnet.se>
920
921 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 922 x_menubar_window_to_frame.
a54fa5b7
JD
923
924 * xterm.c: Remove declarations also in xterm.h
925 (XTmouse_position): Do not return valid positions
926 for clicks in the menubar and the toolbar for Gtk+.
927
928 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
929 if the widget for the event has the same top level as a frame,
930 return the frame.
931 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
932 internal windows, bug #4122.
933 (x_non_menubar_window_to_frame): Remove.
934
5a021dd0
GM
9352009-09-02 Glenn Morris <rgm@gnu.org>
936
937 * buffer.c (default-major-mode): Move most of the doc from here...
938 (major-mode): ... to here.
939
548fe2f3
NR
9402009-08-30 Nick Roberts <nickrob@snap.net.nz>
941
942 * process.c (wait_reading_process_output): Keep the descriptor
943 when pty is used by a non-child process, e.g., in I/O buffer of
944 GDB this allows inferior to be restarted.
945
e0840eef
EZ
9462009-08-29 Eli Zaretskii <eliz@gnu.org>
947
948 * xdisp.c (redisplay_internal): Remove redundant test and collapse
949 both branches into one.
950
82e98df4
SM
9512009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
952
953 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
954 (main): Use enable-multibyte-characters rather than
955 default-enable-multibyte-characters. Output a warning message when
956 running a unibyte session.
957
890617cb
YM
9582009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
959
960 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
961 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
962 (copy_data_segment): Also copy __program_vars section.
963 (copy_dyld_info) [LC_DYLD_INFO]: New function.
964 (dump_it) [LC_DYLD_INFO]: Use it.
965
966 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
967
e7adeadc
EZ
9682009-08-28 Eli Zaretskii <eliz@gnu.org>
969
970 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
971 $(SRC)/buildobj.h.
972 (buildobj.h): Renamed from $(SRC)/buildobj.h.
973 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
974 $(SRC)/buildobj.h.
975 (clean): Add buildobj.h.
976
3ed8bbdc
TZ
9772009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
978
979 * print.c (print_object): Set escapeflag to 1 when printing
980 hashtable keys and values.
981
155a6764
SM
9822009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
983
984 * lread.c (read_integer): Use doubles (and potentially return a float
985 number) as we do in string-to-number.
986 (read1): Use strtol to read integers, signal errors on strtol's
987 overflow and use floats if strtol's output is too large for
988 Elisp integers.
989
877610de
EZ
9902009-08-27 Eli Zaretskii <eliz@gnu.org>
991
992 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
993 (make-buildobj-SH): Fix last change.
994 (SRC): Move to before where it's first used.
995
ef73e7be
KH
9962009-08-27 Kenichi Handa <handa@m17n.org>
997
550c8289
KH
998 * process.c (send_process): Use encode_coding_object instead of
999 encode_coding_string to perform eol-conversion even if the string
1000 is unibyte.
1001
60afa08d
KH
1002 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1003 character.
1004
ef73e7be 1005 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1006 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1007
7b3a82d7
DN
10082009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1009
5654bf63
DN
1010 * callproc.c (Fcall_process): Remove always true #if.
1011
7b3a82d7
DN
1012 * lisp.h: Replace #if 0 code for checking with text pointing to
1013 the --enable-checking configure flag.
1014
1015 * emacs.c (main): Mention the --enable-profiling configure flag
1016 instead of using CFLAGS.
1017
878bde49
KR
10182009-08-26 Ken Raeburn <raeburn@raeburn.org>
1019
1020 * Makefile.in (buildobj.h): New target.
1021 (doc.o): Depend on it.
1022 (temacs${EXEEXT}): Don't generate buildobj.lst.
1023 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1024 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1025 ($(BLD)/doc.$(O)): Depend on it.
1026 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1027 provided by Eli Zaretskii.)
1028 ($(TEMACS)): Don't generate buildobj.lst.
1029 * doc.c: Include buildobj.h.
1030 (buildobj): New static variable.
1031 (Fsnarf_documentation): Use it, instead of opening and reading
1032 buildobj.lst.
1033
1574224c
MA
10342009-08-25 Michael Albinus <michael.albinus@gmx.de>
1035
1036 * dbusbind.c (Fdbus_call_method)
1037 (Fdbus_call_method_asynchronously): Use English numeric format for
1038 timeout values in doc string.
1039
d9da2f45
KH
10402009-08-25 Kenichi Handa <handa@m17n.org>
1041
ef73e7be
KH
1042 * alloc.c (mark_char_table): New function.
1043 (mark_object): Use mark_char_table for a char-table.
1044
d9da2f45
KH
1045 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1046 (CHAR_TABLE_REF): Use it.
1047
c8edcc01
KR
10482009-08-23 Ken Raeburn <raeburn@raeburn.org>
1049
1050 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1051 before invoking the newly build emacs to check for load-path
1052 shadowing.
1053
7763401b
GM
10542009-08-22 Glenn Morris <rgm@gnu.org>
1055
1056 * Makefile.in (bootstrap_exe): New variable.
1057 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1058 Use ${bootstrap_exe}.
1059
729eadda
EZ
10602009-08-22 Eli Zaretskii <eliz@gnu.org>
1061
1062 * coding.h (encode_coding_string): Don't encode unibyte strings.
1063 (Bug#4047)
1064
eb4c6ace
MA
10652009-08-22 Michael Albinus <michael.albinus@gmx.de>
1066
1067 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1068
1069 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1070 intended as hotfix only.
1071 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1072
36e34d1b
AR
10732009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1074
1075 * nsterm.m (ns_get_color): Update documentation properly for last
1076 change, and clean up loose ends in the code left by it. Fix
1077 longstanding bug with 16-bit hex parsing, and add support for
1078 yet another X11 format (rgb:r/g/b) for compatibility.
1079 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1080 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1081
f983eb8a
SM
10822009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1083
1084 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1085
3f56d3c6
MA
10862009-08-20 Michael Albinus <michael.albinus@gmx.de>
1087
1088 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1089 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1090 (xd_initialize, xd_pending_messages): Check, whether
1091 $DBUS_SESSION_BUS_ADDRESS is set.
1092
fb641d68
YM
10932009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1094
1095 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1096
1097 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1098
cf59a374
GM
10992009-08-20 Glenn Morris <rgm@gnu.org>
1100
1101 * emacs.c (system-type): Doc fix.
1102
1373f3be
SM
11032009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1104
1105 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1106 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1107
058ed861
MA
11082009-08-18 Michael Albinus <michael.albinus@gmx.de>
1109
1373f3be
SM
1110 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1111 New functions.
058ed861
MA
1112 (xd_initialize): Revert change from 2009-08-16.
1113
563a866e 11142009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1115
1116 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1117 font-group vector, return nil.
5fc05db0 1118
e42bdf01
CY
11192009-08-17 Chong Yidong <cyd@stupidchicken.com>
1120
1121 * process.c (status_notify): Don't perform redisplay.
1122 (Fdelete_process, list_processes_1, process_send_signal):
1123 Expliticly perform redisplay.
1124 (wait_reading_process_output): Always check process status, but
1125 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1126
4230ab74
KR
11272009-08-17 Ken Raeburn <raeburn@raeburn.org>
1128
1373f3be 1129 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1130 (XFLOAT_INIT): New macro for storing a float value.
1131 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1132 * fns.c (sxhash): Copy out the value of a float in order to
1133 examine its bytes.
1134 * dbusbind.c (xd_append_arg): Likewise.
1135
4230ab74
KR
1136 * emacs.c (main): Don't call syms_of_data twice.
1137
a0645cdd
MA
11382009-08-16 Michael Albinus <michael.albinus@gmx.de>
1139
1140 * dbusbind.c (xd_initialize): Add connection file descriptor to
1141 input_wait_mask, in order to let select() detect, whether a new
1142 message has been arrived.
ca4f31ea 1143 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1144
485db0ba
MA
11452009-08-15 Michael Albinus <michael.albinus@gmx.de>
1146
1373f3be
SM
1147 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1148 New functions.
485db0ba
MA
1149
1150 * lisp.h (xd_pending_messages): Declare.
1151
1152 * keyboard.c (readable_events): Call xd_pending_messages.
1153
b5b98ff4
CY
11542009-08-15 Chong Yidong <cyd@stupidchicken.com>
1155
1373f3be 1156 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1157
f8354c6e
CY
1158 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1159
b5b98ff4
CY
1160 * buffer.c (set_buffer_internal_1)
1161 (swap_out_buffer_local_variables): Check for unbound local
1162 variables (Bug#4138).
1163
8b9fc636
EZ
11642009-08-14 Eli Zaretskii <eliz@gnu.org>
1165
1166 * process.c (create_pty): Fix last change.
1167
ce959360
CY
11682009-08-13 Chong Yidong <cyd@stupidchicken.com>
1169
1170 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1171 (xbm_load_image): Caller changed.
64b807c9 1172 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1173
c7baf7e9
NR
11742009-08-13 Nick Roberts <nickrob@snap.net.nz>
1175
1176 * process.c (create_pty): New function.
1177 (Fstart_process): Use it to allow Emacs to just associate a pty
1178 with the buffer. See associated change in gdb-mi.el.
1179 (list_processes_1): Deal with no program name.
1180 (start_process_unwind): Use pid == -2 to mean no process.
1181
1ac9108a
SM
11822009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1183
1184 * cmds.c (nonundocount): New global variable.
1185 (keys_of_cmds): Initialize it.
1186 (Fself_insert_command): Use it to combine upto 20 sequential chars
1187 into a single undo entry, just like the Qself_insert_command code in
1188 keyboard.c does.
1189 Call frame_make_pointer_invisible, also like the Qself_insert_command
1190 code in keyboard.c does.
1191 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1192 than its own local replacement for it.
1193
e267324c
KR
11942009-08-10 Ken Raeburn <raeburn@raeburn.org>
1195
1ac9108a 1196 * fns.c (concat): Don't re-set string length to its current value.
77437343 1197
1ac9108a
SM
1198 * coding.h (decode_coding_string, encode_coding_string):
1199 Use SBYTES macro.
f0bed503 1200
1ac9108a 1201 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1202 (doprnt): Merge with doprnt1, discarding lispstrings code.
1203 * lisp.h (doprnt_lisp): Don't declare.
1204
416e006d
JL
12052009-08-07 Juri Linkov <juri@jurta.org>
1206
1207 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1208
6f7d5780
DN
12092009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1210
1211 * print.c (syms_of_print): Undo previous change.
1212
f19a0f5b
TZ
12132009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1214
1215 * lread.c (read1, syms_of_lread): Read hashtables back from the
1216 readable format.
1217
1218 * print.c (print_preprocess, print_object): Print hashtables fully
1219 and readably.
1220 (syms_of_print): Provide 'hashtable-print-readable.
1221
b9173dc2
AR
12222009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1223
1224 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1225 no family set.
1226 (nsfont_open): Handle case when entity has no family.
1227
1586503c
AR
12282009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1229
1230 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1231 element, not a list, for match case.
1232
087048cd
KH
12332009-07-28 Kenichi Handa <handa@m17n.org>
1234
1235 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1236 rigidly.
1237
1238 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1239 font_parse_xlfd. Check font properties more rigidly.
1240
780c2506
DN
12412009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1242
31fd7c5c
JB
1243 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1244 bsd-common.h.
780c2506 1245
a8c0cc18
KH
12462009-07-27 Kenichi Handa <handa@m17n.org>
1247
1248 * xfaces.c (face_with_height): Call font_clear_prop.
1249
4fbe2306
CY
12502009-07-26 Chong Yidong <cyd@stupidchicken.com>
1251
111d9af3
CY
1252 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1253
1254 * xterm.c (x_term_init): Use Qx.
1255
4fbe2306
CY
1256 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1257
1ac9108a 1258 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1259 (ns_get_color): Revert 2009-07-16 change.
1260
beb0b7f9
EZ
12612009-07-25 Eli Zaretskii <eliz@gnu.org>
1262
1263 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1264 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1265
2baf5e76
KR
12662009-07-25 Ken Raeburn <raeburn@raeburn.org>
1267
1ac9108a
SM
1268 * coding.h (decode_coding_string, encode_coding_string):
1269 Use SCHARS macro.
8890e5f5 1270
2baf5e76 1271 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1272 (load_depth): Delete.
2baf5e76
KR
1273 (Qload_in_progress): New variable.
1274 (load_unwind): Don't reference load_depth or load_in_progress.
1275 (Fload): Likewise; specbind Qload_in_progress instead.
1276 (init_lread): Don't initialize load_depth.
1277 (syms_of_lread): Initialize and protect Qload_in_progress.
1278
1395c6f5
AR
12792009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1280
1281 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1282
4e2f36cf
AR
12832009-07-23 Yavor Doganov <yavor@gnu.org>
1284
1285 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1286
5dd9a6f7
AR
12872009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1288
1289 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1290 Bugs 3792, 3720, 2402.
1291 (ns_lookup_indexed_color): Check for bad index.
1292 (ns_index_color): Init unused slot to 0.
1293 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1294 Bug 3714, possibly 3082.
5dd9a6f7 1295
c902b920
JR
12962009-07-22 Jason Rumney <jasonr@gnu.org>
1297
1ac9108a
SM
1298 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1299 Position IME window at cursor (Bug#2570).
c902b920
JR
1300 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1301 (globals_of_w32fns): Dynamically load functions required above.
1302
1303 * w32term.c (w32_draw_window_cursor): Send message to reposition
1304 any IME window.
1305
090101cf
CY
13062009-07-21 Chong Yidong <cyd@stupidchicken.com>
1307
1308 * fileio.c: Revert 2009-07-16 changes.
1309 (Vauto_save_include_big_deletions): New variable.
1310 (Fdo_auto_save): Disable auto-save only if
1311 auto-save-include-big-deletions is nil.
1312
e6583e3d
CY
13132009-07-21 Chong Yidong <cyd@stupidchicken.com>
1314
1315 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1316 the overflowed pixels into account (Bug#3879).
1317
ece435a5
KR
13182009-07-21 Ken Raeburn <raeburn@raeburn.org>
1319
1320 * lread.c (load_depth): New variable.
1321 (Fload, load_unwind, init_lread): Set it to the load recursion
1322 depth; set load_in_progress as a simple boolean based on the
1323 current load_depth. (Bug#3892)
1324
40b2d973
AR
13252009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1326
1327 * nsfont.m (ns_has_attribute): Remove.
1328 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1329
10be7e0d
JL
13302009-07-18 Juri Linkov <juri@jurta.org>
1331
1332 * process.c (Fset_process_query_on_exit_flag): Mention killing
1333 a buffer in docstring.
1334
fa055055
KH
13352009-07-17 Kenichi Handa <handa@m17n.org>
1336
1337 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1338
042f7b69
YM
13392009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1340
1341 * nsfns.m (Fns_set_alpha): Remove function.
1342 (syms_of_nsfns): Don't defsubr it.
1343
1344 * nsterm.m (ns_get_color): Remove incompatible color formats.
1345 (ns_color_to_lisp): Generate #rrggbb color format string.
1346
4be941e3
RS
13472009-07-16 Richard Stallman <rms@gnu.org>
1348
1349 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1350 (Fset_buffer_auto_saved): Handle save_length = -2.
1351
4e6b227d
CY
13522009-07-16 Chong Yidong <cyd@stupidchicken.com>
1353
1354 * xterm.c (Qx_gtk_map_stock): New var.
1355
1356 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1357 of calling intern each time.
1358
a1856973
YM
13592009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1360
1361 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1362 does tiling.
1363
1364 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1365
497e54d8
KH
13662009-07-14 Kenichi Handa <handa@m17n.org>
1367
72d36834
KH
1368 * font.c (font_vconcat_entity_vectors): New function.
1369 (struct font_sort_data): New member font_driver_preference.
1370 (font_compare): Check font_driver_preference.
1371 (font_sort_entities): The format of the first argument changed.
1372 (font_delete_unmatched): Likewise.
1373 (font_list_entities): The return type changed.
1374 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1375 (font_find_for_lface): Adjuste for the above changes.
1376 Don't suppress the checking of C even if the repertory supports it.
1377 (Flist_fonts): Adjust for the above changes.
72d36834 1378
1ac9108a
SM
1379 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1380 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1381 Reject a font who has adstyle property that is different from a
1382 langname derived from registry property.
1ac9108a 1383 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1384
b6046155
EZ
13852009-07-13 Eli Zaretskii <eliz@gnu.org>
1386
1387 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1388 local copy of dirfilename.
1389
fb6b6049
KH
13902009-07-13 Kenichi Handa <handa@m17n.org>
1391
e2402a5e
KH
1392 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1393 against max_char.
1394
fb6b6049
KH
1395 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1396 calling XSYMBOL (sym).
1397
65156807
EZ
13982009-07-11 Eli Zaretskii <eliz@gnu.org>
1399
1ac9108a
SM
1400 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1401 New function.
1402 (directory_files_internal) [WINDOWSNT]:
1403 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1404 the filesystem of the directory is fast or slow.
1405
1406 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1407 file name.
1408 (is_slow_fs): New function.
1409 (stat): Use it to determine whether to issue more system calls to
1410 get accurate file attributes, when w32-get-true-file-attributes is
1411 `local'.
1412
e0ab5fcf
JD
14132009-07-10 Jan Djärv <jan.h.d@swipnet.se>
1414
1415 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 1416 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
1417 parameter font-parameter as default to the font dialog.
1418
784ceded
KH
14192009-07-10 Kenichi Handa <handa@m17n.org>
1420
1421 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
1422
fb8edc0b
EZ
14232009-07-09 Eli Zaretskii <eliz@gnu.org>
1424
1ac9108a 1425 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 1426
fb8edc0b
EZ
1427 * w32.c (stat): Treat UNC file names as residing on remote
1428 drives. (Bug#3542)
1429
635c75b1
KH
14302009-07-09 Kenichi Handa <handa@m17n.org>
1431
1432 * fontset.c (fontset_find_font): Fix previous change.
1433
c1d5ce94
MA
14342009-07-08 Michael Albinus <michael.albinus@gmx.de>
1435
1436 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
1437 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
1438 error flag.
1439
edb61b39
KH
14402009-07-08 Kenichi Handa <handa@m17n.org>
1441
374bf7e4
KH
1442 * fontset.c (fontset_find_font): Fix the logic of handling
1443 charset_matched.
1444 (font_for_char): Delete unused var.
1445 (generate_ascii_font_name): Delete it.
1446
edb61b39
KH
1447 * coding.h (JIS_TO_SJIS2): Fix the code range check.
1448
1449 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
1450 (encode_coding_sjis): Fix the code range check.
1451
0f3f018c
CY
14522009-07-07 Chong Yidong <cyd@stupidchicken.com>
1453
1454 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
1455 (Fexpand_file_name): Copy string data properly (Bug#3772).
1456
fcaf6f3a
JD
14572009-07-07 Jan Djärv <jan.h.d@swipnet.se>
1458
1459 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
1460 first MapNotify.
1461
6809ca75
KH
14622009-07-07 Kenichi Handa <handa@m17n.org>
1463
1464 * character.h (unibyte_has_multibyte_table): Delete extern.
1465 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
1466
1467 * charset.c (Fset_charset_priority): Update charset_unibyte.
1468 (syms_of_charset): Initialize charset_unibyte.
1469
1470 * character.c (unibyte_has_multibyte_table): Delete it.
1471 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
1472 charset_unibyte.
1473 (multibyte_char_to_unibyte_safe): Likewise.
1474 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
1475
1ac9108a 1476 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
1477 (x_produce_glyphs): Likewise.
1478
1479 * .gdbinit (xcharset): Fix the treating $arg0.
1480
ad9e2d54
EZ
14812009-07-04 Eli Zaretskii <eliz@gnu.org>
1482
1483 Emulation of `getloadavg' on MS-Windows.
1484 * w32.c: Include float.h
1485 (g_b_init_get_native_system_info, g_b_init_get_system_times)
1486 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
1487 (get_native_system_info, get_system_times): New functions.
1488 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
1489 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
1490 (globals_of_w32): Initialize g_b_init_get_native_system_info,
1491 g_b_init_get_system_times, and num_of_processors.
1492
0a3472c7
JR
14932009-07-03 Jason Rumney <jasonr@gnu.org>
1494
1495 * w32term.c (w32_initialize): Use standard types.
1496
80904120
EZ
14972009-07-03 Eli Zaretskii <eliz@gnu.org>
1498
1499 * dired.c (Ffile_attributes): Decode user and group names by the
1500 locale's encoding. (Bug#3443)
1501
6978862d
DN
15022009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
1503
f8d23104
DN
1504 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
1505 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
1506
1507 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
1508
1509 * term.c (init_tty): Remove spurious #ifdef.
1510
6978862d
DN
1511 * m/mips.h: Mention this file is also used for netbsd.
1512 * m/pmax.h: Remove file.
1513
e044e4fc
JD
15142009-07-03 Jan Djärv <jan.h.d@swipnet.se>
1515
1516 * xterm.h (struct x_display_info): Add invisible_cursor.
1517 (struct x_output): Add current_cursor.
1518
1519 * xterm.c (XTtoggle_invisible_pointer): New function.
1520 (x_define_frame_cursor): Don't define cursor if invisible or the
1521 same as before. Set current_cursor.
1522 (x_create_terminal): Set toggle_invisible_pointer_hook.
1523
1524 * xfns.c (make_invisible_cursor): New function.
1525 (x_set_mouse_color): Call make_invisible_cursor.
1526 Set current_cursor.
1527 (x_window): Set current_cursor.
1528
1529 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
1530
1531 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
1532 inserting a character.
1533 (read_avail_input): Call frame_make_pointer_visible.
1534
1535 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
1536 (frame_make_pointer_invisible, frame_make_pointer_visible):
1537 New functions.
e044e4fc
JD
1538 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
1539
1540 * frame.h: Declare frame_make_pointer_invisible and
1541 frame_make_pointer_visible.
1542 (struct frame): Add pointer_invisible.
1543
574c8efa
JD
15442009-07-02 Jan Djärv <jan.h.d@swipnet.se>
1545
7b507248
JD
1546 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
1547 frame isn't visible.
1548 (xg_frame_resized): If width/height is -1, get size of window
1549 from X server.
1550
1551 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
1552 for MapNotify.
1553
835bdaa7 1554 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 1555 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 1556 (flush_and_sync): Reintroduce.
574c8efa 1557
3f1c6666 15582009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 1559
31fd7c5c 1560 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
1561
1562 * xterm.c (x_handle_net_wm_state): Also look for sticky.
1563 (x_term_init): Initialize Xatom_net_wm_state_sticky.
1564
1565 * frame.h: Declare Qsticky.
1566
cad9ef74
JD
1567 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
1568
1569 * nsfns.m (ns_frame_parm_handlers): Ditto.
1570
1571 * frame.c: Declare Qsticky.
1572 (frame_parms): Add sticky.
1573
1574 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
1575
1576 * xterm.h: Declare x_set_sticky.
1577
1578 * xterm.c (x_set_sticky): New function.
1579
69b16610
JD
1580 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
1581 (xg_tool_bar_menu_proxy): Attach enter/leave events to
1582 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
1583
1584 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
1585
1586 * frame.c: Qmaximized is new.
1587 (x_set_frame_parameters): Do not handle fullscreen specially.
1588 Only set width and height if explicitly set.
1589 (x_set_fullscreen): Handle Qmaximized.
1590 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
1591 (syms_of_frame): Initialize Qmaximized.
1592
1ac9108a
SM
1593 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
1594 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
1595
1596 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
1597 for Expose event. Add call to x_check_fullscreen for MapNotify event.
1598 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
1599 set gravity to NorthWestGravity when USE_GTK.
1600 (set_wm_state): New function.
31fd7c5c 1601 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
1602 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
1603 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 1604 or the case when no window manager is running. That means remove calls
3f1c6666
JD
1605 to x_real_positions and x_fullscreen_adjust.
1606
1607 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
1608 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
1609 flush_and_sync.
1610 (xg_height_changed): New function.
1611 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
1612 and gtk_window_set_policy. Set frame gravity after parsing the
1613 geometry string.
3f1c6666
JD
1614 (xg_update_frame_menubar, free_frame_menubar)
1615 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
1616 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
1617 Remove calls to xg_frame_set_char_size.
1618
fd503d99
KH
16192009-07-01 Kenichi Handa <handa@m17n.org>
1620
1621 * keyboard.c (decode_keyboard_code): New function.
1622 (tty_read_avail_input): Decode the input bytes if necessary.
1623
1ac9108a
SM
1624 * coding.c (setup_coding_system):
1625 Initialize coding->carryover_bytes to 0.
fd503d99
KH
1626 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
1627 use Qno_conversion.
1628
24ed93fb
YM
16292009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1630
1631 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
1632
99061dfc
CY
16332009-06-30 Chong Yidong <cyd@stupidchicken.com>
1634
1ac9108a 1635 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 1636
ff90fbde
JR
16372009-06-30 Jason Rumney <jasonr@gnu.org>
1638
1639 * w32term.c (w32_initialize): Use GetModuleHandle for library that
1640 is already loaded.
1641 Set user model ID if supported (bug#1849).
1642
5f445726
JM
16432009-06-29 Jim Meyering <meyering@redhat.com>
1644
1645 Remove useless if-before-xfree test.
1646 * nsfont.m (nsfont_close): Remove useless test.
1647 * term.c (delete_tty): Likewise.
1648 * w32.c (system_process_attributes): Likewise.
1649 * w32font.c (w32font_close): Likewise.
1650 * xfaces.c (x_free_gc): Likewise.
1651 * xselect.c (buffer): Likewise.
1652
b9607587
AS
16532009-06-28 Andreas Schwab <schwab@linux-m68k.org>
1654
1655 * process.c (send_process): Keep decoded string in a local
1656 variable and protect it from GC. (Bug#3521)
1657
89ba96f4
EZ
16582009-06-28 Eli Zaretskii <eliz@gnu.org>
1659
1660 * term.c (create_tty_output) [MSDOS]: #ifdef away.
1661 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
1662
098a1589
CY
16632009-06-28 Chong Yidong <cyd@stupidchicken.com>
1664
485422be
CY
1665 * xdisp.c (start_display, handle_face_prop)
1666 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
1667 (redisplay_window, try_window_id, produce_image_glyph):
1668 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 1669
098a1589
CY
1670 * xterm.c (x_update_window_begin, x_new_focus_frame)
1671 (x_scroll_bar_handle_click, handle_one_xevent)
1672 (handle_one_xevent, XTread_socket, x_focus_on_frame)
1673 (x_make_frame_visible, x_make_frame_invisible)
1674 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
1675 code chunks that are now obsolete.
1676
78c38319
MA
16772009-06-28 Michael Albinus <michael.albinus@gmx.de>
1678
1679 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
1680 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
1681 for hours, when optimzation is enabled.
1682 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
1683 (xd_read_message): Make them static.
1684
4189ed40
CY
16852009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
1686
1687 * term.c (turn_on_face): Allow simultaneously bold and dim
1688 terminal faces (Bug#3530).
1689
cd9b5e16
CY
16902009-06-27 Chong Yidong <cyd@stupidchicken.com>
1691
4e23bedb
CY
1692 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
1693
cd9b5e16
CY
1694 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
1695 truncation glyphs (Bug#3686).
1696
07cc3c35
GM
16972009-06-27 Glenn Morris <rgm@gnu.org>
1698
1699 * m/pmax.h: Restore file, with only netbsd portions.
1700
31fd7c5c 17012009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 1702
cd9b5e16 1703 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 1704
42d4a64f
KH
17052009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
1706
1707 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
1708 the arg FORCE_SYMBOL.
1709
930fe55b 17102009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
1711
1712 * fontset.c (fontset_find_font): When a usable rfont_def is found
1713 in a fallback font-group, make it the first element of the group.
1714
57ebc3fd
CY
17152009-06-24 Chong Yidong <cyd@stupidchicken.com>
1716
1717 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
1718
f084f942
KH
17192009-06-24 Kenichi Handa <handa@m17n.org>
1720
1721 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
1722 set for C.
1723 (fontset_font): Record the availability of a font for C both in
1724 the realized fontsets of the current one and the default one.
1725
2f686c87
DN
17262009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
1727
1728 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
1729 conditional, it is always defined on AIX.
1730
666e158e
MB
17312009-06-23 Miles Bader <miles@gnu.org>
1732
1733 * window.c (Vrecenter_redisplay): New variable.
1734 (syms_of_window): Initialize it.
1735 (Qtty): New extern declaration.
1736 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
1737
c6da7cd2
JM
17382009-06-23 Jim Meyering <meyering@redhat.com>
1739
1ac9108a
SM
1740 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
1741 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 1742 pointer dereferences are guaranteed to be valid.
c6da7cd2 1743
678dca3d
KH
17442009-06-23 Kenichi Handa <handa@m17n.org>
1745
74d75424
KH
1746 * emacs.c (main): Call init_font ().
1747
1748 * font.h (Vfont_log): Extern it.
1749 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
1750
1751 * font.c (font_sort_entities, font_list_entities)
1752 (font_matching_entity, font_open_entity)
1753 (font_close_object): Change font_add_log to FONT_ADD_LOG.
1754 (Vfont_log): Delete static.
1755 (font_log_env_checked): Delete this variable.
1756 (font_add_log): Don't check font_log_env_checked.
1757 (font_deferred_log): Check Vfont_log.
1758 (init_font): New function.
1759
678dca3d
KH
1760 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
1761
1762 * w32font.c: Change font_add_log to FONT_ADD_LOG.
1763
1764 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
1765
1766 * xfont.c: Change font_add_log to FONT_ADD_LOG.
1767
1768 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
1769 (face_for_char): Don't call font_deferred_log here.
1770 (font_for_char): Likewise.
1771
8a668709
CY
17722009-06-22 Chong Yidong <cyd@stupidchicken.com>
1773
9a01ee33
CY
1774 * w32term.c (x_draw_glyph_string): Use the glyph string's width
1775 rather than its background_width for drawing the overline and
1776 underline (Bug#489).
1777
1778 * xterm.c (x_draw_glyph_string): Use the glyph string's width
1779 rather than its background_width for drawing the overline and
1780 underline (Bug#489).
ec7c9926
CY
1781 (xg_default_icon_file): New variable.
1782 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
1783 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 1784
8a668709
CY
1785 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
1786 (load_overlay_strings): Remove externs.
1787 (fast_find_position): Function deleted.
1788 (mouse_face_from_buffer_pos): New function, based on
1789 fast_find_position. Correctly handle before-strings,
1790 display-strings, and after-strings (Bug#1220).
1791 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
1792
4d4c02d8
CY
17932009-06-21 Chong Yidong <cyd@stupidchicken.com>
1794
1ac9108a 1795 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
1796 (move_it_in_display_line_to, move_it_in_display_line_to)
1797 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
1798
70243478
CY
17992009-06-21 Chong Yidong <cyd@stupidchicken.com>
1800
1801 * Branch for 23.1.
1802
13087e59
JR
18032009-06-21 Jason Rumney <jasonr@gnu.org>
1804
1805 * w32term.c (keyboard_codepage): New static variable.
1806 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
1807 (w32_read_socket) [WM_CHAR]: Use it to decode character
1808 input (bug#3237).
1809 (w32_initialize): Initialize it.
1810 (codepage_for_locale): New function.
1811
4735b74e
KR
18122009-06-20 Ken Raeburn <raeburn@raeburn.org>
1813
1814 * process.c (status_message): Pass Faset index argument as a lisp
1815 object, so as to work with USE_LISP_UNION_TYPE.
1816
0e727afa
YM
18172009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1818
1819 * coding.c (Ffind_coding_systems_region_internal):
1820 Cache checked characters.
1821
cf299835
KH
18222009-06-18 Kenichi Handa <handa@m17n.org>
1823
1ac9108a 1824 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 1825
90f20d94
AS
18262009-06-18 Andreas Schwab <aschwab@redhat.com>
1827
1828 * xdisp.c (redisplay_internal): Check that the frame is still
1829 live after redisplay of its windows.
1830 (redisplay_windows): Check that the window is still live.
1831
7f1faf1c
KH
18322009-06-17 Andreas Schwab <schwab@linux-m68k.org>
1833
1834 * coding.c (detect_coding_utf_16): Fix previous change.
1835
cc13543e
KH
18362009-06-16 Kenichi Handa <handa@m17n.org>
1837
1838 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
1839 UTF-16 by checking the dispersion of Eth and Oth bytes.
1840
977b85f4
AS
18412009-06-15 Andreas Schwab <schwab@linux-m68k.org>
1842
1843 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
1844
66bd43d1
KH
18452009-06-15 Kenichi Handa <handa@m17n.org>
1846
1847 * process.c (status_message): Fix previous change. Be sure to
1848 decode a localized string.
1849
cb5ca9c5
YM
18502009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1851
1852 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
1853 add comment explaining why.
1854
ec7709ba 18552009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 1856
ec7709ba 1857 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 1858
4b7f335c
AR
18592009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
1860
1861 * nsfont.m (ns_attribute_value): Remove.
1862 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
1863 (ns_has_attribute): Shrink the normal range.
1864 (ns_findfonts): Don't worry about requested spec in determining
1865 need for synthItal.
e41820ee 1866 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 1867
73b26103
SZ
18682009-06-14 Seiji Zenitani <zenitani@mac.com>
1869
1870 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
1871
5753e4da
KH
18722009-06-11 Kenichi Handa <handa@m17n.org>
1873
1874 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1875 overhang for the static composition case.
1876
3561b671
KH
18772009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1878
5753e4da
KH
1879 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
1880 overhang for the automatic composition case.
1881
3561b671
KH
1882 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
1883 composition case.
1884
852bbd41
CY
18852009-06-10 Chong Yidong <cyd@stupidchicken.com>
1886
1887 * xdisp.c (get_next_display_element): When handling wrap-prefix
1888 and line-prefix, treat \n as a control character (bug#3502).
1889
9903d1e6
KH
18902009-06-10 Kenichi Handa <handa@m17n.org>
1891
1892 * font.c (font_parse_family_registry): Fix for one-char foundry.
1893 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
1894
0bcbaaaa
CY
18952009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
1896
1897 * process.c (status_message): Fix handling of multibyte signal
1898 string (Bug#3499).
1899
40aa3f13
JM
19002009-06-09 Jim Meyering <meyering@redhat.com>
1901
1f80c7e2
CY
1902 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
1903 color name is missing.
40aa3f13 1904
72d51285
KH
19052009-06-09 Kenichi Handa <handa@m17n.org>
1906
1907 * charset.c (Fmap_charset_chars): In docstring, state clearly that
1908 FROM-CODE and TO-CODE are codepoints of CHARSET.
1909
c1d04d84
AR
19102009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1911
1912 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
1913
19142009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
1915
1916 Changes to support :script/:lang/:otf in NS font driver.
1917 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
1918 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
1919 indicate not part of font driver interface, and change callers.
1920 (ns_get_family): Remove pointless null check.
1921 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
1922 ns_spec_to_descriptor, ns_descriptor_to_entity.
1923 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
1924 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
1925 (ns_spec_to_descriptor, ns_descriptor_to_entity)
1926 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
1927 (ns_get_req_script, ns_accumulate_script_ranges)
1928 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
1929 New functions.
1930 (nsfont_list, nsfont_match): Use ns_findfonts.
1931 (nsfont_open): Use font descriptor instead of traits.
1932 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
1933 (dump_glyphstring): Rename to ns_dump_glyphstring.
1934
c7eb9816
AR
1935 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
1936
c1d04d84
AR
1937 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
1938
1939 * fontset.c (fontset_from_font): Remove NS-specific code.
1940
ec7709ba 19412009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
1942
1943 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
1944 nonactive windows.
1945
31fd7c5c 19462009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 1947
1ac9108a 1948 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 1949
68852c13 19502009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
1951
1952 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
1953
6756cd1d
CY
19542009-06-07 Chong Yidong <cyd@stupidchicken.com>
1955
1956 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
1957 account for the overflowing of newlines into the last glyph on the
1958 display line (Bug#3482).
1959
28bf482a
DR
19602009-06-05 David Reitter <david.reitter@gmail.com>
1961
ec7709ba
JB
1962 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
1963 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
1964 Fns_selection_exists_p, Fns_selection_owner_p.
1965
fdb55376
JR
19662009-06-03 Jason Rumney <jasonr@gnu.org>
1967
1968 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
1969 available. (Bug#3379)
1970
05129fbe
KH
19712009-05-29 Kenichi Handa <handa@m17n.org>
1972
1ac9108a
SM
1973 * coding.c (get_translation_table):
1974 Check Venable_character_translation.
05129fbe 1975
ec7709ba 19762009-05-26 David Reitter <david.reitter@gmail.com>
15891144 1977
ec7709ba
JB
1978 * nsterm.m (ns_raise_frame): Only raise frame if visible.
1979 (x_make_frame_visible): Move frame to front rather than calling
15891144 1980 ns_raise_frame().
ec7709ba 1981 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 1982 isn't key window.
ec7709ba 1983 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
1984 drawRect may be called by NSView even if the frame is hidden.
1985
ec7709ba
JB
1986 * nsfns.m (Fx_create_frame): Follow other ports in
1987 determining visibility; default to t. Ensure async_visible is set.
15891144 1988
21f73755
EZ
19892009-05-23 Eli Zaretskii <eliz@gnu.org>
1990
1991 * dired.c (Ffile_attributes): Doc fix.
1992
34001e41
CY
19932009-05-22 Chong Yidong <cyd@stupidchicken.com>
1994
1995 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
1996
46306a17
SM
19972009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
1998
1999 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2000 and xfont_scratch_props.
2001 (syms_of_xfont): Do it here instead.
2002 (xfont_find_ccl_program): Delete, unused.
2003 (xfont_open): Delete unused var `i'.
2004
ef6e0694
KH
20052009-05-21 Kenichi Handa <handa@m17n.org>
2006
2007 * fontset.c (Qlatin): Don't make it static.
2008
46306a17
SM
2009 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2010 New functions.
ef6e0694
KH
2011 (xfont_scripts_cache, xfont_scratch_props): New variables.
2012 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2013 (xfont_list_pattern): Argument changed. Callers changed.
2014 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2015 (xfont_list): Don't reject a font spec with :script property.
2016 (xfont_has_char): Fix setting of encoding.
2017 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2018 xfont_scratch_props.
2019
20202009-05-19 Kenichi Handa <handa@m17n.org>
2021
46306a17 2022 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2023 Callers changed.
2024
20252009-05-18 Kenichi Handa <handa@m17n.org>
2026
2027 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2028
ac71ced7
SM
20292009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2030
2031 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2032 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2033
1c6d1051
YM
20342009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2035
2036 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2037 (x_delete_terminal): Dissociate resource database from display and
2038 then call XrmDestroyDatabase before closing display.
2039
9b9b779c
AR
20402009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2041
2042 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2043 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2044 whether selected frame is viable before raising it (based on patch
2045 by David Reitter), and improve commentary.
2046 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2047
cccd42d5
KH
20482009-05-15 Kenichi Handa <handa@m17n.org>
2049
2050 * font.c (Ffont_spec): Check arguments.
2051
337fbd17
CY
20522009-05-14 Chong Yidong <cyd@stupidchicken.com>
2053
2054 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2055 weight when testing attributes (Bug#3282).
2056
47a6002f
JD
20572009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2058
2059 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2060 what we expect to get in the next ConfigureNotify event.
2061
9cb363db
YM
2062 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2063 before Xft one (Bug#1696).
2064
b9126609
CY
20652009-05-07 David Reitter <david.reitter@gmail.com>
2066
2067 * nsfns.m (Fx_display_planes): Compute bitplanes using
2068 NSBitsPerPixelFromDepth (Bug#3207).
2069
27a69fd9
CY
20702009-05-10 Chong Yidong <cyd@stupidchicken.com>
2071
2072 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2073
00f37552
TTN
20742009-05-10 Ulrich Mueller <ulm@gentoo.org>
2075
2076 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2077
2d82a920
DR
20782009-05-07 David Reitter <david.reitter@gmail.com>
2079
ec7709ba
JB
2080 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2081 Respect mouse face background.
2d82a920 2082
46b0d52d
DR
20832009-05-07 David Reitter <david.reitter@gmail.com>
2084
ec7709ba
JB
2085 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2086 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2087 in ns_update_begin and ns_update_end.
2088
ce1b23bb
SM
20892009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2090
5996e1b7
SM
2091 * nsfns.m (ns_get_screen): Rewrite.
2092 Don't presume selected-frame is of type `ns'.
2093
ba98e3a0
SM
2094 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2095 all drivers.
2096
ce1b23bb
SM
2097 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2098
bcda200f
YM
20992009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2100
2101 * keyboard.h (add_user_signal): Fix typo in extern.
2102
2103 * lisp.h (add_user_signal): Remove extern.
2104
2105 * unexelf.c (unexec): Consider a section to precede the .bss section
2106 if its addresses overlap that of .bss.
2107 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2108 instead of dumping process.
2109
864660a2
SM
21102009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2111
2112 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2113
50da4e56
SM
21142009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2115
2116 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2117
51520a1a
DN
21182009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2119
2120 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2121 any statements.
2122
409ea3a1
AS
21232009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2124
59c4c60f
AS
2125 * process.c (read_process_output): Make sure the current buffer is
2126 always restored.
2127
409ea3a1
AS
2128 * coding.c (record_conversion_result): Don't modify
2129 Vlast_code_conversion_error for successful result.
2130 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2131
56f00ed2
KH
21322009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2133
2134 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2135 (load_charset_map): Remove unnecessary code.
56f00ed2 2136
4491c9d2
DR
21372009-04-30 David Reitter <david.reitter@gmail.com>
2138
35f5b128 2139 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2140 through f24.
2141
6970f632
CY
21422009-04-30 Chong Yidong <cyd@stupidchicken.com>
2143
2144 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2145
2146 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2147 face_at_buffer_position.
2148 (face_before_or_after_it_pos, get_next_display_element)
2149 (note_mouse_highlight): Update face_at_buffer_position call.
2150
2151 * term.c (term_mouse_highlight):
2152 * msdos.c (IT_note_mouse_highlight):
2153 * fontset.c (Finternal_char_font):
35f5b128 2154 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2155
2156 * dispextern.h (face_at_buffer_position): Update prototype.
2157
0c616f63
KH
21582009-04-30 Kenichi Handa <handa@m17n.org>
2159
35f5b128 2160 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2161
ad3aaf33
AS
21622009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2163
2164 * callproc.c (Fcall_process): Fix GC protection. Make sure
2165 current buffer is always restored.
2166
c3c963a0
YM
21672009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2168
2169 * atimer.c (init_atimer): Also clear stopped_atimers.
2170
2171 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2172
7e3386cb
YM
2173 * process.c (create_process): Clean up merger residues of
2174 2008-07-17 change.
2175
91f68422
CY
21762009-04-29 Ulrich Mueller <ulm@gentoo.org>
2177
2178 * lread.c (Vread_circle): New variable.
2179 (read1): Disable recursive read if Vread_circle is nil.
2180
24b34550
KH
21812009-04-29 Kenichi Handa <handa@m17n.org>
2182
2183 * fontset.h (set_default_ascii_font): Delete extern.
2184
2185 * fontset.c (set_default_ascii_font): Delete this unused function.
2186
2187 * frame.c (x_set_font): When ARG is a font-object, check if the
2188 font-object matches with the ASCII font-spec of the frame's
9c358bda 2189 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2190
77bf07e1
AS
21912009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2192
2193 * fns.c (Flocale_info): Protect vector from GC during decoding.
2194
2195 * process.c (Fstart_process): Protect argv strings from GC during
2196 encoding.
2197
2c55aacf
AS
21982009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2199
2200 * sysdep.c: Include <ctype.h>.
2201
b892d3c9
DR
22022009-04-27 David Reitter <david.reitter@gmail.com>
2203
35f5b128 2204 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2205 Remove commented-out code.
2206
9d0644c4
JB
22072009-04-26 Johan Bockgård <bojohan@gnu.org>
2208
2209 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2210
b7053016
JR
22112009-04-25 Jason Rumney <jasonr@gnu.org>
2212
2213 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2214
4e8231f3
YM
22152009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2216
2217 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2218 Swap bytes in short integer if fringe bitmap width > 8.
2219
493dcf2c
KH
22202009-04-23 Kenichi Handa <handa@m17n.org>
2221
2222 * xfaces.c (Fx_list_fonts): If a font size is specified in
2223 PATTERN, set it in returned scalable fonts.
2224
401e9e57
CY
22252009-04-22 Chong Yidong <cyd@stupidchicken.com>
2226
708e05dc
CY
2227 * keyboard.c (Fset_input_meta_mode): Doc fix.
2228
2229 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2230
1ac9108a 2231 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2232
2233 * coding.c (Fterminal_coding_system): Doc fix.
2234
2235 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2236 (Fx_display_pixel_height, Fx_display_planes)
2237 (Fx_display_color_cells, Fx_server_max_request_size)
2238 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2239 (Fx_display_mm_height, Fx_display_mm_width)
2240 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2241 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2242 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2243 (check_x_display_info): Handle terminal objects instead of
2244 terminal ids.
2245
401e9e57
CY
2246 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2247 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2248 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2249 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2250
df80c7f0
KH
22512009-04-21 Kenichi Handa <handa@m17n.org>
2252
5a8f12af 2253 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2254 (font_score): Check AVGWIDTH too.
908567ef 2255
df80c7f0
KH
2256 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2257 worst case.
1ac9108a
SM
2258 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2259 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2260
705af33f
JR
22612009-04-19 Jason Rumney <jasonr@gnu.org>
2262
2263 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2264 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2265
2266 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2267 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2268 get_phys_cursor_geometry.
2269
b71ac3dd 2270 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2271 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2272 using get_phys_cursor_geometry.
2273
2274 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2275 correctly calculated.
2276
dc2933eb
JD
22772009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2278
1ac9108a
SM
2279 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2280 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2281 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2282 is deprecated.
2283
973e7849
AS
22842009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2285
2286 * font.c (font_put_frame_data): Use xfree instead of free.
2287
314d66f4
JB
22882009-04-17 Juanma Barranquero <lekktu@gmail.com>
2289
2290 * w32font.c (Qja, Qko): Remove declarations.
2291 (syms_of_w32font): Don't DEFSYM them.
2292
cf702558
CY
22932009-04-17 Chong Yidong <cyd@stupidchicken.com>
2294
2295 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2296
2297 * font.h (Qja, Qko): Extern them.
2298
2299 * ftfont.c (Qja, Qko): Remove declarations.
2300
2301 * xfont.c (Qja, Qko): Remove declarations.
2302
b50504f5
KH
23032009-04-17 Kenichi Handa <handa@m17n.org>
2304
bde25748
KH
2305 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2306 string from a vector to handle Latin-1 characters correctly.
2307
b50504f5
KH
2308 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2309 entity even if the cache hits.
2310
f4646fff
AS
23112009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2312
2313 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2314 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2315
e7deaab0
AS
2316 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2317 * lisp.h: Adjust prototypes.
2318
0a0e7d49
CY
23192009-04-16 Chong Yidong <cyd@stupidchicken.com>
2320
2321 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2322 change (Bug#3003).
2323
3c908a57
KH
23242009-04-16 Kenichi Handa <handa@m17n.org>
2325
1ac9108a 2326 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2327
2328 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2329 adstyle.
2330
2331 * ftfont.c (Qja, Qko): Don't make them static.
2332 (enum ftfont_cache_for): New enum.
2333 (fc_charset_table): Undo the previous change.
2334 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2335 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2336 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2337 non-scarable font, try to get AVERAGE_WIDTH.
2338 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2339 Change ft_face_cache from a list of a hash-table. Don't check
2340 `ja' and `ko' adstyle here.
2341 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2342 FTFONT_CACHE_FOR_CHARET.
2343 (ftfont_get_charset): Undo the previous change.
1ac9108a 2344 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2345 (ftfont_close): Likewise.
2346 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2347
2348 * font.c (font_sort_entites): Change the meaning of the arg
2349 BEST-ONLY. Don't optimize for VEC of lenght 1.
2350 (font_select_entity): Just return the value of font_sort_entites.
2351
2352 * xfaces.c (merge_face_vectors): Reflect font properties in
2353 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2354 font_clear_prop if a face attribute doesn't change.
2355
3c908a57
KH
2356 * charset.h (charset_ksc5601): Extern it.
2357
2358 * charset.c (charset_ksc5601): New variable.
2359 (Fdefine_charset_internal): Set charset_ksc5601.
2360 (init_charset_once): Initialize charset_ksc5601 to -1.
2361
d65859c3
DN
23622009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2363
2364 * fileio.c (history_delete_duplicates): Remove unused declaration.
2365
2366 * callint.c (history_delete_duplicates): New declaration.
2367 (Fcall_interactively): Remove command history duplicates when
2368 history_delete_duplicates is true.
2369
3ba010e5
EZ
23702009-04-14 Eli Zaretskii <eliz@gnu.org>
2371
2372 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2373
06f19b91
KH
23742009-04-14 Kenichi Handa <handa@m17n.org>
2375
2376 * font.c (Ffont_info): Fix docstring. Fix the second element of
2377 the returned value (bug#2949).
2378
2cce8bfc
CY
23792009-04-14 Chong Yidong <cyd@stupidchicken.com>
2380
2381 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2382
d156542d
KH
23832009-04-14 Kenichi Handa <handa@m17n.org>
2384
2385 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2386 encoding charset is ascii_compatible.
2387
2388 * charset.c (Fdefine_charset_internal): Make charset
2389 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2390 code_offset is 0, and covers all ASCII characters.
2391
86fa089e
SM
23922009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2393
2394 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2395 (ns_string_to_pasteboard_internal):
2396 * nsmenu.m (process_dialog):
2397 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2398 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2399 * lisp.h (Fx_load_color_file): Declare.
2400
a8a3728b
KH
24012009-04-13 Kenichi Handa <handa@m17n.org>
2402
1ac9108a 2403 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2404 (font_select_entity): Suppress the code to optimize for the same
2405 kind of fonts.
2406 (font_load_for_lface): Get a font that supports at least ASCII
2407 characters.
2408
2409 * ftfont.c (Qja, Qko): New variables.
2410 (fc_charset_table): Delete uniquifier data for iso8859-1.
2411 (ftfont_get_latin1_charset): New function.
2412 (get_adstyle_property): New function.
2413 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
2414 bitmap fonts.
2415 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
2416 Delete iso-8859-1 range from the charset of fonts whose adstyle is
2417 `ko' or `ja'.
2418 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 2419 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
2420 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
2421 property.
2422 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
2423 (syms_of_ftfont): DEFSYM Qja and Qko.
2424
483670b5
KH
24252009-04-09 Kenichi Handa <handa@m17n.org>
2426
12b55765
KH
2427 * charset.c (map_charset_chars): For a charset of `superset'
2428 method, fix calculation of code range.
2429
483670b5
KH
2430 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
2431 from the list of extra properties.
2432 (font_clear_prop): Be sure to delete `:name' font property.
2433
57d3b93b
KH
24342009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2435
b4b2c2ca
YM
2436 * dispnew.c (redraw_overlapping_rows): Fix detection of
2437 overlapping for topmost and bottommost rows.
2438
1ac9108a 2439 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 2440
472c3609
JR
24412009-04-06 Jason Rumney <jasonr@gnu.org>
2442
2443 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
2444
ab193662
KH
24452009-04-06 Kenichi Handa <handa@m17n.org>
2446
2447 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
2448
2449 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
2450
0c26f026
KH
24512009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2452
2453 * ftfont.c (ftfont_open): Fix checking of the return value of
2454 FT_Load_Char. Fix setting font->underline_thickness.
2455
e173bbce
CY
24562009-04-04 Chong Yidong <cyd@stupidchicken.com>
2457
2458 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
2459 (Fterminal_parameters, Fterminal_parameter)
2460 (Fset_terminal_parameter): In doc string, refer to terminal
2461 objects rather than terminal ids.
2462
693a2698
EZ
24632009-04-04 Eli Zaretskii <eliz@gnu.org>
2464
2465 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
2466 ret_lim_data. (Bug#2867)
2467
d5221487
CY
24682009-04-03 Chong Yidong <cyd@stupidchicken.com>
2469
2470 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
2471 so they don't get wider than the window, matching 2006-01-23
2472 change to the partner function in xdisp.c (Bug#2800).
2473
223509a3
KH
24742009-04-03 Kenichi Handa <handa@m17n.org>
2475
2476 * print.c (print_object): Make each lowest sub_char_table start a
2477 new line (Bug#2866).
2478
74fcd0b1
KH
24792009-04-02 Kenichi Handa <handa@m17n.org>
2480
2481 * fontset.c (fontset_font): Record no-font when a fontset
2482 explicitly tells not to try another font-specs.
2483
c542407d
SM
24842009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
2485
2486 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
2487
e3869731
KH
24882009-03-30 Kenichi Handa <handa@m17n.org>
2489
d8d2f142
KH
2490 * fontset.c (fontset_from_font): Specify only registry in a
2491 font-spec for all characters supported by that registry.
2492
e3869731
KH
2493 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
2494 even if HAVE_M17N_FLT is not defined.
2495
5da5f805
CY
24962009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
2497
2498 * ftfont.c: Conditionalize prototyping and use of
2499 ftfont_variation_glyphs.
2500
ab226c50
SM
25012009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2502
9628fed7
SM
2503 * frame.c (delete_frame): Work around compiler bug.
2504
2505 * editfns.c (general_insert_function): Adjust to insdel.c changes.
2506 * insdel.c (prepare_to_modify_buffer, signal_before_change):
2507 Some more EMACS_INT.
2508 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
2509
2510 * xdisp.c (dump_glyph): Fix typo.
2511
ae19ba7c
SM
2512 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
2513 (adjust_markers_gap_motion, adjust_markers_for_delete)
2514 (adjust_markers_for_insert, adjust_point)
2515 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
2516 (make_gap, copy_text, count_size_as_multibyte, insert)
2517 (insert_and_inherit, insert_before_markers)
2518 (insert_before_markers_and_inherit, insert_1)
2519 (count_combining_before, count_combining_after, insert_1_both)
2520 (insert_from_string, insert_from_string_before_markers)
2521 (insert_from_string_1, insert_from_gap, insert_from_buffer)
2522 (insert_from_buffer_1, adjust_after_replace)
2523 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
2524 (replace_range_2, del_range, del_range_1, del_range_byte)
2525 (del_range_both, del_range_2, modify_region)
2526 (prepare_to_modify_buffer, signal_before_change)
2527 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
2528 for buffer positions and sizes.
2529 * lisp.h: Adjust prototypes accordingly.
2530
2531 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
2532 (non_regular_inserted, non_regular_nbytes, read_non_regular)
2533 (Finsert_file_contents): Use EMACS_INT for buffer positions.
2534
ab226c50
SM
2535 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
2536
46dfb8fb
JD
25372009-03-27 Jan Djärv <jan.h.d@swipnet.se>
2538
2539 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
2540 lines and columns so we keep the same pixel height and width.
2541
2542 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
2543 the property _NET_WM_STATE has changed.
46dfb8fb
JD
2544 (x_handle_net_wm_state): New function to update frame parameter
2545 fullscreen.
2546 (x_term_init): Initialize atoms for _NET_WM_STATE.
2547
2548 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
2549
d347e494
SM
25502009-03-27 Kevin Ryde <user42@zip.com.au>
2551
2552 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
2553 Gpm_GetEvent as an error that justifies closing the filedescriptor.
2554 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
2555 (Fgpm_mouse_stop): Pass that new parameter.
2556 * termhooks.h (close_gpm): Adjust prototype.
2557
84db11d6
SM
25582009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
2559
c95a5008
SM
2560 * lisp.h (Fx_focus_frame): Declare.
2561
84db11d6
SM
2562 * callint.c (Fcall_interactively): For '^' just delegate the work to
2563 handle-shift-selection.
2564 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
2565
0a1958d6
CY
25662009-03-24 Chong Yidong <cyd@stupidchicken.com>
2567
0bfdff23
CY
2568 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
2569
0a1958d6
CY
2570 * data.c (Qinteractive_form): New variable.
2571 (Finteractive_form): Use it.
2572
2573 * eval.c (Fcommandp): Use Qinteractive_form.
2574
58aec0d6
JR
25752009-03-24 Jason Rumney <jasonr@gnu.org>
2576
2577 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
2578 Calculate total size precisely. Decode environment variables
2579 before substituting. (Bug#38)
2580
553dd618
KH
25812009-03-24 Kenichi Handa <handa@m17n.org>
2582
2583 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 2584 encoding (Bug#2722).
553dd618 2585
c39ea606
JD
25862009-03-23 Jan Djärv <jan.h.d@swipnet.se>
2587
2588 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
2589 that gdpy is set.
2590
bc9b2b5e
AM
25912009-03-22 Alan Mackenzie <acm@muc.de>
2592
2593 * callint.c (Finteractive): Clarify the doc string - even
2594 promptless elements need \n separators.
2595
9f995a76
JR
25962009-03-22 Jason Rumney <jasonr@gnu.org>
2597
2598 * w32term.c (syms_of_w32term): Doc fix for
2599 x-use-underline-position-properties.
2600
22749e9a
EZ
26012009-03-21 Eli Zaretskii <eliz@gnu.org>
2602
2603 * w32.c (getpwuid): Change argument type to unsigned.
2604 (struct w32_id): Change type of `rid' member to unsigned.
2605 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
2606 argument ID to unsigned. All callers changed.
2607 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
2608
e00553bf
EZ
26092009-03-20 Eli Zaretskii <eliz@gnu.org>
2610
2611 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
2612 negative, produce a float value.
2613
2614 * dired.c (make_uid, make_gid): New functions.
2615 (Ffile_attributes): Use them to avoid negative UID and GID.
2616
f761d6b6
JB
26172009-03-20 Juanma Barranquero <lekktu@gmail.com>
2618
2619 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
2620 (syms_of_keyboard) <command-hook-internal, input-method-function>:
2621 Fix typos in docstrings.
2622
d507f8d7
KH
26232009-03-19 Kenichi Handa <handa@m17n.org>
2624
2625 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
2626 changed, use font_load_for_lface to get a new font object.
2627 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
2628
2629 * frame.c (x_set_font): Handle the case that ARG is a cons.
2630
c68845e0
GM
26312009-03-19 Glenn Morris <rgm@gnu.org>
2632
2633 * fileio.c (Fsubstitute_in_file_name): Doc fix.
2634
bfa49dd1
CY
26352009-03-19 Chong Yidong <cyd@stupidchicken.com>
2636
2637 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
2638
8458d4c1
KH
26392009-03-19 Kenichi Handa <handa@m17n.org>
2640
2641 * charset.c (load_charset_map_from_file): When a mapfile can't be
2642 loaded, signal an error.
2643
78e7d1fe
EZ
26442009-03-18 Eli Zaretskii <eliz@gnu.org>
2645
2646 * dired.c (Ffile_attributes): Make sure UID and GID are always
2647 positive, even if the value is too large for a positive EMACS_INT.
2648 Doc fix.
2649
2650 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
2651
5da9fdfa
YM
26522009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2653
2654 * xmenu.c (xdialog_show): Move Fredisplay call ...
2655 (Fx_popup_dialog): ... here.
2656
7519c40d
SM
26572009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
2658
2659 * dired.c (file_name_completion): Disable the first optimization just
2660 installed, since it is not implemented correctly.
2661
2cd298e2
SM
26622009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2663
2664 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 2665 only if the entry can affect bestmatch.
2cd298e2
SM
2666 Stop the search early, as Ftry_completion already does.
2667
48d37adf
CY
26682009-03-17 Chong Yidong <cyd@stupidchicken.com>
2669
e10c9c93 2670 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 2671
9286b16a
CY
26722009-03-15 Chong Yidong <cyd@stupidchicken.com>
2673
2674 * keyboard.c (parse_menu_item): Don't display remappings as menu
2675 equivalent bindings (Bug#788).
2676
f7b146dc
JR
26772009-03-15 Jason Rumney <jasonr@gnu.org>
2678
2679 * w32term.h (WM_EMACS_PAINT): New message.
2680 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
2681 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
2682 before passing to lisp thread. (Bug#950)
2683
f761d6b6 26842009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 2685
d93f9575
CY
2686 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
2687 variable as it was never reset.
2688 (ns_term_init): Remove initialization of Lisp-settable defaults
2689 and ns_expand_space.
2690 (-setPanelFromDefaultValues): Remove ns_expand_space.
2691 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
2692 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
2693 i.e. no additional spacing, similar to Carbon port.
2694
d93f9575
CY
2695 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
2696 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 2697
305018ec
JD
26982009-03-14 Jan Djärv <jan.h.d@swipnet.se>
2699
2700 * sound.c (alsa_configure): Remove call to deprecated
2701 snd_pcm_sw_params_set_xfer_align.
2702
f761d6b6 27032009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
2704
2705 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
2706 after clicking in a detached tool bar.
2707 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
2708
46e722a9
SM
27092009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
2710
348db3dd
SM
2711 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
2712 int/Lisp_Object mixup).
46e722a9 2713
a3d16f39
KH
27142009-03-13 Kenichi Handa <handa@m17n.org>
2715
2716 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 2717 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
2718 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
2719 (set_fontset_font): Change ARG to a vector. Handle range_list in
2720 ARG correctly.
2721 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 2722 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
2723 the above change.
2724 (fontset_from_font): Fix previous change.
fe24f56a 2725 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
2726 entry. If FONTSET is the default fontset, don't set the extra
2727 slot of the returning char-table.
2728
b066e6b6
JB
27292009-03-12 Juanma Barranquero <lekktu@gmail.com>
2730
2731 * nsfns.m (Fx_close_connection): Doc fix.
2732 (Fns_do_applescript): Reflow docstring.
2733 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
2734 (Fx_display_pixel_width, Fx_display_pixel_height)
2735 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
2736 Fix typos in docstrings.
2737 (Fns_set_alpha): Fix typos in error messages.
2738
d472514e 27392009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 2740
d472514e 2741 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
2742 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
2743 were used for such events.
2744
d472514e
JB
2745 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
2746 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 2747
d472514e 2748 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
2749 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
2750
fb930676
KH
27512009-03-11 Kenichi Handa <handa@m17n.org>
2752
ff85581a
KH
2753 * font.h (font_open_by_spec): Extern it.
2754
c50b7e98
KH
2755 * font.c (font_open_by_spec): New function.
2756 (font_open_by_name): Use font_open_by_spec.
2757
fb930676
KH
2758 * frame.c (x_set_font): When ARG is a font-object, don't alter the
2759 fontset of the frame.
2760
2761 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
2762 modify the default font of frames that use this fontset.
2763 (num_auto_fontsets): New variable.
2764 (fontset_from_font): Use num_auto_fontsets to decide a fontset
2765 name. Be sure to set FONTSET_ASCII to the correct font name.
2766 (update_auto_fontset_alist): New function.
2767
df4e8455
JB
27682009-03-11 Juanma Barranquero <lekktu@gmail.com>
2769
2770 * makefile.w32-in: Update dependencies.
2771
0a375797
AR
27722009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2773
2774 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
2775
61313fa3
SM
27762009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2777
2778 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
2779
b55103fb
CY
27802009-03-10 Chong Yidong <cyd@stupidchicken.com>
2781
2782 * lread.c (Feval_buffer): Doc fix.
2783
dde2559c
KH
27842009-03-09 Kenichi Handa <handa@m17n.org>
2785
2786 * charset.c (Qfile_name_handler_alist): Extern it.
2787 (load_charset_map_from_file): Temporarily bind
2788 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
2789
df4e8455 27902009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 2791
47f588bb
GM
2792 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
2793 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 2794
4ddf94bd
AR
27952009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2796
4c9bdfc2
AR
2797 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
2798 (x_set_window_size): Change back to calculated method of setting
2799 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
2800 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
2801 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
2802
fe41ae9e
AR
2803 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
2804
4c9bdfc2
AR
2805 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
2806 accelerator in parens under GNUstep.
2807
825d0875
KH
28082009-03-06 Kenichi Handa <handa@m17n.org>
2809
2810 These changes are to detect incorrect composition sequence without
f3b3be74 2811 looking ahead the source. (Bug#2370)
825d0875
KH
2812
2813 * coding.h: Include "composite.h".
2814 (enum compisition_state): New enum.
2815 (struct compisition_status): New struct.
2816 (struct iso_2022_spec): New member cmp_status.
2817 (struct emacs_mule_spec): New struct.
2818 (struct coding_system): New members ctext_extended_segment_len and
2819 embedded_utf_8. Change the union member
2820 spec.emacs_mule_full_support to spec.emacs_mule.
2821
2822 * coding.c (CODING_ISO_CMP_STATUS): New macro.
2823 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 2824 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
2825 (ADD_COMPOSITION_DATA): New arg nbytes.
2826 (emacs_mule_char): New arg cmp_status.
2827 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
2828 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
2829 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
2830 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
2831 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
2832 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
2833 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
2834 (EMACS_MULE_COMPOSITION_END): New macro.
2835 (emacs_mule_finish_composition): New function.
2836 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
2837 (decode_coding_emacs_mule): Avoid long looking ahead while
2838 handling composition.
2839 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
2840 (ENCODE_COMPOSITION_RULE): New macro.
2841 (finish_composition): New function.
2842 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
2843 (DECODE_COMPOSITION_START): New implementation.
2844 (DECODE_COMPOSITION_END): Likewise.
2845 (STORE_COMPOSITION_RULE): New macro.
2846 (decode_coding_iso_2022): Avoid long looking ahead while handling
2847 composition, CTEXT extended segment, and embedded UTF-8.
2848 (setup_coding_system): For a coding of type iso-2022, reset
2849 CODING_ISO_EXTSEGMENT_LEN (coding) and
2850 CODING_ISO_EMBEDDED_UTF_8 (coding).
2851 (get_translation): Delete arguments last_block, from_nchars,
2852 to_nchars. Callers changed.
2853 (produce_chars): Don't modify charbuf. Adjusted for the change of
2854 get_translation.
98a326f7 2855 (produce_composition): Adjust for the new annotation sequence.
825d0875 2856 (handle_composition_annotation): Likewise.
98a326f7 2857 (consume_chars): Adjust for the change of get_translation.
825d0875 2858
ccbc4452
AR
28592009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
2860
4ddf94bd 2861 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 2862
988a7ddb
KH
28632009-03-05 Kenichi Handa <handa@m17n.org>
2864
2865 * font.c (font_select_entity): New function.
2866 (font_find_for_lface): Use font_select_entity to select a font.
2867
2868 * fontset.c (fontset_find_font): If a font found without
a8a3728b 2869 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
2870 font with C restriction.
2871
98a326f7 28722009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 2873
be1bce46 2874 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 2875
10ea2b82
JR
28762009-03-04 Jason Rumney <jasonr@gnu.org>
2877
2c93b248 2878 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 2879 characters that have already been read. (Bug#2569)
2c93b248 2880
10ea2b82
JR
2881 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
2882 Log an error message if check_image_size failed.
2883 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 2884 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 2885
71a0c011
EZ
28862009-03-02 Eli Zaretskii <eliz@gnu.org>
2887
2888 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
2889 when decoding process output.
2890
2f63bba8
RS
28912009-03-01 Richard M Stallman <rms@gnu.org>
2892
2893 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
2894
2895 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
2896
0a9564cb
EZ
28972009-02-28 Eli Zaretskii <eliz@gnu.org>
2898
2899 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
2900 (decode_coding_emacs_mule, decode_coding_iso_2022)
2901 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2902 (decode_coding_raw_text, decode_coding_charset)
2903 (setup_coding_system, decode_eol, decode_coding, consume_chars):
2904 Honor inhibit-eol-conversion. (Bug #2186)
2905
449148b3
JR
29062009-02-28 Jason Rumney <jasonr@gnu.org>
2907
2908 * coding.c (detect_coding_charset): If not checking latin extra,
2909 fail on characters between 0x80 and 0xA0. (Bug#2354)
2910
a4aee864
EZ
29112009-02-28 Eli Zaretskii <eliz@gnu.org>
2912
2913 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 2914 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 2915
d88bee5a
GM
29162009-02-27 Glenn Morris <rgm@gnu.org>
2917
2918 * callint.c (Finteractive): Doc fix.
2919
a808f22d
KH
29202009-02-27 Kenichi Handa <handa@m17n.org>
2921
2922 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
2923
caf8d60c
CY
29242009-02-27 Chong Yidong <cyd@stupidchicken.com>
2925
2926 * font.c (font_style_to_value): Set value for unknown symbols to
2927 100 instead of 255.
b61137ea
CY
2928 (weight_table, slant_table, width_table): Treat "unspecified" as
2929 the default value.
caf8d60c 2930
1a0de25c
JB
29312009-02-26 Juanma Barranquero <lekktu@gmail.com>
2932
2933 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
2934
8fc45744
JB
29352009-02-25 Juanma Barranquero <lekktu@gmail.com>
2936
107bd7d1
JB
2937 * lread.c (Fload): Stop checking Vloads_in_progress and signal
2938 error as soon as a recursive load is detected.
8fc45744 2939
f097e223
AR
29402009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2941
2942 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
2943 before caching.
2944
8810a12f
KH
29452009-02-24 Kenichi Handa <handa@m17n.org>
2946
2947 * fontset.c (fontset_find_font): Fix the condition for checking
2948 unavailable font.
2949
2c7d1565
GM
29502009-02-24 Glenn Morris <rgm@gnu.org>
2951
2952 * xfaces.c (Finternal_set_font_selection_order): Remove leading
2953 whitespace that confuses documentation.
2954
a20878b6
MB
29552009-02-23 Miles Bader <miles@gnu.org>
2956
2957 * process.c (Flist_system_processes, Fprocess_attributes)
2958 (syms_of_process): Rename `system-process-attributes' to
2959 `process-attributes'.
2960
b3b58c01
AS
29612009-02-22 Andreas Schwab <schwab@linux-m68k.org>
2962
1b3b981b
AS
2963 * coding.h (struct coding_system): Make safe_charsets a pointer to
2964 unsigned char.
2965 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
2966 being 255.
2967 (SAFE_CHARSET_P): Likewise.
2968 (setup_iso_safe_charsets): Properly setup safe_charsets.
2969 (Fdefine_coding_system_internal): Likewise.
2970 (setup_coding_system): Likewise. Remove unneeded casts.
2971 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
2972 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
2973 unneeded casts.
2974
b3b58c01
AS
2975 * insdel.c (del_range_2): Don't modify gap contents when called
2976 from decode_coding_object. (Bug#1809)
2977
0b6f228c
CY
29782009-02-21 Chong Yidong <cyd@stupidchicken.com>
2979
2980 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
2981 Qfont_object.
2982 (Ftype_of): Recognize font objects.
2983
2984 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
2985
2986 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
2987 moved to data.c.
2988
52f8870b
AR
29892009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2990
2991 * nsterm.m (x_make_frame_invisible): Unset async_visible,
2992 async_iconified. Based on a patch by Christian Lynbech
2993 <christian.lynbech@tieto.com>.
2994 (EmacsView-windowDidMiniaturize:): Unset async_visible.
2995
7087d5e9
GM
29962009-02-20 Glenn Morris <rgm@gnu.org>
2997
2998 * syntax.c (Fskip_chars_forward): Fix doc typo.
2999
41d2ceef
CY
30002009-02-20 Chong Yidong <cyd@stupidchicken.com>
3001
3002 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3003
1a3b7ca6
CY
30042009-02-19 Chong Yidong <cyd@stupidchicken.com>
3005
3006 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3007
73cce38d
KH
30082009-02-19 Kenichi Handa <handa@m17n.org>
3009
3010 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3011 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3012
a51092ee
DN
30132009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3014
3015 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3016
c423ecca
KH
30172009-02-18 Kenichi Handa <handa@m17n.org>
3018
3019 * font.c (font_check_otf_features): Fix handling of `nil' element.
3020 (Ffont_spec): Describe :lang and :otf in the docstring.
3021
4c1958f4
AS
30222009-02-16 Andreas Schwab <schwab@suse.de>
3023
3024 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3025 string.
3026
5704f39a
KH
30272009-02-16 Kenichi Handa <handa@m17n.org>
3028
3029 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3030 (Bug#1723)
5704f39a 3031
8f0085aa
CY
30322009-02-14 Chong Yidong <cyd@stupidchicken.com>
3033
a057d86a 3034 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3035
3036 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3037 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3038
aff01dd9
EZ
30392009-02-14 Eli Zaretskii <eliz@gnu.org>
3040
3041 * msdos.c (MAX_SCREEN_BUF): New macro.
3042 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3043 Encode the entire run of glyphs sharing the same face, instead of
3044 doing that one glyph at a time (fixes a bug with displaying
3045 double-size characters).
3046
ba301db3
AR
30472009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3048
3049 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3050
3051 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3052 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3053 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3054
3055 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3056 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3057
51d861de
SM
30582009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3059
3060 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3061 invisible areas.
3062
7fed8996
JR
30632009-02-12 Jason Rumney <jasonr@gnu.org>
3064
631ea4fb
JR
3065 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3066 (add_font_entity_to_list): Call check_face_name even when family
3067 is unspecified.
3068
cb4a3e42
JR
3069 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3070 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3071 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3072
7fed8996 3073 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3074 raster fonts. (Bug#2219)
7fed8996 3075
895416e3
KH
30762009-02-12 Kenichi Handa <handa@m17n.org>
3077
3078 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3079 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3080 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3081 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3082 (find_automatic_composition): While looking forward and backward,
3083 check static composition. Fix where to stop looking forward.
3084 (composition_adjust_point): Fix checking of static composition.
3085 (Fcomposition_get_gstring): Pay attention to
1dacf998 3086 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3087
3088 * lisp.h (fast_looking_at): Extern it.
3089
3090 * search.c (fast_looking_at): New function.
3091
51d861de 3092 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3093 <struct glyph>.u.cmp.to.
3094 (append_composite_glyph): Likewise.
3095
51d861de 3096 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3097 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3098 composition.
51d861de 3099 (append_composite_glyph): Adjust for the change of
895416e3
KH
3100 <strcut glyph>.u.cmp.to.
3101
8510724d
JB
31022009-02-11 Juanma Barranquero <lekktu@gmail.com>
3103
3104 * casetab.c (init_casetab_once):
3105 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3106 * font.c (font_update_lface):
3107 * fontset.c (Fnew_fontset):
3108 * ftfont.c (ftfont_drive_otf):
3109 * xfont.c (xfont_open):
3110 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3111
294fa707
SM
31122009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3113
3114 * fileio.c (Fwrite_region): !NILP -> CONSP.
3115
b5bfebec
AS
31162009-02-10 Andreas Schwab <schwab@suse.de>
3117
3118 * process.c (send_process): Properly relocate pointer into data
adab88bd 3119 when using encoded data. (Bug#2272)
b5bfebec 3120
cb84a2be
KH
31212009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3122
3123 * coding.c (detect_coding_charset): Fix previous change.
3124
89e09428
JR
31252009-02-08 Jason Rumney <jasonr@gnu.org>
3126
3127 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3128 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3129
4470a277
AS
31302009-02-07 Andreas Schwab <schwab@suse.de>
3131
3132 * unexelf.c (unexec): Fix error message.
3133
3175b12a
AR
31342009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3135
3136 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3137 when modal window is active. (Bug #2152)
3175b12a
AR
3138 (applicationShouldTerminate:): Remove now-unneeded while loop
3139 around NSRunAlertPanel.
3140
3141 * nsmenu.m (popupSession): New file-global variable.
3142 (pop_down_menu): End the popupSession before closing dialog.
3143 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3144 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3145 don't query NSApp for events (just sleep instead).
3146
8434d0b8
EZ
31472009-02-07 Eli Zaretskii <eliz@gnu.org>
3148
51d861de
SM
3149 * coding.c (syms_of_coding) <translation-table-for-input>:
3150 Modify doc string to discourage use for character code unification.
8434d0b8 3151
aa82edfd
CY
31522009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3153
3154 * atimer.c (run_timers): Update pending_atimers.
3155
2d283c7c
CY
31562009-02-06 Chong Yidong <cyd@stupidchicken.com>
3157
eb306cab
CY
3158 * image.c (svg_load_image): Fix last change.
3159
2d283c7c
CY
3160 * xfns.c (Fx_create_frame): Signal an error if no font is
3161 found (Bug#2147).
3162
4d8e170e
JB
31632009-02-05 Juanma Barranquero <lekktu@gmail.com>
3164
3165 * character.c (syms_of_character) <script-representative-chars>:
3166 Fix typo in docstring.
3167
c96169a0
AR
31682009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3169
3170 * nsmenu.m (pop_down_menu): New function.
3171 (ns_popup_dialog): Call it on unwind.
3172 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3173 call timer_check() (Bug#2154).
3174 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3175 handling_signal is set.
3176 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3177
31fd7c5c 3178 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3179
3180 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3181
3182 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3183
51d861de
SM
3184 * keyboard.c (poll_for_input_1, handle_async_input):
3185 Set handling_signal under HAVE_NS.
c96169a0 3186
aacd8ba1
GM
31872009-02-04 Glenn Morris <rgm@gnu.org>
3188
3189 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3190
4cb75c4b
KH
31912009-02-04 Kenichi Handa <handa@m17n.org>
3192
3193 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3194
3195 * charset.c (Fchar_charset): New optional arg restriction.
3196
3197 * coding.h (coding_system_charset_list): Extern it.
3198
3199 * coding.c (coding_system_charset_list): New function.
3200
3201 * composite.c: Include coding.h and termhooks.h.
3202 (composition_gstring_p): Fix for the terminal case.
3203 (composition_gstring_width): Likewise.
3204 (fill_gstring_body): Likewise.
3205 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3206 the frame.
3207 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3208 is within a composition.
867d4bb3 3209 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3210
3211 * term.c (encode_terminal_code): Fix handling of composition.
3212 (produce_composite_glyph): For static composition, get pixel_width
3213 from struct composition.
3214
826ba17e
AS
32152009-02-02 Andreas Schwab <schwab@suse.de>
3216
3217 * unexelf.c (unexec): Handle unaligned bss offset.
3218
8ad093db
AR
32192009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3220
3221 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3222 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3223
8ad093db
AR
3224 * keyboard.c (handle_interrupt): Don't call
3225 quit_throw_to_read_char() under NS.
d0a76a6e 3226
8ad093db
AR
3227 * blockinput.h: Remove NS-specific code.
3228
4d18a7a2
DN
32292009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3230
db878925
DN
3231 * dispnew.c (window_change_signal): Don't try to get the size of a
3232 suspended tty frame.
3233 * term.c (Fresume_tty): Resize if the size has changed while the
3234 tty was suspended.
3235
4d18a7a2
DN
3236 * alloc.c (mark_stack): Properly conditionalize previous change.
3237
8984df7c
JB
32382009-01-30 Juanma Barranquero <lekktu@gmail.com>
3239
3240 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3241 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3242 Remove; this code is not used on Windows.
3243
75f4f1ac
EZ
32442009-01-30 Eli Zaretskii <eliz@gnu.org>
3245
3246 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3247 EOLs that also has stray ^M characters.
3248
07a1e794
JB
32492009-01-30 Juanma Barranquero <lekktu@gmail.com>
3250
3251 * atimer.c (run_timers, alarm_signal_handler):
3252 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3253 * w32inevt.c (w32_console_read_socket):
3254 * w32term.c (w32_read_socket):
3255 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3256
a8b11cc9
CY
32572009-01-30 Chong Yidong <cyd@stupidchicken.com>
3258
3259 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3260 Initialize it as a relative filename pattern.
3261 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3262 (Fcall_process_region): Simplify temp file creation using
3263 temporary-file-directory.
3264
c279587b
EZ
32652009-01-29 Eli Zaretskii <eliz@gnu.org>
3266
3267 * msdos.c: Rename pending_signals to msdos_pending_signals.
3268 (sig_suspender, sigprocmask): Adjust.
3269
a8fe3242
CY
32702009-01-29 Chong Yidong <cyd@stupidchicken.com>
3271
3272 * keyboard.c (pending_signals): New var.
3273 (poll_for_input, input_available_signal, init_keyboard): Set it.
3274 (process_pending_signals): New function.
3275
3276 * lisp.h (QUIT): Check pending_signals instead of
3277 interrupt_input_pending. Use process_pending_signals.
3278
51d861de 3279 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3280
51d861de 3281 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3282
3283 * sysdep.c (emacs_write): Use process_pending_signals.
3284
3285 * xterm.c (XTread_socket): Update pending_signals.
3286
3287 * w32term.c (w32_read_socket): Update pending_signals.
3288
3289 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3290
6570a1c4
KH
32912009-01-29 Kenichi Handa <handa@m17n.org>
3292
3293 * xftfont.c (xftfont_has_char): New function.
3294 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3295
d72a4afa
AR
32962009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3297
3298 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3299 under GNUstep.
3300 (ns_query_color): New declaration.
3301
3302 * nsterm.m (ns_confirm_quit): New variable.
3303 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3304 (EmacsApp-applicationShouldTerminate:): Use it.
3305 (EmacsPrefsController): Let user set it.
3306 (ns_query_color): New function.
3307 (ns_defined_color): Use it.
3308 (ns_initialize): Drop.
3309 (ns_term_init): Add two lines from ns_initialize(), and set
3310 input_interrupt_mode to nil.
3311
3312 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3313 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3314
9fe78804
KH
33152009-01-28 Kenichi Handa <handa@m17n.org>
3316
3317 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3318 (fontset_get_font_group): Remember that no font-group is specified
3319 for C.
9fe78804 3320
fa57de36
CY
33212009-01-27 Chong Yidong <cyd@stupidchicken.com>
3322
930600e9
CY
3323 * fns.c (concat): Check for string overflow (bug#1787).
3324
fa57de36
CY
3325 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3326 Quadruple undo limits (bug#1501).
3327
7179ce7b
KH
33282009-01-27 Kenichi Handa <handa@m17n.org>
3329
3330 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3331 directly use GT_Get_Char_index.
3332
3333 * xftfont.c (struct xftfont_info): New member `index'.
3334
3335 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3336 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3337
5be8fcc0
CY
33382009-01-26 Kenichi Handa <handa@m17n.org>
3339
3340 * fontset.c (fontset_find_font): Fix handling of non-cons return
3341 value of fontset_get_font_group.
3342 (fontset_font): Revert last change.
3343
19ae3e61
JR
33442009-01-26 Jason Rumney <jasonr@gnu.org>
3345
3346 * w32font.c (w32font_list_internal): Return quickly if registry is
3347 unknown. Simplify final return.
3348 (add_font_entity_to_list): Break complex logic down into more
3349 manageable chunks. Move unknown registry check to
3350 w32font_list_internal.
3351
8612b71a
AR
33522009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3353
3354 Changes to remove Feval calls from GUI under NS.
3355
d8038940
JB
3356 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3357 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3358 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3359
3360 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3361 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3362 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3363 instead of NON_ASCII_KEYSTROKE_EVENT.
3364 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3365 (EmacsApp-applicationShouldTerminate:): Query user.
3366 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3367 instead of Feval.
3368
3369 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3370
3371 * keyboard.c (kbd_buffer_get_event): Check for it.
3372 (keys_of_keyboard): Define lispy keys for
3373 ns-put/unput-working-text.
3374
3375 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3376 versions.
3377 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3378
6288ae55
CY
33792009-01-25 Chong Yidong <cyd@stupidchicken.com>
3380
3381 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3382 setting current_buffer directly. (Bug#2044)
6288ae55 3383
289e7f8f
CY
33842009-01-24 Chong Yidong <cyd@stupidchicken.com>
3385
5ce87308 3386 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3387 any work. (Bug#1952, bug#1990).
5ce87308 3388
64cc3cf6 3389 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3390
b3243e6f
AR
33912009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3392
3393 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3394 (ns_no_defaults): New declaration.
3395 (main): Use it.
e0d2e69a 3396
d900b2af 3397 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3398
d900b2af 3399 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3400
d900b2af
AR
3401 * nsterm.m (ns_no_defaults): New variable.
3402 (ns_initialize): Don't read defaults when ns_no_defaults.
3403 (EmacsView-readSelectionFromPasteboard:)
3404 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3405 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3406 (ns_dumpglyphs_stretch): New function.
3407 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3408 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 3409
e0d2e69a
AR
3410 * nsimage.m (setPixmapData:): Set to ignore image DPI.
3411
3ac71f5d
CY
34122009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
3413
3414 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
3415 call for Sparc64.
3416
3fe53a83
AR
34172009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3418
3419 * nsfns.m:
3420 * nsgui.h:
3421 * nsmenu.m:
3422 * nsselect.m:
3423 * nsterm.h:
3424 * nsterm.m: Remove '23' comments that indicated code added during
3425 update from emacs-20 -> emacs-23.
3426
10f87c6f 34272009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
3428
3429 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 3430 ns_alternate_modifier. (Bug#1217)
a3b53a85 3431
c7cef62d
AR
3432 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
3433 Display all shortcuts, including those w/o super modifier.
3434
575fb8bd
AR
3435 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
3436
918b848b
CY
34372009-01-22 Chong Yidong <cyd@stupidchicken.com>
3438
3439 * fileio.c (Vwrite_region_post_annotation_function)
3440 (Vwrite_region_annotation_buffers): New vars.
3441 (build_annotations_unwind): Just reset
3442 Vwrite_region_annotation_buffers.
3443 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
3444 Call write-region-post-annotation-function.
3445 (build_annotations): Add to Vwrite_region_annotation_buffers if
3446 buffer changes.
3447
a39e2539
AR
34482009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3449
3450 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
3451 Tiger.
51d861de
SM
3452 * nsfns.m (ns_do_applescript):
3453 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 3454
35ed44db
AR
34552009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
3456
3457 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
3458
cbe0b5bf
AR
34592009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3460
3461 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 3462
6049d3a0
AR
3463 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
3464
3465 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
3466 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
3467 handle Ctrl-tab. (Bug#1841)
3468 (ns_get_color): Use unsigned long long for scanned hex string value.
3469 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 3470 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 3471 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 3472 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 3473 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 3474 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 3475 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 3476
d3810c21 3477 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 3478 DPI. (Bug#1316)
d3810c21
AR
3479 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
3480 values in onTiger section.
4c7077c3 3481
e301e634
CY
34822009-01-19 Chong Yidong <cyd@stupidchicken.com>
3483
7f82490b
CY
3484 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
3485 Check return value of font_spec_from_name.
64cc3cf6 3486 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
3487
3488 * font.c (font_spec_from_name): Return Qnil if font name could not
3489 be parsed.
3490 (font_parse_name): Treat a `?' character as part of an XLFD.
3491
e301e634
CY
3492 * fns.c (Fsubstring): Doc fix.
3493
1c0db158
KH
34942009-01-19 Kenichi Handa <handa@m17n.org>
3495
51d861de 3496 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
3497 (ftfont_list): Likewise.
3498
acf20901
JB
34992009-01-18 Juanma Barranquero <lekktu@gmail.com>
3500
fff4e459
JB
3501 * dbusbind.c (Fdbus_register_signal):
3502 * process.c (conv_sockaddr_to_lisp):
3503 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
3504
acf20901
JB
3505 * callproc.c (Fgetenv_internal): Doc fix.
3506
e7abcdfb
CY
35072009-01-16 Chong Yidong <cyd@stupidchicken.com>
3508
3509 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
3510 it is not even used.
3511
b60861e6
GM
35122009-01-16 Glenn Morris <rgm@gnu.org>
3513
3514 * font.c (Ffont_variation_glyphs): Silence compiler.
3515
8db52afe
JB
35162009-01-15 Juanma Barranquero <lekktu@gmail.com>
3517
3518 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
3519 Reported by David Robinow <drobinow@gmail.com>.
3520
4cddb209
KH
35212009-01-15 Kenichi Handa <handa@m17n.org>
3522
51d861de 3523 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 3524
f247f67b
JR
35252009-01-14 Jason Rumney <jasonr@gnu.org>
3526
3527 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 3528 never a fontset. (Bug#1562)
f247f67b 3529
f56a4450
KH
35302009-01-14 Kenichi Handa <handa@m17n.org>
3531
3532 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 3533 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 3534
4e99855e
CY
35352009-01-13 Chong Yidong <cyd@stupidchicken.com>
3536
3537 * font.c (font_clear_prop): If clearing the family, clear the font
3538 width index too.
3539
fff4e459 3540 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 3541
24f01470
JB
35422009-01-12 Juanma Barranquero <lekktu@gmail.com>
3543
3544 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
3545 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
3546 functions, use sizeof.
3547
a41240a3
MR
35482009-01-12 Martin Rudalics <rudalics@gmx.at>
3549
3550 * keyboard.c (read_char): Fix case where last_nonmenu_event
3551 returned a bad value with submenus. (Bug#447)
3552
944636b8
CY
35532009-01-12 Chong Yidong <cyd@stupidchicken.com>
3554
3555 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
3556 family, clear the font width index too.
3557
0dad7c6f
JR
35582009-01-11 Jason Rumney <jasonr@gnu.org>
3559
3560 * keyboard.c (cmd_error_internal): Exit when errors occur before
3561 frame creation and not in daemon mode. (Bug#1836)
3562
7c2363af
CY
35632009-01-10 Chong Yidong <cyd@stupidchicken.com>
3564
3565 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
3566 of a display vector, backtrack.
3567 (try_window_reusing_current_matrix): Check glyph type before
3568 referencing charpos member.
3569
97b1b294
EZ
35702009-01-10 Eli Zaretskii <eliz@gnu.org>
3571
3572 Fix Bug #876:
3573
3574 * coding.c (inhibit_null_byte_detection): New variable.
3575 (detect_coding, detect_coding_system): Don't pay attention to null
3576 bytes if inhibit_null_byte_detection is non-zero.
51d861de 3577 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
3578 <inhibit-iso-escape-detection>: Doc fix.
3579
4624b6e3
JR
35802009-01-09 Jason Rumney <jasonr@gnu.org>
3581
3582 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 3583 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
3584 Only report Unicode Plane 2 fonts as unicode-sip.
3585
323b840c
CY
35862009-01-09 Chong Yidong <cyd@stupidchicken.com>
3587
51d861de
SM
3588 * xfaces.c (Fx_font_family_list): Delete function.
3589 Move compatibility version to faces.el.
323b840c 3590
51d861de 3591 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 3592
eba7400d
MR
35932009-01-09 Martin Rudalics <rudalics@gmx.at>
3594
3595 * frame.c (x_set_frame_parameters): Remember requested value for
3596 fullscreen before it's reset by the parameter handler.
3597
4b09796d
GM
35982009-01-09 Glenn Morris <rgm@gnu.org>
3599
3600 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 3601 (last_command_event): ... and update all users.
4b09796d
GM
3602 (last_input_char): For clarity, rename to...
3603 (last_input_event): ... and update all users.
3604 (last-command-char, last-input-char): Move to subr.el as aliases.
3605 * cmds.c, commands.h: Update for last_command_char rename.
3606
14ccea62
CY
36072009-01-08 Chong Yidong <cyd@stupidchicken.com>
3608
51d861de 3609 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 3610
5f004711
JR
36112009-01-08 Jason Rumney <jasonr@gnu.org>
3612
3613 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
3614 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
3615 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
3616 Don't declare.
fff4e459 3617 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
3618 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
3619
b71f6f73
KH
36202009-01-07 Kenichi Handa <handa@m17n.org>
3621
50b06221 3622 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 3623 remember the coding system used for decoding in
50b06221
KH
3624 coding_system (Bug#1039).
3625
b71f6f73 3626 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 3627 breaking the loop. (Bug#870)
b71f6f73
KH
3628 (decode_coding_utf_16, decode_coding_emacs_mule)
3629 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3630 (decode_coding_charset): Likewise.
3631
56f668f7
MR
36322009-01-05 Martin Rudalics <rudalics@gmx.at>
3633
3634 * frame.c (x_set_frame_parameters): Make sure height (width) get
3635 applied when fullwidth (fullheight) is set. (Bug#1522)
3636
5da9424d
JB
36372009-01-04 Juanma Barranquero <lekktu@gmail.com>
3638
3639 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
3640 (utc_base): Declare as ULONGLONG, not long double.
3641 (convert_time_raw): Delete.
3642 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
3643 (initialize_utc_base): New function.
3644 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
3645 (convert_from_time_t): Use initialize_utc_base; compute result with
3646 64-bit arithmetic.
3647 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
3648
c4605e09
EZ
36492009-01-03 Eli Zaretskii <eliz@gnu.org>
3650
9acef61c 3651 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
3652 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
3653 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
3654 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
3655 [!subprocesses]: Define.
3656 (syms_of_process) [!subprocesses]: Intern and staticpro them.
3657 (Flist_system_processes, Fsystem_process_attributes)
3658 [!subprocesses]: Call list_system_processes and
3659 system_process_attributes instead of returning Qnil.
3660
9acef61c
JB
3661 * dosfns.c (system_process_attributes, list_system_processes):
3662 New functions.
c4605e09
EZ
3663
3664 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
3665
3666 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
3667 Don't use the default (no-op) implementation.
3668
8b7d0a16
JR
36692009-01-03 Jason Rumney <jasonr@gnu.org>
3670
a6d46bc1
JR
3671 * keyboard.c (parse_modifiers_uncached): Wheel events are
3672 clicks (bug#687).
3673
8b7d0a16
JR
3674 * w32term.c (x_query_colors, x_query_color): New functions.
3675
3676 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
3677 (svg_load_image): Cast returned pointers from dynamically loaded
3678 functions. Eliminate W32 specific code.
3679
bfe11752
DN
36802009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
3681
89e2438a
DN
3682 * nsfns.m (x_set_foreground_color, x_set_background_color)
3683 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
3684 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
3685 x_ prefix instead of ns_. Update references.
3686 (syms_of_nsfns): Add a FIXME comment.
3687
3688 * nsterm.m (x_set_cursor_type): New prototype.
3689 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
3690
bfe11752
DN
3691 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
3692 for Solaris instead of incorrectly providing Qutime and Qcutime.
3693
031da700
EZ
36942009-01-02 Eli Zaretskii <eliz@gnu.org>
3695
3696 * w32.c (process_times): Compute sum of utime and stime.
3697 (system_process_attributes): Add Qtime to the alist.
3698
3699 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
3700 and add them to the alist.
3701
3702 * process.c (top level) <Qtime, Qctime>: New variables.
3703 (syms_of_process): staticpro them.
3704 (Fsystem_process_attributes): Add their documentation to the doc
3705 string.
3706
3707 * process.h: Declare Qtime and Qctime.
3708
df23bf08
JR
37092009-01-02 Jason Rumney <jasonr@gnu.org>
3710
9acef61c 3711 * image.c (Qgobject): New symbol.
df23bf08
JR
3712 (syms_of_image): Initialize it.
3713 (init_svg_functions): Load some functions from gobject library.
3714
5bbdf7aa
DN
37152009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
3716
3717 * frame.c (make_terminal_frame): Remove redundant code and useless
3718 block.
3719
63136da6
AS
37202009-01-01 Andreas Schwab <schwab@suse.de>
3721
3722 * process.c (conv_sockaddr_to_lisp): Add workaround for
3723 getsockname bug on BSD.
3724
9ef69046
CY
37252009-01-01 Chong Yidong <cyd@stupidchicken.com>
3726
d6fafbe0
CY
3727 * xfns.c (x_create_tip_frame): Set border width of the X window.
3728
51d861de 3729 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 3730
f9c34147
JR
37312009-01-01 Jason Rumney <jasonr@gnu.org>
3732
9acef61c 3733 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
3734 Don't block input, as per earlier xterm.c changes.
3735
f5497e45
AR
37362008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
3737
3738 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
3739 (ns_appkit_version_int): New function.
3740 (x-server-version): Use ns_appkit_version_int and follow 21+
3741 convention of returning 3 integers.
3742
c19cab20
KH
37432008-12-30 Kenichi Handa <handa@m17n.org>
3744
3745 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
3746 (CHAR_SURROGATE_PAIR_P): New macro.
3747
3748 * font.h (struct font_driver): New member get_variation_glyphs.
3749
9acef61c 3750 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
3751 (Ffont_variation_glyphs): New function.
3752 (syms_of_font): Defsubr it.
3753
3754 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
3755 ftfont_variation_glyphs.
3756 (setup_otf_gstring): New function.
3757 (ftfont_drive_otf): Use it.
3758 (ftfont_shape_by_flt): Handle variation selector.
3759 (ftfont_variation_glyphs): New function.
3760
28cd591f
MR
37612008-12-30 Martin Rudalics <rudalics@gmx.at>
3762
3763 * frame.c (Vemacs_iconified): Remove.
3764
7f714baf
JR
37652008-12-30 Jason Rumney <jasonr@gnu.org>
3766
3767 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 3768 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 3769
9d2d22ab
CY
37702008-12-30 Chong Yidong <cyd@stupidchicken.com>
3771
3772 * indent.c (Fvertical_motion): Don't advance iterator if we have
3773 reseated to the desired position.
3774
3775 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
3776 checking for pos match.
3777
545312c2
KH
37782008-12-30 Kenichi Handa <handa@m17n.org>
3779
1ede3eb6
KH
3780 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
3781 just get the low 8-bit of the code.
3782
545312c2
KH
3783 * font.c (font_intern_prop): Validate str as multibyte.
3784
bd7bbf29
DN
37852008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3786
31e0750e
DN
3787 * dispextern.h (struct face): Move lface and hash from the middle
3788 of bitfields.
3789
bd7bbf29
DN
3790 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
3791
b5672e7c
DN
37922008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
3793
3794 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
3795 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
3796 instead of intervals.h.
3797
d704470f
AS
37982008-12-26 Andreas Schwab <schwab@suse.de>
3799
3800 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
3801 cons.
3802
54b33868
MR
38032008-12-26 Martin Rudalics <rudalics@gmx.at>
3804
3805 * textprop.c (Qminibuffer_prompt): New variable.
3806 (syms_of_textprop): Initialize it.
3807 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
3808 in minibuffer-prompt face. (Bug#1662)
3809
40b615d6
JR
38102008-12-25 Jason Rumney <jasonr@gnu.org>
3811
3812 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
3813
baae5c2d
JR
38142008-12-24 Jason Rumney <jasonr@gnu.org>
3815
3816 * ralloc.c (r_alloc_reset_variable): New function.
3817
3818 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 3819 record of what points where. (Bug#716)
baae5c2d 3820
a9051c88
DN
38212008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
3822
3823 * minibuf.c (read_minibuf): Follow the non-interactive case when
3824 running as a daemon, before detaching.
3825
8b146312
AS
38262008-12-22 Andreas Schwab <schwab@suse.de>
3827
3828 * buffer.c (init_buffer): Use realloc instead of xrealloc.
3829 * gtkutil.c (free_widget_value): Use xfree instead of free.
3830
56f2de10
MR
38312008-12-22 Martin Rudalics <rudalics@gmx.at>
3832
3833 * frame.c (delete_frame): New function derived from
3834 Fdelete_frame to handle Qnoelisp value for FORCE argument.
3835 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
3836 (Fdelete_frame): Call delete_frame. Remove line from doc-string
3837 saying that FORCE non-nil doesn't run `delete-frame-functions'.
3838 * frame.h: Extern delete_frame.
3839 * window.c (window_loop):
3840 * terminal.c (delete_terminal):
3841 * xterm.c (x_connection_closed):
3842 * xfns.c (Fx_hide_tip):
9acef61c 3843 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 3844
1fc200d6
JR
38452008-12-21 Jason Rumney <jasonr@gnu.org>
3846
3847 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
3848 when character maps to .notdef character.
3849
5e252df2
SM
38502008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3851
3852 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
3853
99b72cc4
JR
38542008-12-20 Jason Rumney <jasonr@gnu.org>
3855
3856 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 3857 a graphical frame on Windows. (Bug#1325)
99b72cc4 3858
acc49a52
JD
38592008-12-20 Jan Djärv <jan.h.d@swipnet.se>
3860
3861 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
3862
6ea15123
CY
38632008-12-20 Chong Yidong <cyd@stupidchicken.com>
3864
3865 * minibuf.c (Fread_buffer): Doc fix.
3866
b2dab6c8
JR
38672008-12-20 Jason Rumney <jasonr@gnu.org>
3868
54ea0c87 3869 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 3870 server name in UNC paths. (Bug#719)
54ea0c87 3871
b2dab6c8 3872 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 3873 charbuf. (Bug#1035)
b2dab6c8 3874
6d1921be
DN
38752008-12-19 Daniel Engeler <engeler@gmail.com>
3876
3877 * sysdep.c (serial_configure): Fix typo.
3878
53934c98
DN
38792008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3880
3881 * sysdep.c: Include alloca.h.
f4f634e8
DN
3882 (system_process_attributes): Add implementation for Solaris.
3883
3884 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 3885
06e111a6
DN
38862008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
3887
3888 Reorganize implementation of Flist_system_processes and
3889 Fsystem_process_attributes. No functional changes.
3890 * process.c: Don't #include pwd.h, grp.h and limits.h.
3891 (Flist_system_processes): Just call list_system_processes.
3892 (Fsystem_process_attributes): Just call system_process_attributes.
3893 (procfs_list_system_processes, time_from_jiffies)
3894 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
3895 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
3896
3897 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
3898 (list_system_processes): Rename from
3899 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
3900 Provide a do nothing implementation.
3901 (system_process_attributes): Rename from
3902 procfs_list_system_processes.
3903 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 3904 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
3905
3906 * w32.c (list_system_processes): Rename from
3907 w32_list_system_processes.
3908 (system_process_attributes): Rename from
3909 w32_system_process_attributes.
3910
3911 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
3912
3913 * process.h (w32_list_system_processes)
3914 (w32_system_process_attributes): Remove.
362654a6
JB
3915 (list_system_processes, system_process_attributes):
3916 New prototypes.
06e111a6 3917
6a705b23
KH
39182008-12-19 Kenichi Handa <handa@m17n.org>
3919
3920 * xfont.c (xfont_decode_coding_xlfd): New function.
3921 (xfont_encode_coding_xlfd): New function.
3922 (xfont_list_pattern): Decode XLFD by iso-8859-1.
3923 (xfont_list): Decode and encode XLFD by iso-8859-1.
3924 (xfont_match): Likewise.
3925 (xfont_list_family): Likewise.
3926 (xfont_open): Likewise.
3927
d66c0241 3928 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
3929 names are utf-8.
3930
d66c0241 3931 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
3932 names are utf-8.
3933
5a130941
JD
39342008-12-18 Jan Djärv <jan.h.d@swipnet.se>
3935
3936 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
3937 changed.
bfd20325
JD
3938 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
3939 clicked on a detached tool bar button.
5a130941 3940
fd95644b
DN
39412008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3942
3943 * emacs.c (main): Print and error and exit when no data is read
3944 from the pipe.
3945
e6eee6ae
JR
39462008-12-17 Jason Rumney <jasonr@gnu.org>
3947
3948 * w32font.c (w32font_has_char): Always return -1.
3949
a35dd56b
KH
39502008-12-16 Kenichi Handa <handa@m17n.org>
3951
3952 * font.c (font_open_entity): Fix previous change.
3953
0e3635c2
DN
39542008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
3955
3956 * process.c: Include <limits.h>.
3957
d4835507 39582008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
3959
3960 * font.c (font_update_drivers): Fix mistake in reconstructing the
3961 driver list.
3962
39632008-12-16 Chong Yidong <cyd@stupidchicken.com>
3964
3965 * font.c (font_clear_cache): Fix format of font cache data.
3966
e2cbc401
CY
39672008-12-15 Chong Yidong <cyd@stupidchicken.com>
3968
3969 * xftfont.c (xftfont_open): Free Xft font pattern if
3970 XftFontOpenPattern fails.
3971
3972 * xterm.c (x_free_frame_resources): Remove extraneous call to
3973 free_frame_faces.
3974
b131d535
CY
39752008-12-13 Chong Yidong <cyd@stupidchicken.com>
3976
3977 * xterm.c (x_delete_display): Move xim_close_dpy call to
3978 x_delete_terminal.
3979 (x_delete_terminal): Call xim_close_dpy.
3980
e6df5336
JR
39812008-12-13 Jason Rumney <jasonr@gnu.org>
3982
3983 * w32font.c (intern_font_name): New function.
3984 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
3985 (w32font_open_internal, Fx_select_font): Decode font name.
3986 (fill_in_logfont, list_all_matching_fonts): Encode font name.
3987
3988 * w32font.h (intern_font_name): Declare new function.
3989
3990 * w32uniscribe.c (add_opentype_font_name_to_list):
3991 Use intern_font_name.
3992
20d68145
CY
39932008-12-13 Chong Yidong <cyd@stupidchicken.com>
3994
9f2554de
CY
3995 * frame.c (Fdelete_frame): Call free_font_driver_list.
3996
3d9bec9a
CY
3997 * font.c (free_font_driver_list): Implement missing function.
3998
20d68145
CY
3999 * w32term.c (w32_term_init): Don't initialize the image cache
4000 here; it will be done in init_frame_faces.
4001
4002 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4003 (struct x_display_info): Remove unused member null_pixel. New
4004 member xim_callback_data.
4005
4006 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4007 (xim_initialize): Save pointer to callback function data.
4008 (xim_close_dpy): Free callback function data. Call XCloseIM,
4009 reverting 2008-11-04 change by David Smith.
4010 (x_term_init): Don't initialize the image cache here; it will be
4011 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4012 (x_delete_display): Free x_dnd_atoms member.
4013
96f9306b
KH
40142008-12-13 Kenichi Handa <handa@m17n.org>
4015
6dec9044
JB
4016 * font.c (font_rescale_ratio): Moved from xfaces.c.
4017 Argument type changed. Handle a font-spec too.
96f9306b 4018 (font_score): Check Vface_font_rescale_alist.
6dec9044 4019 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4020
4021 * xfaces.c (font_rescale_ratio): Moved to font.c.
4022
8d5b4964
CY
40232008-12-13 Chong Yidong <cyd@stupidchicken.com>
4024
4025 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4026
e6df5336
JR
40272008-12-12 Jason Rumney <jasonr@gnu.org>
4028
4029 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4030 Vwindow_system_version to the real w32 major version.
4031
97c6058a
DN
40322008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4033
4034 * term.c (init_tty): Move setting the terminal name before the
4035 potential user: maybe_fatal.
4036
ec4e88d7
CY
40372008-12-11 Chong Yidong <cyd@stupidchicken.com>
4038
d4835507
JB
4039 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4040 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4041
b4233ec9
JR
40422008-12-11 Jason Rumney <jasonr@gnu.org>
4043
8ec71e23 4044 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4045 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4046
b4233ec9 4047 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4048 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4049
011a0143
JB
40502008-12-11 Juanma Barranquero <lekktu@gmail.com>
4051
4052 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4053
3c309f34
JB
40542008-12-11 Juanma Barranquero <lekktu@gmail.com>
4055
4056 * process.c (Fsystem_process_attributes, syms_of_process):
4057 Fix typo in name of Ssystem_process_attributes.
4058 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4059
fedc6ab5
JB
40602008-12-11 Juanma Barranquero <lekktu@gmail.com>
4061
4062 * syntax.c (Fmodify_syntax_entry): Doc fix.
4063
ba3de0e8
JB
40642008-12-10 Juanma Barranquero <lekktu@gmail.com>
4065
4066 * font.c (Ffont_spec): Move usage to end of docstring.
4067
174f1c74
JR
40682008-12-10 Jason Rumney <jasonr@gnu.org>
4069
4070 * w32font.c (Qcham): New symbol.
4071 (font_supported_scripts): Add cham, and comments for other new
4072 scripts in bitfield from OpenType spec.
9d32f818
JR
4073 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4074 contain characters beyond the bmp.
174f1c74 4075
7b649478
KH
40762008-12-10 Kenichi Handa <handa@m17n.org>
4077
4078 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4079 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4080 Qunicode_sip.
4081
2133e2d1
JB
40822008-12-10 Juanma Barranquero <lekktu@gmail.com>
4083
4084 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4085 (Fcoding_system_put): Use QCdefault_char.
4086 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4087
9af886ee
CY
40882008-12-09 Chong Yidong <cyd@stupidchicken.com>
4089
74d819eb
CY
4090 * xftfont.c (syms_of_xftfont): Fix typo.
4091
4ccfa1c0 4092 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4093
7c19d3ae
DN
40942008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4095
4096 * emacs.c (main): Close daemon_pipe on exec.
4097
567826bb
CY
40982008-12-08 Chong Yidong <cyd@stupidchicken.com>
4099
4100 * termchar.h (struct tty): New members termcap_term_buffer and
4101 termcap_strings_buffer.
4102
4103 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4104 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4105 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4106 All callers changed.
4107 (init_tty): Store termcap data and string buffers in new struct
4108 tty members termcap_term_buffer and termcap_strings_buffer.
4109 (delete_tty): Free them.
4ccfa1c0 4110 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4111
aa96c42b
SZ
41122008-12-07 Seiji Zenitani <zenitani@mac.com>
4113
4114 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4115 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4116
b7e1d896
CY
41172008-12-06 Chong Yidong <cyd@stupidchicken.com>
4118
4119 * coding.c (make_conversion_work_buffer): Disable buffer
4120 modification hooks in the work buffer.
4121
b5ec91a5
EZ
41222008-12-05 Eli Zaretskii <eliz@gnu.org>
4123
4124 * process.c (procfs_system_process_attributes): If `nread' has a
4125 negative value, assign zero to it.
4126
a5d2a52b
CY
41272008-12-05 Chong Yidong <cyd@stupidchicken.com>
4128
68c5540b 4129 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4130
7bf1bb21
KH
41312008-12-05 Kenichi Handa <handa@m17n.org>
4132
4133 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4134 second character is a combining character.
4135
2fdc7d00
EZ
41362008-12-05 Eli Zaretskii <eliz@gnu.org>
4137
4138 * process.c (procfs_system_process_attributes): Don't use cmd,
4139 cmdsize, and q without initializing them first.
4140
bf6bfba8
JR
41412008-12-04 Jason Rumney <jasonr@gnu.org>
4142
4143 * w32font.c (w32font_draw): Initialize orig_clip before getting
4144 it, and delete it when finished.
4145
a3b1a468
DN
41462008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4147
4148 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4149 case when running as a daemon before detaching.
4150
8b8be8eb
JB
41512008-12-03 Juanma Barranquero <lekktu@gmail.com>
4152
805f2638 4153 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4154
b1bde622
KH
41552008-12-03 Kenichi Handa <handa@m17n.org>
4156
e500c47d
KH
4157 * font.c (font_at): Set `multibyte' at first.
4158
ca516334
KH
4159 * coding.c (decode_coding_charset): Check type of an element of
4160 vector VALIDS.
7bf1bb21 4161 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4162
4ccfa1c0 4163 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4164 (font_for_char): Likewise.
4165
1e5ecd37
CY
41662008-12-03 Chong Yidong <cyd@stupidchicken.com>
4167
d5b01609 4168 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4169 (font_update_lface): Handle fonts with corrupted size specs,
4170 i.e. non-int and non-float.
d5b01609 4171
11e3a6e4 4172 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4173 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4174 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4175
ab06788b
CY
4176 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4177
1e5ecd37 4178 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4179 underline_minimum_offset for underline position.
1e5ecd37 4180
63c125ab
DN
41812008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4182
4183 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4184
4185 * character.c (c_string_width): Specify the type for LEN.
4186
3a8406e1
KH
41872008-12-03 Kenichi Handa <handa@m17n.org>
4188
4ccfa1c0 4189 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4190 (decode_coding_utf_8): Likewise.
4ccfa1c0 4191 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4192 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4193
651df7d9
CY
41942008-12-02 Chong Yidong <cyd@stupidchicken.com>
4195
4196 * keyboard.c (make_lispy_position): Only use PT if the selected
4197 window is current.
4198
1f625c6c
AS
41992008-12-02 Andreas Schwab <schwab@suse.de>
4200
f7741ce9
AS
4201 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4202
1f625c6c
AS
4203 * doprnt.c (doprnt1): Fix size of charbuf.
4204
92bc2678
CY
42052008-12-02 Chong Yidong <cyd@stupidchicken.com>
4206
4207 * keyboard.c (timer_check): Revert last change.
4208
93b9e8cc
JB
42092008-12-02 Juanma Barranquero <lekktu@gmail.com>
4210
4211 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4212
fd7a37d5
JB
42132008-12-01 Juanma Barranquero <lekktu@gmail.com>
4214
4215 * makefile.w32-in: Update dependencies.
4216 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4217
c115043b
AS
42182008-12-01 Andreas Schwab <schwab@suse.de>
4219
4220 * font.c (register_font_driver): Use xmalloc.
4221 (font_put_frame_data): Likewise.
4222
f5668d2a
CY
42232008-12-01 Chong Yidong <cyd@stupidchicken.com>
4224
860d96be
CY
4225 * xfaces.c (realize_x_face): Make abort condition clearer.
4226
f5668d2a
CY
4227 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4228
379c17e7
CY
42292008-11-30 Chong Yidong <cyd@stupidchicken.com>
4230
4231 * keyboard.c (timer_check): After a timer runs, ensure that the
4232 selected window's buffer is current.
4233
35f36d65
JB
42342008-11-30 Juanma Barranquero <lekktu@gmail.com>
4235
f952c61c
JB
4236 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4237 It was accidentally restored by the Unicode merge.
4238
35f36d65
JB
4239 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4240
b23077df
JB
42412008-11-29 Juanma Barranquero <lekktu@gmail.com>
4242
4243 * w32proc.c: Include "coding.h".
4244 (Fw32_short_file_name): Encode filename passed to Windows API.
4245 (Fw32_long_file_name): Encode filename passed to Windows API and
4246 decode back the result. (Bug#1433)
4247
b8ebe9dd
KH
42482008-11-29 Kenichi Handa <handa@m17n.org>
4249
8cc53f96
KH
4250 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4251 not before accessing it.
4252
b8ebe9dd
KH
4253 * charset.c (Fdefine_charset_internal): After calculating
4254 min_char, max_char, and fastmap, copy the charset structure again.
4255 (encode_char): Fix the previous change.
4256
59bc82c0
SZ
42572008-11-28 Seiji Zenitani <zenitani@mac.com>
4258
4259 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4260
4261 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4262
4263 * nsterm.m (x_set_frame_alpha): New function.
4264
32247e3d
EZ
42652008-11-27 Eli Zaretskii <eliz@gnu.org>
4266
4267 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4268
b003e5ff
JB
42692008-11-27 Juanma Barranquero <lekktu@gmail.com>
4270
4271 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4272 pointer to check_face_name.
4273
708550f5
KH
42742008-11-27 Kenichi Handa <handa@m17n.org>
4275
4276 * category.h (SET_CATEGORY_SET): Call set_category_set.
4277 (set_category_set): Extern it.
4278
4279 * category.c (hash_get_category_set): New function.
4280 (Fmodify_category_entry): Adjusted for the change of
4281 char_table_ref_and_range. Call hash_get_category_set to get a
4282 category set to store in the table.
4283
4284 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4285 Funify_charset.
4286
2ae37cf0 4287 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4288 (DECODE_CHAR): Check if the decoder vector is ready.
4289 (ENCODE_CHAR): Check if the encoder char-table is ready.
4290 (maybe_unify_char): Extern it.
4291
4292 * charset.c (Vchar_unified_charset_table): Delete it.
4293 (inhibit_load_charset_map): New variable.
4294 (temp_charset_work): New variable.
4295 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4296 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4297 New macros.
4298 (load_charset_map): Meaning of control_flag changed. If
4299 inhibit_load_charset_map is nonzero, setup a table in
4300 temp_charset_work.
4301 (load_charset): New argument control_flag.
4302 (map_charset_for_dump): New function.
4303 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4304 map_charset_for_dump.
4305 (Fdefine_charset_internal): If the charset method is MAP, load
4306 mapping tables by calling load_charset.
4307 (Funify_charset): Don't load a mapping table but directly set
4308 Vchar_unify_table.
4309 (maybe_unify_char): New function.
4310 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4311 Handle the case of inhibit_load_charset_map being nonzero.
4312 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4313 Handle the case of inhibit_load_charset_map being nonzero.
4314 (Fclear_charset_maps): Just free temp_charset_work.
4315 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4316 variable.
4317
4318 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4319 change of char_table_ref_and_range.
4320 (char_table_ref_and_range): Change the meaning of argument FROM
4321 and TO. Now the caller must provide initial values for *FROM
4322 and *TO.
4323
4324 * fontset.c (fontset_add): Adjusted for the change of
4325 char_table_ref_and_range.
4326 (fontset_get_font_group): Likewise.
4327 (Ffontset_info): Likewise.
4328
4329 * keymap.c (describe_vector): Adjusted for the change of
4330 char_table_ref_and_range. For char-table, put boundary between
4331 non-ASCII and 8-bit characters.
4332
4333 * print.c (print_object): For bool-vector, delete unnecessary
4334 check of ASCII_BYTE_P.
4335
9196133b
JR
43362008-11-26 Jason Rumney <jasonr@gnu.org>
4337
4338 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4339 leading in font height. (Bug#879)
9196133b 4340
9f688acf
GM
43412008-11-26 Glenn Morris <rgm@gnu.org>
4342
4343 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4344 redefinition with ifdef. (Bug#1383)
4345
90d19aff
AR
43462008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4347
4348 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4349
4ccfa1c0 43502008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4351
4352 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4353 New EmacsView methods.
4354 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4355 Fixes bug #1048,1357,1414.
4356
43572008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4358
4359 Fix bug #1362.
4360 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4361 is not an indexed color.
4362 * nsterm.m (free_indexed_color): Add argument checking.
4363 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4364
e7d5ecb3
CY
43652008-11-24 Chong Yidong <cyd@stupidchicken.com>
4366
4367 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4368 Document confirm-after-completion value for
4369 minibuffer-completion-confirm.
4370
c285743c
JR
43712008-11-24 Jason Rumney <jasonr@gnu.org>
4372
4373 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4374 warning.
4375
b0857706
JR
43762008-11-23 Jason Rumney <jasonr@gnu.org>
4377
4378 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4379 restored before returning.
4380
4381 * w32font.c (check_face_name): New function.
4382 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4383 fonts. (Bug#642)
b0857706 4384
ee50ff07
MR
43852008-11-22 Martin Rudalics <rudalics@gmx.at>
4386
4387 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4388 confirm-nonexistent-file-or-buffer in doc-string.
4389
b8ff72fa
SM
43902008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4391
4392 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4393 Fix copy/paste typo. Add checks.
4394
cee53ed4
KH
43952008-11-21 Kenichi Handa <handa@m17n.org>
4396
4397 * coding.c (detect_coding_iso_2022): Reject invalid composition
4398 sequence.
4399 (DECODE_COMPOSITION_START): If the current source is the last
4400 block, and the current composition doesn't end, regard this
4401 sequence as invalid.
4402 (decode_coding_iso_2022): Handle invalid composition sequence.
4403
f6ef1e65
MR
44042008-11-20 Martin Rudalics <rudalics@gmx.at>
4405
4406 * window.c (coordinates_in_window): Don't return
4407 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4408 line when the window is not the rightmost one. (Bug#1372)
4409
e08b1705
MR
44102008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
4411
4412 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
4413
ad98e89f
EZ
44142008-11-15 Eli Zaretskii <eliz@gnu.org>
4415
4416 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
4417 and bright_bg if noninteractive is non-zero.
4418
fb098a4b
CY
44192008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4420
4421 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
4422 x_draw_glyph_string_background.
4423
4424 * w32term.c (x_draw_glyph_string): Likewise.
4425
ce952b6e
CY
44262008-11-15 Chong Yidong <cyd@stupidchicken.com>
4427
4428 * xterm.c (x_draw_glyph_string): Stop drawing the background of
4429 the next glyph string once past the overhang width.
4430
4431 * nsterm.m (ns_draw_glyph_string): Likewise.
4432
4433 * w32term.c (x_draw_glyph_string): Likewise.
4434
26ea7079
CY
44352008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
4436
4437 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
4438 double file close.
4439
1c33c906
MR
44402008-11-14 Martin Rudalics <rudalics@gmx.at>
4441
4442 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
4443 dedicated status of window before attempting to display another
4444 buffer in it.
4445
8fc29035
JB
44462008-11-14 Juanma Barranquero <lekktu@gmail.com>
4447
4448 * msdos.c (Fmsdos_long_file_names):
4449 (syms_of_msdos) <dos-unsupported-char-glyph>:
4450 * dosfns.c (Fint86): Fix typos in docstrings.
4451
55fb4286
EZ
44522008-11-14 Eli Zaretskii <eliz@gnu.org>
4453
4454 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
4455
3fda0315
KY
44562008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
4457
4458 * puresize.h (BASE_PURESIZE): Increase to 1260000.
4459
7e849c17
CY
44602008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
4461
4462 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
4463
4464 * frame.h: Negative alpha means "don't touch".
4465
4466 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
4467
4468 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
4469
b9fd67bd
DN
44702008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
4471
4472 * hftctl.c:
4473 * chpdef.h:
4474 * acldef.h: Remove files used only for systems no longer supported.
4475
4476 * Makefile.in: Fix .o alphabetical ordering.
4477 (hftctl.o): Remove dependency, file removed.
4478 (keymap.o, print.o): Depend on charset.h.
4479
d5998e03
KH
44802008-11-10 Kenichi Handa <handa@m17n.org>
4481
2ae37cf0 4482 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 4483
be70e183
CY
44842008-11-08 Chong Yidong <cyd@stupidchicken.com>
4485
4486 * dired.c (file_name_completion): If completion_ignore_case is
4487 enabled, ignore case when checking completion-regexp-list.
4488
7cf94eac
EZ
44892008-11-08 Eli Zaretskii <eliz@gnu.org>
4490
4491 * vm-limit.c (get_lim_data): Fix last change.
4492
ee107a89
KH
44932008-11-08 Kenichi Handa <handa@m17n.org>
4494
4495 * character.c (Fget_byte): New function.
4496 (syms_of_character): Defsubr Fget_byte.
4497
5fd15622
CY
44982008-11-07 Chong Yidong <cyd@stupidchicken.com>
4499
4500 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
4501 cursor position is valid after scrolling.
4502
13d62fad
JB
45032008-11-06 Juanma Barranquero <lekktu@gmail.com>
4504
4505 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
4506
a1dd2936
GM
45072008-11-06 Glenn Morris <rgm@gnu.org>
4508
4509 * xterm.c (handle_one_xevent): Don't let popup menus cause
4510 mouse-autoselect-window related window switching. (Bug#1261)
4511
860cd236
CY
45122008-11-04 David Smith <davidsmith@acm.org> (tiny change)
4513
4514 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
4515
653a3150
AS
45162008-11-04 Andreas Schwab <schwab@suse.de>
4517
4518 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
4519
870f5cac
CY
45202008-11-03 Chong Yidong <cyd@stupidchicken.com>
4521
4522 * xfns.c (Fx_wm_set_size_hint): New function.
4523
1e02f3cb
MR
45242008-11-03 Martin Rudalics <rudalics@gmx.at>
4525
4526 * textprop.c (Fprevious_single_char_property_change): Return 0
4527 when there's no change in a string. (Bug#1301)
4528
e630dfc6
MR
45292008-11-02 Martin Rudalics <rudalics@gmx.at>
4530
4531 * frame.c (do_switch_frame): New argument NORECORD passed to
4532 Fselect_window.
4533 (Fselect_frame): New argument NORECORD passed to
4534 do_switch_frame.
4535 (Fset_frame_selected_window): New argument NORECORD passed to
4536 Fselect_frame.
4537 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
4538 in call of do_switch_frame.
4539 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
4540 Handle NORECORD argument in call of Fselect_frame.
4541 * lisp.h (do_switch_frame, Fselect_frame)
4542 (Fset_frame_selected_window): Adjust declarations.
4543 * window.c (select_frame_norecord): New function.
4544 (run_window_configuration_change_hook): Use it and call
4545 Fselect_frame with NORECORD set.
4546 (Fselect_window): Pass NORECORD to Fselect_frame.
4547 (Fset_window_configuration): Handle NORECORD argument in call of
4548 do_switch_frame.
4549 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
4550 Fset_frame_selected_window.
4551 * keyboard.c (command_loop_1): Handle NORECORD in call of
4552 Fselect_frame (currently ifdefd).
4553
9020b223
GM
45542008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
4555
4556 * emacs.c (USAGE2): Untabify.
4557
793ffee8
SM
45582008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
4559
4560 * composite.c (fill_gstring_header): Fix copy/paste typo.
4561
ab6d1131
MR
45622008-10-31 Martin Rudalics <rudalics@gmx.at>
4563
4564 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
4565 (Fother_window): Rename argument and rewrite doc-string.
4566 (select_window_norecord): Fix return value. (Bug#1276)
4567
601a9cf1
JB
45682008-10-30 Juanma Barranquero <lekktu@gmail.com>
4569
4570 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
4571 new frames overriding foreground for tooltips. Based on similar patch
4572 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
4573
813b0652
CY
45742008-10-29 Chong Yidong <cyd@stupidchicken.com>
4575
4576 * emacs.c (Fdaemon_initialized): Initialize nfd.
4577
4414f58f
MR
45782008-10-29 Martin Rudalics <rudalics@gmx.at>
4579
4580 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
4581 (Fwindow_text_height): Clarify doc-strings.
4582 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
4583 doc-string of window-scroll-functions.
4584
ecdcaa09
RS
45852008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
4586
4587 * category.c (syms_of_category): Fix typo in docstring.
4588
23fe745a
JB
45892008-10-28 Juanma Barranquero <lekktu@gmail.com>
4590
4591 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
4592 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
4593 Fix typos in docstrings.
4594
ff808935
DN
45952008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
4596
4597 * emacs.c (daemon_pipe): Make non-static.
4598 (IS_DAEMON): Move definition ...
4599 * lisp.h (IS_DAEMON): ... here.
4600 (daemon_pipe): Declare.
4601 (is_daemon): Remove.
4602 * dispnew.c (init_display): Use IS_DAEMON.
4603
fc012771
SM
46042008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
4605
4606 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
4607 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
4608
4609 * emacs.c (is_daemon): Remove.
4610 (main): Don't set is_daemon.
4611 (IS_DAEMON): New macro.
4612 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 4613 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
4614 parent exits.
4615 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
4616
d8bdbe6f
CY
46172008-10-27 Chong Yidong <cyd@stupidchicken.com>
4618
d1a072bf
CY
4619 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
4620 over-sized glyph, draw it with the default glyph width.
4621
e2e325aa
CY
4622 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4623 glyph, draw it with the default glyph width.
4624
4625 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
4626 glyph, draw it with the default glyph width.
4627
d8bdbe6f
CY
4628 * xdisp.c (try_scrolling): When computing the distance from the
4629 scroll margin to PT, try moving some distance past the window
4630 bottom before giving up.
4631
7bfac547
MR
46322008-10-27 Martin Rudalics <rudalics@gmx.at>
4633
4634 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
4635 (Fset_window_buffer): Explain in doc-string that a window can be
4636 "strongly" dedicated to its buffer.
4637
4ff029f6
DN
46382008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
4639
4640 * emacs.c (daemon_name): New variable.
4641 (main): Deal with --daemon=SERVER_NAME.
4642 (Fdaemonp): Return a name if one was passed to --daemon.
4643
5790ef40
DN
46442008-10-26 Romain Francoise <romain@orebokech.com>
4645
f9bd0df9 4646 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
4647 (main): Create a pipe before forking, make the parent exit only after
4648 the child has closed its end of the pipe. Move closing the
4649 descriptors ...
4650 (Fdaemon_initialized): ... here. New function.
4651
f5385255
SM
46522008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
4653
4d632321
SM
4654 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
4655 the previous unoptimized table.
4656
f5385255
SM
4657 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
4658 the distinction between non-nil and non-t value of `dedicated'.
4659
6c56a0f3
CY
46602008-10-25 Chong Yidong <cyd@stupidchicken.com>
4661
4662 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 4663 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 4664
fec89261
MR
46652008-10-25 Martin Rudalics <rudalics@gmx.at>
4666
4667 * window.c (Fget_buffer_window, Fdelete_windows_on)
4668 (Freplace_buffer_in_windows): Make buffer argument optional and
4669 rename to buffer_or_name.
4670
34fcddd0
CY
46712008-10-24 Chong Yidong <cyd@stupidchicken.com>
4672
f5385255
SM
4673 * xdisp.c (handle_single_display_spec, handle_display_prop):
4674 Undo 2005-05-16 change.
34fcddd0
CY
4675 (handle_stop): Pop iterator if it's loaded with an empty string.
4676 (get_overlay_strings_1): Don't save iterator if it's loaded with
4677 an empty string (bug#1201).
4678
064766f2
KH
46792008-10-24 Kenichi Handa <handa@m17n.org>
4680
4681 * ftfont.c (ftfont_otf_features): Fix previous change.
4682 (ftfont_otf_capability): Check FeatureList.FeatureCount before
4683 calling ftfont_otf_features.
4684
f9bd0df9 46852008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
4686
4687 * font.c (font_match_p): Fix for the case that a vector of
4688 characters is in script-representative-chars.
4689
1dae9197
MA
46902008-10-24 Michael Albinus <michael.albinus@gmx.de>
4691
4692 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 4693 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
4694 (xd_read_queued_messages): Catch Qdbus_error from the macros.
4695 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
4696 macro. (Bug#1186).
4697
f9bd0df9 46982008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
4699
4700 * s/sol2-10.h: New file.
4701
878a4584
JB
47022008-10-23 Juanma Barranquero <lekktu@gmail.com>
4703
4704 * xdisp.c (fill_glyph_string): Fix typo in source (though the
4705 poor beast has survived 9+ years and the jump from xterm.c!).
4706
cd265ca6
MR
47072008-10-23 Martin Rudalics <rudalics@gmx.at>
4708
4709 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
4710 Reword doc-string.
f5385255 4711 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 4712
472a4dc9
JB
47132008-10-23 Juanma Barranquero <lekktu@gmail.com>
4714
4715 * character.c (syms_of_character) <script-representative-chars>:
4716 <unicode-category-table>: Doc fixes.
4717
159bd5a2
NF
47182008-10-23 Noah Friedman <friedman@splode.com>
4719
4720 * coding.c (make_conversion_work_buffer): Check that
4721 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
4722 Fget_buffer_create.
4723
49f9c344
KH
47242008-10-23 Kenichi Handa <handa@m17n.org>
4725
4726 * font.c (font_add_log): Check the values of extra properties.
4727
12bb3111
MR
47282008-10-22 Martin Rudalics <rudalics@gmx.at>
4729
4730 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4731 Reword doc-string.
4732 (Fset_window_parameter): Use NILP.
4733 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 4734 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 4735
bbeb4e99
JB
47362008-10-22 Juanma Barranquero <lekktu@gmail.com>
4737
4738 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
4739
47402008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
4741
4742 * nsfns.m (ns_appkit_version): New function.
4743 (x-server-version): Use it.
4744 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
4745 (x-server-vendor): Don't check_ns().
4746
4747 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
4748
a9b555d3
JB
47492008-10-22 Juanma Barranquero <lekktu@gmail.com>
4750
4751 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4752 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
4753
4626499f
KH
47542008-10-22 Kenichi Handa <handa@m17n.org>
4755
e3681952
KH
4756 * syntax.c (scan_words): Call word_boundary_p instead of comparing
4757 scripts.
4758
4626499f
KH
4759 * category.c (word_boundary_p): Check scripts instead of charset.
4760 Handle nil value in word-separating-categories and
4761 word-combining-categories.
4762 (syms_of_category): Fix docstrings of word-separating-categories
4763 and word-combining-categories.
4764
1560f91a
EZ
47652008-10-21 Eli Zaretskii <eliz@gnu.org>
4766
4767 * coding.c (Fencode_coding_region, Fdecode_coding_region)
4768 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
4769
f4668441
MR
47702008-10-21 Martin Rudalics <rudalics@gmx.at>
4771
4772 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
4773 Rename arg "buffer" to "buffer_or_name".
4774 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
4775 it optional.
4776 (no_switch_window): Remove since the return value is not used.
a9b555d3 4777 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
4778 Consider window as dedicated when Fwindow_dedicated_p returns a
4779 non-nil value.
4780 * lisp.h: Remove prototype for no_switch_window.
4781
fd75ddb2
JD
47822008-10-21 Jan Djärv <jan.h.d@swipnet.se>
4783
4784 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 4785 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 4786
07295713
KH
47872008-10-21 Kenichi Handa <handa@m17n.org>
4788
4789 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
4790 check Vlatin_extra_code_table.
4791
712adc82
EZ
47922008-10-20 Eli Zaretskii <eliz@gnu.org>
4793
4794 * fileio.c (Fset_file_modes): Doc fix.
4795
f549eb0b
MA
47962008-10-19 Michael Albinus <michael.albinus@gmx.de>
4797
4798 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
4799 in arrays.
4800
aac0c6e3
MR
48012008-10-19 Martin Rudalics <rudalics@gmx.at>
4802
4803 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
4804 Mention kill-buffer in doc-string.
4805 (Fset_window_buffer): Reinsert tem check removed in last commit.
4806 (Fenlarge_window, Fshrink_window): Have argument names and
4807 doc-string follow Elisp manual more closely.
4808
48092008-10-18 Eli Zaretskii <eliz@gnu.org>
4810
4811 * fileio.c (Fset_file_modes): Doc fix.
4812
48132008-10-18 Martin Rudalics <rudalics@gmx.at>
4814
4815 * window.c (Fwindow_width, Fset_window_start)
4816 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
4817 (Fdelete_windows_on, Freplace_buffer_in_windows):
4818 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
4819 (Fwindow_dedicated_p): Make window argument optional.
4820 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
4821 (Fset_window_buffer): Respect any non-nil dedicated value for
4822 window. Rename "buffer" argument to "buffer_or_name".
4823
48242008-10-18 Ulrich Mueller <ulm@gentoo.org>
4825
4826 * m/sh3.h: New file, machine description for SuperH.
4827
48282008-10-17 Martin Rudalics <rudalics@gmx.at>
4829
4830 * window.c (Fsplit_window): Rename arg horflag to horizontal.
4831
48322008-10-17 Kenichi Handa <handa@m17n.org>
4833
4834 * ftfont.c (ftfont_otf_features): Fix indexing
4835 gsub_gpos->FeatureList.Feature. Check the validity of indices.
4836
48372008-10-16 Magnus Henoch <mange@freemail.hu>
4838
4839 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
4840 (Fdbus_call_method_asynchronously): Ditto.
4841 This change makes C-h f display the argument list.
4842
48432008-10-16 Chong Yidong <cyd@stupidchicken.com>
4844
4845 * fileio.c (Fexpand_file_name): Doc fix.
4846
4847 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
4848 of :foreground and :background equivalent to unspecified (20.x
4849 compatibility).
4850
48512008-10-15 Eli Zaretskii <eliz@gnu.org>
4852
4853 * buffer.c (syms_of_buffer): Doc fix.
4854
48552008-10-14 Kenichi Handa <handa@m17n.org>
4856
4857 * font.c (font_clear_prop): When clearing font width, clear the
4858 average width field too.
4859
48602008-10-12 Andreas Schwab <schwab@suse.de>
4861
4862 * ftfont.c (ftfont_shape_by_flt): Make static.
4863 * ftfont.h (ftfont_shape_by_flt): Don't declare.
4864
4865 * font.c: Don't include <m17n-flt.h>.
4866
48672008-10-10 Eli Zaretskii <eliz@gnu.org>
4868
4869 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
4870
48712008-10-09 Eli Zaretskii <eliz@gnu.org>
4872
4873 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
4874 away code.
4875
48762008-10-09 Chong Yidong <cyd@stupidchicken.com>
4877
4878 * dispnew.c (update_text_area): Avoid looping due to large glyph
4879 overhangs (bug#1070).
4880
48812008-10-09 Kenichi Handa <handa@m17n.org>
4882
4883 * fontset.c (face_for_char): If face->fontset is negative, just
4884 return ascii_face.
4885
f5385255
SM
4886 * font.c (font_delete_unmatched): Fix previous change.
4887 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
4888
48892008-10-09 Martin Rudalics <rudalics@gmx.at>
4890
4891 * frame.c (Fraise_frame): On text-only terminals select frame in
4892 order to make it visible. (Bug#1061)
4893
48942008-10-08 Chong Yidong <cyd@stupidchicken.com>
4895
4896 * fontset.c (fontset_find_font): Check frame validity.
4897
48982008-10-07 Chong Yidong <cyd@stupidchicken.com>
4899
a9b555d3 4900 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
4901 (xg_display_close): Allow Emacs to close all displays (bug#985).
4902
49032008-10-06 Andreas Schwab <schwab@suse.de>
4904
f5385255 4905 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
4906
49072008-10-06 Chong Yidong <cyd@stupidchicken.com>
4908
f5385255 4909 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 4910
a9b555d3 4911 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
4912
4913 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
4914 during initialization.
4915
49162008-10-04 Eli Zaretskii <eliz@gnu.org>
4917
4918 * xdisp.c (redisplay_internal): If frame switched, redisplay the
4919 whole thing on MSDOS frames as well as on a TTY.
4920
4921 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
4922 well as for TTY.
4923 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
4924 well as on a TTY.
4925
4926 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
4927 as well as for TTY.
4928
4929 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
4930
4931 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
4932 MSDOS frames as well.
4933
49342008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4935
4936 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
4937 correct arguments.
b71ac3dd 4938 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
4939
49402008-10-03 Glenn Morris <rgm@gnu.org>
4941
4942 * emacs.c (USAGE1): Add --daemon.
4943
49442008-10-02 Eli Zaretskii <eliz@gnu.org>
4945
4946 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
4947 100, so it's in percents as advertised.
4948
49492008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4950
4951 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
4952 (ns_output.current_cursor, ns_output.desired_cursor)
4953 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
4954 (FRAME_NEW_CURSOR_COLOR): Remove.
4955
4956 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 4957 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
4958 enumeration (HOLLOW_BOX_CURSOR, etc.).
4959
4960 * nsterm.m (ns_frame_rehighlight): Remove commented code.
4961 (draw_window_cursor): Simplify code.
f5385255
SM
4962 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
4963 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 4964 updates manually.
a9b555d3
JB
4965 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
4966 Use core Emacs cursor types.
aac0c6e3 4967
b8ff72fa 4968 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
4969
49702008-10-02 Martin Rudalics <rudalics@gmx.at>
4971
4972 * process.c (Faccept_process_output): Fix doc-string.
4973
49742008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4975
4976 * gmalloc.c (__sbrk): Also define for uClibc.
4977
4978 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
4979 for uClibc.
4980
49812008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4982
4983 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
4984 styles.
4985 (nsfont_open): Reenable the cache.
4986
49872008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4988
4989 * font.c (font_matching_entity): Reflect ATTRS in font selection.
4990 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
4991
49922008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
4993
4994 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
4995 a suspended terminal.
4996
49972008-09-30 Michael Albinus <michael.albinus@gmx.de>
4998
4999 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5000
50012008-09-30 Eli Zaretskii <eliz@gnu.org>
5002
5003 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5004
50052008-09-30 Chong Yidong <cyd@stupidchicken.com>
5006
5007 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5008 in a continued line coincides with a line beginning.
5009
50102008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5011
5012 * nsfont.m (nsfont_trait_distance): Fix bug.
5013 (nsfont_list): Return a list rather than a vector (syncs with Handa
5014 changes of 2008-05-14).
5015 (nsfont_open): Improve logging.
5016
50172008-09-29 Andreas Schwab <schwab@suse.de>
5018
5019 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5020
50212008-09-28 Martin Rudalics <rudalics@gmx.at>
5022
5023 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5024 name as char-resolve-modifiers.
5025 Reported by: Markus Triska <markus.triska@gmx.at>
5026
50272008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5028
5029 * dispnew.c (init_display): Return earlier when running as a daemon.
5030
50312008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5032
5033 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5034
50352008-09-27 Eli Zaretskii <eliz@gnu.org>
5036
5037 * composite.c (Fcomposition_get_gstring)
5038 (Fcompose_region_internal, Fcompose_string_internal)
5039 (Ffind_composition_internal): Doc fix.
5040 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5041 (syms_of_composite) <auto-composition-function>: Doc fix.
5042 (syms_of_composite) <composition-function-table>: Doc fix.
5043
50442008-09-25 Chong Yidong <cyd@stupidchicken.com>
5045
5046 * search.c (wordify): New argument for lax word-ends.
5047 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5048
50492008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5050
5051 * lisp.h (is_daemon): Declare.
5052 * dispnew.c (init_display): Do not try to initialize the terminal
5053 when running as a daemon.
5054
50552008-09-22 Chong Yidong <cyd@stupidchicken.com>
5056
5057 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5058 x_display_pixel_height.
5059
50602008-09-22 Martin Rudalics <rudalics@gmx.at>
5061
5062 * undo.c (record_point): Don't call Fundo_boundary for first
5063 change. (Bug#731)
5064
50652008-09-22 Juanma Barranquero <lekktu@gmail.com>
5066
5067 * emacs.c (Fdaemonp): Doc fix.
5068
50692008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5070
5071 * emacs.c (main): Place #ifdef in the proper place.
5072
50732008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5074
5075 * emacs.c (standard_args): Add --daemon.
5076 (main): Disconnect from the terminal when --daemon is passed.
5077 (is_daemon): New variable.
5078 (Fdaemonp): New function.
5079 (syms_of_emacs): Defsubr it.
5080
50812008-09-20 Chong Yidong <cyd@stupidchicken.com>
5082
5083 * xdisp.c (get_next_display_element): Handle string display
5084 correctly when checking for the end of a box run.
5085
50862008-09-20 Glenn Morris <rgm@gnu.org>
5087
5088 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5089 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5090 (Frename_file): Avoid copying to trash if a rename involves
5091 a delete. (Bug#964).
5092
50932008-09-20 Eli Zaretskii <eliz@gnu.org>
5094
5095 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5096 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5097 frames as well as termcap frames.
5098 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5099 get_named_tty.
5100
51012008-09-19 Eli Zaretskii <eliz@gnu.org>
5102
5103 * process.c (procfs_system_process_attributes): Fix cmdline in
5104 case /proc/PID/cmdline is empty.
5105
5106 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5107 x_display_pixel_height.
5108
51092008-09-19 Juanma Barranquero <lekktu@gmail.com>
5110
5111 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5112
5113 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5114 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5115
51162008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5117
5118 * dispextern.h (struct it): Move line_wrap away from the middle of
5119 bitfields. Move voffset in struct iterator_stack_entry after the
5120 bitfields. Move tab_width near after another short.
5121
51222008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5123
5124 * frame.h (struct frame): Move alpha from the middle of bitfields.
5125
5126 * window.h (struct window): Move frozen_window_start_p after the
5127 rest of the bitfields to reduce padding.
5128
51292008-09-18 Chong Yidong <cyd@stupidchicken.com>
5130
5131 * xterm.h (x_display_info): Remove `height' and `width' members.
5132
5133 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5134
5135 * w32term.h (w32_display_info): Remove `height', `width',
5136 `height_in', and `width_in' members.
5137
b8ff72fa
SM
5138 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5139 New functions.
aac0c6e3
MR
5140 (x_calc_absolute_position): Use them.
5141 (x_term_init): Omit removed `height' and `width' members.
5142
b8ff72fa
SM
5143 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5144 New functions.
aac0c6e3
MR
5145 (w32_read_socket, x_calc_absolute_position): Use them.
5146 (w32_initialize_display_info, w32_term_init): Omit removed members
5147 of w32_display_info.
5148
b8ff72fa
SM
5149 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5150 New functions.
5151 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5152
b8ff72fa
SM
5153 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5154 New functions.
aac0c6e3
MR
5155 (x_calc_absolute_position): Use them.
5156 (x_term_init): Omit removed `height' and `width' members.
5157
5158 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5159 (compute_tip_xy):
5160 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5161 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5162 x_display_pixel_width.
5163
51642008-09-18 Kenichi Handa <handa@m17n.org>
5165
5166 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5167 (composition_compute_stop_pos): Fix handling of static composition.
5168 (Fcomposition_get_gstring): Check FROM and TO at first.
5169
51702008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5171
46e722a9 5172 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5173 mixup (YAILOM).
5174
51752008-09-17 Chong Yidong <cyd@stupidchicken.com>
5176
5177 * indent.c (Fvertical_motion): Use position reported by iterator
5178 instead of PT for determining screen motion (bug#943).
5179
51802008-09-17 Romain Francoise <romain@orebokech.com>
5181
5182 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5183
51842008-09-17 Kenichi Handa <handa@m17n.org>
5185
5186 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5187
5188 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5189 if necessary.
5190
51912008-09-16 Kenichi Handa <handa@m17n.org>
5192
5193 * coding.c (make_conversion_work_buffer): Avoid calling
5194 Fget_buffer_create if it is not necessary.
5195
51962008-09-15 Martin Rudalics <rudalics@gmx.at>
5197
5198 * window.c (Fselect_window): Don't update window_select_count and
5199 use_time when norecord is not nil.
5200
52012008-09-14 Kenichi Handa <handa@m17n.org>
5202
5203 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5204 specpdl_ptr.
5205
52062008-09-12 Kenichi Handa <handa@m17n.org>
5207
5208 * indent.c (scan_for_column): Don't handle automatic composition
5209 if the current buffer is not associated with a window.
5210
5211 * composite.c (composition_reseat_it): If the current buffer is
5212 not associated with a window, ignore the automatic composition.
5213 (find_automatic_composition): Likewise.
5214
52152008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5216
5217 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5218 (Fgpm_mouse_stop): Use it.
5219 * termhooks.h (close_gpm): Declare.
5220 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5221 connection if Gpm_GetEvent fails.
5222
5223 * window.c (set_window_buffer): Always preserve current-buffer.
5224
52252008-09-12 Glenn Morris <rgm@gnu.org>
5226
5227 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5228
52292008-09-11 Glenn Morris <rgm@gnu.org>
5230
5231 * charset.c (charset-map-path): Doc fix.
5232
52332008-09-10 Kenichi Handa <handa@m17n.org>
5234
5235 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5236
5237 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5238 compose a grapheme cluster with the preceding base glyph.
5239
5240 * composite.c (composition_compute_stop_pos): Fix previous change.
5241 Reset cmp_it->id to -1 at first.
5242
52432008-09-10 Glenn Morris <rgm@gnu.org>
5244
5245 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5246
52472008-09-09 Chong Yidong <cyd@stupidchicken.com>
5248
5249 * keyboard.c (read_key_sequence): Reapply translation maps when
5250 switching keyboards.
5251
52522008-09-09 Kenichi Handa <handa@m17n.org>
5253
5254 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5255 characters.
5256
5257 * composite.c (FORWARD_CHAR): Fix calculation
5258 of (POSITION).pos_byte.
5259 (composition_compute_stop_pos): Limit the search of composition to
5260 at most 500 characters ahead. If we reach the limit or find a
5261 newline, set cmp_it->ch to -2 and return 0.
5262 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5263
52642008-09-08 Kenichi Handa <handa@m17n.org>
5265
5266 * indent.c (Fvertical_motion): Be sure to set
5267 it_overshoot_expected if it.cmp_it.id is non-negative.
5268
52692008-09-07 Andreas Schwab <schwab@suse.de>
5270
5271 * callproc.c (Fcall_process): Don't hold references to string data
5272 across garbage collection. Move initialisation of new_argv down
5273 to avoid compiler bug.
5274
52752008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5276
5277 * process.c (Fsystem_process_attributes): Doc fix.
5278
52792008-09-07 Chong Yidong <cyd@stupidchicken.com>
5280
5281 * callproc.c (Fcall_process): Canonicalize current directory name.
5282
5283 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5284 iterator advances to the next line if the current line ends in a
5285 continued tab.
5286
52872008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5288
5289 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5290 member to point to cmp_from.
5291
5292 * xdisp.c: Doc fix for references to gidx data member.
5293
52942008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5295
5296 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5297
52982008-09-07 Kenichi Handa <handa@m17n.org>
5299
5300 * composite.c (FORWARD_CHAR): Check STOP after
5301 incrementing (POSITION).pos.
5302
53032008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5304
5305 * process.c (Fsystem_process_attributes): Doc fix.
5306
53072008-09-06 Chong Yidong <cyd@stupidchicken.com>
5308
5309 * keyboard.c (Ftop_level): Doc fix.
5310
53112008-09-06 Eli Zaretskii <eliz@gnu.org>
5312
5313 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5314 minibuffer, don't let lower part of menu invade the echo area.
5315
5316 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5317 "char *q" to access menu text and advance through it. Revert the
5318 change that displayed ">" instead of ASCII character 0x10.
5319
53202008-09-05 Eli Zaretskii <eliz@gnu.org>
5321
5322 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5323 toggle boxes and radio buttons on MS-DOS as well.
5324
53252008-09-05 Kenichi Handa <handa@m17n.org>
5326
5327 * composite.c (autocmp_chars): Check lookback count.
5328 (composition_compute_stop_pos): Set cmp_it->lookback.
5329 (composition_reseat_it): Check lookback count.
5330 (struct position_record): New struct.
5331 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5332 (find_automatic_composition): New function.
5333 (composition_adjust_point): Use find_automatic_composition.
5334
5335 * dispextern.h (struct composition_it): New member lookback.
5336
53372008-09-02 Chong Yidong <cyd@stupidchicken.com>
5338
5339 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5340 if moving by a single line.
5341
53422008-09-02 Andreas Schwab <schwab@suse.de>
5343
5344 * xterm.c (x_delete_display): Fix merge error.
5345
5346 * fileio.c (Fexpand_file_name): Remove unused variables.
5347
53482008-09-02 Eli Zaretskii <eliz@gnu.org>
5349
5350 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5351 storage on all platforms, not just on DOS_NT.
5352
53532008-09-02 Jason Rumney <jasonr@gnu.org>
5354
b8ff72fa
SM
5355 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5356 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5357
53582008-09-01 Chong Yidong <cyd@stupidchicken.com>
5359
5360 * xfaces.c (Finternal_set_alternative_font_family_alist)
5361 (Finternal_set_alternative_font_registry_alist): Properly copy
5362 entire alist structure.
5363
53642008-09-01 Kenichi Handa <handa@m17n.org>
5365
d66c0241 5366 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5367 representative chars of the script is a vector.
d66c0241
JB
5368 (ftfont_list): Handle the case where the representative chars of
5369 the script is a vector.
aac0c6e3
MR
5370
5371 * character.c (syms_of_character): Docstring of
5372 script-representative-chars fixed.
5373
53742008-08-31 Eli Zaretskii <eliz@gnu.org>
5375
5376 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5377 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5378 the menu. Allocate larger buffer for `text', to account for
5379 possible ^C characters.
5380
53812008-08-31 Martin Rudalics <rudalics@gmx.at>
5382
5383 * xdisp.c (prepare_menu_bars): Don't call
5384 Vwindow_size_change_functions with arg Qt.
5385
53862008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5387
5388 * font.h (font_range):
5389 * fileio.c (report_file_error):
46e722a9
SM
5390 * composite.c (composition_update_it): Yet another int/Lisp_Object
5391 mixup (YAILOM).
aac0c6e3
MR
5392
53932008-08-30 Glenn Morris <rgm@gnu.org>
5394
5395 * data.c (Fmake_variable_frame_local): Doc fix.
5396
5397 * frame.c (Fmodify_frame_parameters): Doc fix.
5398
53992008-08-30 Eli Zaretskii <eliz@gnu.org>
5400
5401 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5402 needed by GetTokenInformation.
5403 (w32_system_process_attributes): Check return values of all system
5404 APIs.
5405
5406 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5407 only when the state changes.
5408 (IT_update_begin, IT_update_end): Add termscript trace.
5409
5410 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
5411 clipboard is unavailable. Set dst to NULL if it doesn't point to
5412 malloc'ed data.
5413 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
5414 passing random values to xfree.
5415
5416 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 5417 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
5418
54192008-08-29 Jason Rumney <jasonr@gnu.org>
5420
5421 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
5422
54232008-08-29 Eli Zaretskii <eliz@gnu.org>
5424
5425 * composite.c (fill_gstring_body): Avoid compiler warnings.
5426
5427 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
5428 LGLYPH_SET_CODE to avoid compiler warnings.
5429
2ae37cf0 5430 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
5431
5432 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
5433
5434 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
5435 LGLYPH_SET_CODE.
5436
54372008-08-29 Kenichi Handa <handa@m17n.org>
5438
5439 * fileio.c (report_file_error): Don't downcase the first character
5440 of errstring if it is still unibyte.
5441
54422008-08-29 Kenichi Handa <handa@m17n.org>
5443
5444 These changes are to re-implement the automatic composition so
5445 that it doesn't use text properties.
5446
5447 * Makefile.in (ftfont.o): Depend on composite.h.
5448 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
5449
5450 * character.h (Vunicode_category_table): Extern it.
5451
5452 * character.c (Vunicode_category_table): New variable.
5453 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
5454
5455 * chartab.c (optimize_sub_char_table): Perform more greedy
5456 optimization.
5457
b8ff72fa
SM
5458 * composite.h (enum composition_method):
5459 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
5460 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
5461 (Vcomposition_function_table): Extern it.
5462 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
5463 (composition_gstring_put_cache, composition_gstring_from_id)
5464 (composition_gstring_p, composition_gstring_width)
5465 (composition_compute_stop_pos, composition_reseat_it)
5466 (composition_update_it, composition_adjust_point): Extern them.
5467 (Fcomposition_get_gstring): EXFUN it.
5468
d66c0241 5469 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
5470 (Vcomposition_function_table)
5471 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
5472 (gstring_hash_table, gstring_work, gstring_work_headers):
5473 New variables.
aac0c6e3
MR
5474 (gstring_lookup_cache, composition_gstring_put_cache)
5475 (composition_gstring_from_id, composition_gstring_p)
5476 (composition_gstring_width, fill_gstring_header)
5477 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
5478 (composition_reseat_it, composition_update_it)
b8ff72fa 5479 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
5480 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
5481 and gstring_work_headers. DEFVAR_LISP composition-function-table.
5482 Defsubr compostion_get_gstring.
5483
5484 * dispextern.h (struct glyph): New union u.cmp. Delete the member
5485 cmp_id.
5486 (struct glyph_string): Delete the member gidx. New members
5487 cmp_id, cmp_from, and cmp_to.
5488 (enum it_method): Delete GET_FROM_COMPOSITION.
5489 (struct composition_it): New struct.
5490 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
5491 Delete c, len, cmp_id, cmp_len in u.comp.
5492
5493 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 5494 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 5495 (enum lglyph_indices): Likewise.
b8ff72fa 5496 (font_range): Adjust extern.
aac0c6e3
MR
5497 (font_fill_lglyph_metrics): Extern it.
5498
5499 * font.c (QCf): New variable.
5500 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5501 (font_prepare_composition): Delete this function.
5502 (font_range): Type and arguments changed.
5503 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
5504 (font_fill_lglyph_metrics): New function.
b8ff72fa 5505 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 5506 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
5507 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
5508 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
5509
5510 * fontset.h (font_for_char): Extern it.
5511
5512 * fontset.c (font_for_char): New function.
5513
5514 * ftfont.c: Include composite.h.
5515 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 5516 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
5517
5518 * indent.c: Include composite.h and dispextern.h.
5519 (check_composition): Delete this function.
5520 (scan_for_column): Handle composition by
5521 composition_compute_stop_pos, composition_reseat_it, and
5522 composition_update_it.
5523 (compute_motion): Likewise.
5524 (Fvertical_motion): Fix checking of composition.
5525
5526 * keyboard.c (adjust_point_for_property): Check composition by
5527 composition_adjust_point.
5528
b8ff72fa 5529 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
5530 struct glyph_string.
5531
b8ff72fa
SM
5532 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
5533 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
5534 struct glyph.
5535 (produce_composite_glyph): Likewise.
5536
b8ff72fa
SM
5537 * w32term.c (x_draw_composite_glyph_string_foreground):
5538 Adjust for the change of struct glyph_string.
aac0c6e3
MR
5539 (x_draw_glyph_string): Likewise.
5540
5541 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
5542 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
5543
5544 * xdisp.c: Include font.h.
5545 (it_props): Delete the entry for Qauto_composed.
5546 (init_iterator): Initialize it->cmp_it.id to -1.
5547 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 5548 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
5549 (handle_auto_composed_prop): Delete it.
5550 (handle_composition_prop): Handle only static composition.
5551 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
5552 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 5553 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
5554 (pop_it): Likewise.
5555 (get_next_element): Delete next_element_from_composition.
5556 (CHAR_COMPOSED_P): New macro.
5557 (get_next_display_element): For automatic composition, get a face
5558 from the font in the glyph-string.
5559 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 5560 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
5561 (next_element_from_string): Check if the character at the current
5562 position is composed by CHAR_COMPOSED_P.
5563 (next_element_from_buffer): Likewise.
d66c0241
JB
5564 (next_element_from_composition): Adjust for the change of struct it.
5565 Update it->cmp_it.
b8ff72fa
SM
5566 (dump_glyph): Adjust for the change of struct glyph.
5567 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
5568 it and struct glyph. Don't handle automatic composition here.
5569 (fill_gstring_glyph_string): New function.
5570 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 5571 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
5572 (BUILD_GSTRING_GLYPH_STRING): New macro.
5573 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
5574 automatic composition.
b8ff72fa 5575 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 5576 struct glyph.
b8ff72fa 5577 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 5578
b8ff72fa 5579 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
5580 the change of struct glyph_string.
5581 (x_draw_glyph_string): Likewise.
5582
55832008-08-29 Glenn Morris <rgm@gnu.org>
5584
5585 * buffer.c (word-wrap): Doc fix.
5586 * xdisp.c (truncate-partial-width-windows): Doc fix.
5587 Increase default to 50.
5588
55892008-08-29 Chong Yidong <cyd@stupidchicken.com>
5590
5591 * xdisp.c (update_tool_bar_unwind): New function.
5592 (update_tool_bar): Temporarily set selected frame before building
5593 tool-bar items.
5594
55952008-08-28 Michael Albinus <michael.albinus@gmx.de>
5596
5597 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
5598 snprintf, respectively.
5599 (xd_append_arg): Convert strings with Fstring_make_unibyte.
5600
56012008-08-28 Chong Yidong <cyd@stupidchicken.com>
5602
5603 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
5604 LDFLAGS to GNUstep CC invocation.
5605
56062008-08-27 Chong Yidong <cyd@stupidchicken.com>
5607
5608 * indent.c (Fvertical_motion): Revert last change. Handle the
5609 general case where we are moving forward, and PT spans multiple
5610 screen lines.
5611
5612 * eval.c (find_handler_clause): Temporarily increase
5613 max-lisp-eval-depth while printing the backtrace buffer, to
5614 guarantee that help-mode code can run.
5615
56162008-08-27 Eli Zaretskii <eliz@gnu.org>
5617
5618 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
5619 colors under -rv.
5620 (IT_set_frame_parameters): Don't swap foreground and background
5621 colors if `(reverse . t)' is present in the frame properties.
5622 (internal_terminal_init): Call init_frame_faces only for the
5623 initial frame.
5624
56252008-08-27 Andreas Schwab <schwab@suse.de>
5626
5627 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
5628
56292008-08-27 Andreas Schwab <schwab@suse.de>
5630
5631 * search.c (search_buffer): Set char_base to zero only at the end.
5632
56332008-08-27 Kenichi Handa <handa@m17n.org>
5634
b8ff72fa 5635 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
5636
56372008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
5638
5639 * xterm.c (x_term_init): Temporarily hide the partially
5640 initialized terminal while calling vendor-specific-keysyms.
5641
56422008-08-26 Eli Zaretskii <eliz@gnu.org>
5643
5644 * msdos.c (internal_terminal_init): Most initializations done only
5645 once, especially initial_screen_colors[] and termscript open.
5646
56472008-08-26 Chong Yidong <cyd@stupidchicken.com>
5648
5649 * eval.c (Fcondition_case): Doc fix.
5650
5651 * widgetprv.h (EmacsFramePart): Change font member to the new font
5652 struct.
5653
5654 * widget.c: Include character.h and font.h for XSETFONT.
5655 (setup_frame_gcs): Compute X font id from font struct, just once.
5656
56572008-08-26 Eli Zaretskii <eliz@gnu.org>
5658
5659 * term.c (get_named_tty): Fix last change.
5660
56612008-08-26 Chong Yidong <cyd@stupidchicken.com>
5662
5663 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 5664 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
5665
56662008-08-25 Eli Zaretskii <eliz@gnu.org>
5667
5668 * frame.c (do_switch_frame): Mark previously displayed frame as
5669 obscured for FRAME_MSDOS_P frames as well.
5670
56712008-08-24 Eli Zaretskii <eliz@gnu.org>
5672
5673 * frame.c (make_terminal_frame): Initialize f->terminal,
5674 f->terminal->reference_count, and scroll bars on MS-DOS as well.
5675 Set the top frame to newly created frame.
5676 (Fmake_terminal_frame): Reuse the_only_display_info.
5677
5678 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
5679 estimating available memory.
5680
b97439ce 56812008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
5682
5683 * nsterm.m (ns_draw_window_cursor): Don't call
5684 NSDisableScreenUpdates and NSEnableScreenUpdates on
5685 non-NS_IMPL_COCOA systems.
5686
56872008-08-23 Andreas Schwab <schwab@suse.de>
5688
5689 * process.c (procfs_system_process_attributes): Fix use of
5690 uninitialized variables.
5691
56922008-08-23 Eli Zaretskii <eliz@gnu.org>
5693
5694 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
5695
5696 * dispnew.c (init_display): Remove MS-DOS specific conditions for
5697 calling tty-set-up-initial-frame-faces.
5698
b8ff72fa
SM
5699 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
5700 Allow MSDOS frames along with X frames.
aac0c6e3
MR
5701
5702 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
5703 addition to output_termcap.
5704
5705 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
5706
5707 * termchar.h (FRAME_TTY): Support output_msdos_raw.
5708 (struct tty_display_info) [MSDOS]: Add fields related to mouse
5709 highlight.
5710
5711 * process.c [!subprocesses]: Define QCname.
5712 (syms_of_process): Intern and staticpro it.
5713
5714 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
5715 Adjust for changes in encoding/decoding routines.
5716 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
5717 encode_coding and decode_coding.
5718
b8ff72fa 5719 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
5720
5721 * dosfns.c: Include frame.h before termhooks.h.
5722 (dos_cleanup): Use CURTTY ()->termscript instead of a global
5723 variable termscript.
5724
5725 * s/msdos.h (USER_FULL_NAME): Define.
5726 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
5727
5728 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
5729 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
5730 pw->pw_gecos.
5731
5732 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
5733 SELECTED_FRAME as additional (1st) argument.
5734 (tty_read_avail_input): Handle output_msdos_raw in
5735 addition to output_termcap.
5736
5737 * msdos.c: Include frame.h before termhooks.h.
5738 (mouse_on, mouse_off, mouse_moveto, mouse_init)
5739 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
5740 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
5741 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
5742 (IT_set_terminal_modes, IT_reset_terminal_modes)
5743 (IT_set_frame_parameters): Use tty->termscript instead of a global
5744 variable termscript.
5745 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
5746 global variable terminal_coding. Don't refer to
5747 Vnonascii_translation_table.
5748 (internal_terminal_init): Set Vwindow_system in current_kboard.
5749 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
5750 Announce date and time of session start, if termscript is open.
5751 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
5752 term.c:init_tty). Open termscript only of not already open.
5753 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
5754 here instead of dos_ttraw. Don't initialize display if this is an
5755 initial tty. Don't set FRAME_FONT.
5756 (Vwindow_system_version): Bump to 23.
5757 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
5758 is available, set up mouse_position_hook.
5759 (dos_ttraw, IT_set_terminal_modes): If called with initial
5760 terminal, do nothing.
5761 (IT_set_frame_parameters): Handle the Qtty_type frame
5762 parameter by calling internal_terminal_init.
5763 (dos_set_window_size, show_mouse_face)
5764 (clear_mouse_face, IT_note_mode_line_highlight)
5765 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
5766 (dos_rawgetc): Use tty_display_info instead of x_display_info.
5767 (initialize_msdos_display): New function.
5768 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
5769 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
5770 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
5771 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 5772 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
5773 (request_sigio, unrequest_sigio): Don't define, now defined on
5774 sysdep.c.
5775 (IT_write_glyphs): Rewrite to use encode_terminal_code.
5776
5777 * term.c [MSDOS]: Include msdos.h.
5778 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
5779 conditional to DOS_NT. Allow only one call to this function in a
5780 session. Don't allocate a new struct tty_display_info; instead,
5781 reuse the_only_display_info. Call get_tty_size to get screen
5782 dimensions. Call init_baud_rate to set bad_rate.
5783 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
5784 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 5785 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
5786 (get_tty_terminal, get_named_tty, Ftty_type)
5787 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
5788 output_termcap.
b8ff72fa
SM
5789 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
5790 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 5791 only when subprocesses are supported.
aac0c6e3
MR
5792
5793 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
5794 f->output_data.x.
5795 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
5796 terminal devices.
5797
5582fbc7 5798 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
5799 x_output.
5800 (FRAME_FONT): Use output_data.tty.
5801 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
5802 (struct x_display_info): Rename from display_info. Update all users in
5803 msdos.c.
aac0c6e3 5804 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 5805 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
5806 (dos_ttraw): Update prototype.
5807
5808 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
5809 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
5810
58112008-08-23 Jason Rumney <jasonr@gnu.org>
5812
5813 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
5814 (fn_TIFFSetDirectory): New library function used.
5815 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
5816 (tiff_load): Use :index to select among multiple images. Set count
5817 property when multiple images exist.
5818 (gif_format): Use :index, not :image.
5819
58202008-08-23 Chong Yidong <cyd@stupidchicken.com>
5821
5822 * xdisp.c (try_scrolling): Check INT_MAX instead of
5823 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
5824 to obtain INT_MAX.
5825
58262008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
5827
5828 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
5829
58302008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
5831
5832 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
5833 GNUstep library location.
5834
58352008-08-21 Chong Yidong <cyd@stupidchicken.com>
5836
5837 * xfaces.c (x_update_menu_appearance): Check validity of menu font
5838 before using it.
5839
5840 * puresize.h (BASE_PURESIZE): Increase to 1250000.
5841
58422008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5843
5844 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
5845 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
5846 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
5847 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
5848 (EmacsApp-cursor_blink_handler): Remove declaration.
5849 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
5850 match 01 Feb 2008 changes in xterm.c.
5851 (ns_read_socket): Add cast to avoid warning.
5852 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
5853 GNUstep.
5854
58552008-08-20 Chong Yidong <cyd@stupidchicken.com>
5856
5857 * xselect.c (x_get_foreign_selection): Return nil if desired
5858 selection could not be obtained, instead of signalling an error.
5859
58602008-08-20 David Reitter <david.reitter@gmail.com>
5861
5862 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
5863 * nsterm.m: Remove ns-specific code for cursor blinking.
5864 (ns_draw_window_cursor): Clear cursor properly rather than
5865 redrawing the area. Respect width of bar cursors.
5866 These changes enable the use of generic blink-cursor-mode and
5867 generic cursor types in NS and support smooth cursor movements (do
5868 not blink off after command).
5869 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
5870 Nextstep, too.
5871
58722008-08-19 Kenichi Handa <handa@m17n.org>
5873
5874 * font.c (Vfont_log_deferred): New variable.
5875 (font_add_log): Check Vfont_log_deferred.
5876 (font_deferred_log): New function.
5877
5878 * font.h (font_deferred_log): Extern it.
5879
5880 * fontset.c (reorder_font_vector): Use encoding charset of fonts
5881 for sorting.
5882 (face_for_char): Use deferred log.
5883
58842008-08-18 Kenichi Handa <handa@m17n.org>
5885
5886 * fontset.c (face_for_char): Add font log.
5887
5888 * font.c (font_add_log): Add the font properties :script, :lang,
5889 and :otf in the log.
5890
58912008-08-17 Chong Yidong <cyd@stupidchicken.com>
5892
5893 * xdisp.c: Remove dead code.
5894 (handle_invisible_prop, next_overlay_string): Defer call to
5895 setup_for_ellipsis.
5896 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
5897
58982008-08-15 Chong Yidong <cyd@stupidchicken.com>
5899
5900 * xfaces.c (lookup_derived_face): Properly handle possible zero
5901 return value of get_lface_attributes.
5902 (merge_faces): Don't tell lookup_derived_face to signal an error
5903 if face is not found.
5904
5905 * dired.c (Fdirectory_files): Doc fix.
5906
5907 * process.c (make_process): Initialize kill_without_query struct
5908 member.
5909
59102008-08-15 Eli Zaretskii <eliz@gnu.org>
5911
5912 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
5913 Alternative calculation of totphys for Visual Studio 6.
5914
5915 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
5916
5917 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
5918 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
5919 All users changed.
5920 (stat): Only root directory passed to GetDriveType. Allow RAM
5921 disk as well as local fixed disk when w32-get-true-file-attributes
5922 is set to `local'.
5923 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
5924 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
5925 (w32_cached_id, w32_add_to_cache): New functions.
5926 (get_name_and_id): Look account names in the cache before calling
5927 lookup_account_sid.
5928 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
5929 New initialization flags.
5930 (globals_of_w32): Initialize them to zero.
5931 (w32_system_process_attributes): Use w32_cached_id and
5932 w32_add_to_cache.
5933
59342008-08-14 Lawrence Mitchell <wence@gmx.li>
5935
5936 * lread.c (Fread_char, Fread_char_exclusive): If no character
5937 event is read before timeout is reached, return nil, rather than
5938 converting to a number.
5939
59402008-08-14 Chong Yidong <cyd@stupidchicken.com>
5941
5942 * fns.c (use_dialog_box): Doc fix.
5943
5944 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
5945 on OS X.
5946
59472008-08-13 Chong Yidong <cyd@stupidchicken.com>
5948
5949 * frame.c (Qns_parse_geometry): New var.
5950 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
5951
59522008-08-11 Chong Yidong <cyd@stupidchicken.com>
5953
5954 * xdisp.c (x_produce_glyphs): Handle the case when font has no
5955 space character in calculating tabs.
5956
59572008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
5958
5959 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
5960
59612008-08-10 Glenn Morris <rgm@gnu.org>
5962
5963 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
5964 silence gcc "limited range of data type" warnings in some
5965 make_fixnum_or_float calls.
5966
59672008-08-09 Eli Zaretskii <eliz@gnu.org>
5968
5969 * w32.c (w32_system_process_attributes): If the process does not
5970 exist, return nil.
5971
5972 * w32.c: Include thelp32.h, psapi.h and coding.h.
5973 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
5974 declarations.
5975 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
5976 (Process32Next_Proc): New typedefs.
5977 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
5978 (g_b_init_process32_next, g_b_init_open_thread_token)
5979 (g_b_init_impersonate_self, g_b_init_revert_to_self)
5980 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
5981 (g_b_init_get_process_working_set_size)
5982 (g_b_init_global_memory_status_ex): New static variables.
5983 (globals_of_w32): Initialize them.
5984 (create_toolhelp32_snapshot, process32_first, process32_next)
5985 (open_thread_token, impersonate_self, revert_to_self)
5986 (get_process_memory_info, get_process_working_set_size)
5987 (global_memory_status, global_memory_status_ex): New wrapper
5988 functions.
5989 (w32_list_system_processes, w32_system_process_attributes)
5990 (enable_privilege, restore_privilege, ltime, process_times):
5991 New functions.
5992 (convert_time_raw): New function.
5993 (convert_time): Remove conversion of FILETIME into time in 100
5994 nsec units, call convert_time_raw instead.
5995
5996 * process.h (w32_list_system_processes, w32_system_process_attributes):
5997 Add prototypes.
5998 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
5999 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6000 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6001 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6002
6003 * process.c (Fsystem_process_attributes): Doc fix.
6004
60052008-08-08 Chong Yidong <cyd@stupidchicken.com>
6006
6007 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6008 a continued multi-char glyph; if so, advance to the actual glyph.
6009
60102008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6011
6012 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6013
6014 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6015 (.m.o): Use it.
6016 * config.in: Regenerate.
6017
60182008-08-07 Chong Yidong <cyd@stupidchicken.com>
6019
6020 * xdisp.c (redisplay_window): Revert last change.
6021 (try_window): Check bottom scroll margin too.
6022
60232008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6024
6025 * config.in: Regenerate.
6026
6027 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6028 -list-load-path-shadows'.
6029 (nsgui.h): Reduce number of things depending on it.
6030
60312008-08-06 Chong Yidong <cyd@stupidchicken.com>
6032
6033 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6034 instead of window-end which does the wrong thing at eob.
6035 (try_cursor_movement): Minor optimization.
6036 (redisplay_window): If scroll margin is defined, don't assume
6037 window doesn't need scrolling.
6038
60392008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6040
6041 * config.in: Regenerate.
6042
6043 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6044 (mostlyclean): Don't delete *.d under NS.
6045
6046 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6047
60482008-08-06 Kenichi Handa <handa@m17n.org>
6049
6050 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6051
60522008-08-06 Andreas Schwab <schwab@suse.de>
6053
6054 * config.in: Regenerate.
6055
60562008-08-05 Chong Yidong <cyd@stupidchicken.com>
6057
6058 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6059 forcing a window start.
6060
6061 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6062 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6063
60642008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6065
6066 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6067 argument.
6068
60692008-08-05 Juanma Barranquero <lekktu@gmail.com>
6070
6071 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6072 <scroll-down-aggressively, before-change-functions>:
6073 <after-change-functions>: Reflow docstrings.
6074
60752008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6076 Ken Raeburn <raeburn@gnu.org>
6077
6078 Dock menu customization, based on a patch by Ken Raeburn, plus some
6079 other fixes.
6080 * nsmenu.m (dockMenu): New variable.
6081 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6082
6083 * nsterm.h (dockMenu): Declare.
6084
6085 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6086 (ns_term_init): Initialize dockMenu.
6087 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6088 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6089 left.
6090
6091 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6092
60932008-08-04 Chong Yidong <cyd@stupidchicken.com>
6094
6095 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6096
6097 * config.in: Regenerate.
6098
60992008-08-04 Seiji Zenitani <zenitani@mac.com>
6100
6101 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6102
61032008-08-04 Chong Yidong <cyd@stupidchicken.com>
6104
6105 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6106
61072008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6108
6109 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6110
6111 * keyboard.h: Comment an #endif.
6112
6113 * lisp.h (have_menus_p): Adjust comment.
6114
6115 * menu.c (find_and_return_menu_selection): Fix comparison with
6116 client_data.
6117
6118 * nsmenu.m (popup_activated_flag): New variable.
6119 (popup_activated): New function.
6120 (menu-or-popup-active-p): New exported lisp definition.
6121 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6122 when popup done.
6123 (ns_popup_dialog): Set popup_activated_flag.
6124
6125 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6126 version for GNUstep (handled by conditional typedef in nsterm.m).
6127 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6128 in rgb.txt).
6129
6130 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6131
6132 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6133
6134 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6135
6136 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6137 shortcircuit if popup_activated like GTK and X toolkit.
6138
6139 * m/inter386.h: Change DARWIN to DARWIN_OS.
6140
6141 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6142 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6143 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6144 comment on NO_SOCK_SIGIO.
6145
61462008-08-03 Chong Yidong <cyd@stupidchicken.com>
6147
6148 * nsterm.m (windowDidResize): Remove stopModal call.
6149
61502008-08-03 Andreas Schwab <schwab@suse.de>
6151
6152 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6153 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6154
61552008-08-02 Chong Yidong <cyd@stupidchicken.com>
6156
6157 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6158 Don't use uninitialized pointer variable when using getrlimit.
6159
61602008-08-02 Jason Rumney <jasonr@gnu.org>
6161
6162 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6163
61642008-08-02 Eli Zaretskii <eliz@gnu.org>
6165
6166 * alloc.c (NSTATICS): Bump to 0x640.
6167
6168 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6169
6170 * lisp.h: Add prototype for directory_files_internal.
6171
6172 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6173 New functions.
6174 (syms_of_process): Defsubr them. Add initializations for various
6175 Q* symbols used in procfs_system_process_attributes.
6176 (procfs_list_system_processes, procfs_system_process_attributes)
6177 [HAVE_PROCFS]: New functions.
6178 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6179 (procfs_get_total_memory): New functions.
6180
61812008-08-01 Juanma Barranquero <lekktu@gmail.com>
6182
6183 * xfaces.c (Fx_load_color_file): Fix previous change;
6184 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6185
61862008-08-01 Michael Albinus <michael.albinus@gmx.de>
6187
6188 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6189
61902008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6191
6192 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6193
61942008-08-01 Chong Yidong <cyd@stupidchicken.com>
6195
6196 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6197
6198 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6199 define NSApplicationDelegateReplySuccess.
6200 (EmacsView -converstationIdentifier): Use long instead of
6201 NSInteger for GNUstep, since it doesn't have NSInteger.
6202
6203 * xmenu.c: Revert last change.
6204
6205 * keyboard.h: Fix last change.
6206
62072008-08-01 Juanma Barranquero <lekktu@gmail.com>
6208
6209 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6210 on Windows.
6211
62122008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6213
6214 Warning clearing and clean-up in NS port.
6215 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6216 Add prototypes.
6217 * nsgui.h (FACE_DEFAULT): Remove, unused.
6218 (XGCValues): Change colors to unsigned long.
6219 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6220 nsterm.m.
6221 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6222 (ns_list_fonts): Remove, unused.
6223 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6224 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6225 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6226 (nsfont_draw): Compare face colors to 0, not nil.
6227 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6228 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6229 (-addSubmenuWithTitle:): Use NSMenuItem class.
6230 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6231 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6232 (ns_clip_to_row): Make gc arg a BOOL.
6233 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6234 ns_clip_to_row() call.
6235 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6236 used). Cast FRAME_FONT assignments.
6237 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6238 (ns_string_to_lispmod): Change arg to const char.
6239 (ns_term_init): Use NSMenuItem class.
6240 (EmacsApp -openFile:): Move to different section of file.
6241 (EmacsApp -application:openFiles:): Don't return a value, call
6242 -replyToOpenOrPrint:.
6243 (EmacsView -keyDown:): Fix up cast.
6244 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6245 (EmacsView -menuDown:): Cast tag in call to
6246 find_and_call_menu_selection().
6247 (ns_list_fonts): Remove, unused.
6248 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6249 (ns_fontname_to_xlfd): Make static.
6250 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6251 Remove prototypes (now in keyboard.h).
6252 (next_menubar_widget_id): Remove, unused.
6253 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6254 Remove prototypes (now in keyboard.h).
6255 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6256
62572008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6258
6259 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6260 (floatfns.o): Depend on syssignal.h.
6261 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6262
6263 * systty.h: Fix previous change that removed BSD_TERMIOS.
6264 Add comments to #ifdefs.
6265
62662008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6267
6268 * w32fns.c (w32-load-color-file): Remove.
6269 (x-open-connection): Use renamed Fx_load_color_file.
6270 * xfaces.c (x-load-color-file): Add.
6271 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6272 Emacs.clr.
6273 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6274
62752008-07-31 Michael Albinus <michael.albinus@gmx.de>
6276
6277 * dbusbind.c (Fdbus_call_method_asynchronously)
6278 (Fdbus_method_error_internal): New defuns.
6279 (xd_read_message): Handle also reply messages.
6280 (Vdbus_registered_functions_table): Extend docstring.
6281
62822008-07-31 Juanma Barranquero <lekktu@gmail.com>
6283
6284 * keyboard.c (gobble_input): Fix previous change.
6285
62862008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6287
6288 * bitmaps/README:
6289 * xfns.c:
6290 * termcap.c:
6291 * term.c:
6292 * syswait.h:
6293 * systty.h:
6294 * systime.h:
6295 * syssignal.h:
6296 * sysdep.c:
6297 * process.h:
6298 * process.c:
6299 * print.c:
6300 * ndir.h:
6301 * lread.c:
6302 * keyboard.c:
6303 * getpagesize.h:
6304 * floatfns.c:
6305 * fileio.c:
6306 * emacs.c:
6307 * doc.c:
6308 * dispnew.c:
6309 * dired.c:
6310 * data.c:
6311 * callproc.c:
6312 * buffer.c:
6313 * README:
6314 * Makefile.in:
6315 * s/template.h:
6316 * s/msdos.h:
6317 * m/vax.h: Remove VMS support.
6318 * s/vms.h:
6319 * vlimit.h:
6320 * uaf.h:
6321 * temacs.opt:
6322 * param.h:
6323 * ioctl.h: Remove file.
6324
63252008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6326
6327 * s/ms-w32.h (MULTI_KBOARD): Remove.
6328 * xterm.c:
6329 * xselect.c:
6330 * xfns.c:
6331 * window.c:
6332 * w32term.c:
6333 * w32fns.c:
6334 * terminal.c:
6335 * termhooks.h:
6336 * term.c:
6337 * sysdep.c:
6338 * keyboard.h:
6339 * keyboard.c:
6340 * frame.h:
6341 * frame.c:
6342 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6343 * config.in: Regenerate.
6344
63452008-07-30 Jason Rumney <jasonr@gnu.org>
6346
6347 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6348
6349 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6350 (w32font_open_internal): Get unicode version of textmetrics.
6351 Don't enable or disable glyph indices here.
6352 (w32font_open): Disable use of glyph indices.
6353
6354 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6355
63562008-07-30 Chong Yidong <cyd@stupidchicken.com>
6357
6358 * minibuf.c (Vread_buffer_function): Doc fix.
6359
63602008-07-30 John Paul Wallington <jpw@pobox.com>
6361
6362 * minibuf.c (read_buffer_completion_ignore_case): New var.
6363 (Fread_buffer): Use it.
6364
63652008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6366
6367 * systty.h (sensemode): Remove empty #if. Remove reference to
6368 BSD_TERMIOS, unused.
6369
6370 * sysdep.c: Remove reference to DGUX.
6371 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6372
6373 * config.in: Regenerate.
6374
63752008-07-30 Jason Rumney <jasonr@gnu.org>
6376
6377 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6378
63792008-07-29 Jason Rumney <jasonr@gnu.org>
6380
6381 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6382 is populated.
6383 (uniscribe_encode_char): Always use uniscribe.
6384 Avoid using context if cache is populated.
6385
63862008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6387
6388 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6389 open menu.
6390
6391 * gtkutil.c (menu_nav_ended): Remove.
6392 (create_menus): Remove signal connect for menu_nav_ended.
6393
63942008-07-28 Chong Yidong <cyd@stupidchicken.com>
6395
6396 * xdisp.c (redisplay_window): Check return value of
6397 compute_window_start_on_continuation_line before forcing a window
6398 start.
6399
64002008-07-28 Jason Rumney <jasonr@gnu.org>
6401
6402 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6403
6404 * w32term.c (w32_enable_unicode_output, cleartype_active):
6405 Remove obsolete display options.
6406 (x_draw_glyph_string_background): Don't use old cleartype_active
6407 workaround.
6408 (w32_initialize): Remove cleartype_active initialization.
6409 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
6410
64112008-07-28 Andreas Schwab <schwab@suse.de>
6412
6413 * lisp.h (init_weak_hash_tables, syms_of_font)
6414 (xd_read_queued_messages, syms_of_dbusbind): Declare.
6415 (remove_hash_entry): Don't declare.
6416 * eval.c (maybe_call_debugger): Make static and move before use.
6417 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
6418 * xdisp.c: Include "gtkutil.h" if USE_GTK.
6419 * xterm.h (x_set_frame_alpha): Declare.
6420
64212008-07-28 Jan Djärv <jan.h.d@swipnet.se>
6422
6423 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
6424 (create_menus): Connect selection-done to menu_nav_ended.
6425
64262008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6427
6428 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
6429 Set Vx_resource_name to a fallback. Replace read of 'buffered'
6430 parameter with read of 'alpha' one.
6431 (Qns_frame_parameter): Remove.
5582fbc7 6432 * nsselect.m (selection-coding-system)
aac0c6e3
MR
6433 (next-selection-coding-system, Vselection_coding_system)
6434 (Vnext_selection_coding_system): Drop.
6435
64362008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
6437
6438 * nsfns.m (do-applescript, do_applescript): Rename to
6439 ns-do-applescript, ns_do_applescript, and move within file.
6440
64412008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
6442
6443 Remove support for Mac Carbon.
6444 * mactoolbox.c:
6445 * macterm.h:
6446 * macterm.c:
6447 * macselect.c:
6448 * macmenu.c:
6449 * macgui.h:
6450 * macfns.c:
6451 * mac.c: Remove file.
6452 * s/darwin.h:
6453 * m/intel386.h:
6454 * xfaces.c:
6455 * xdisp.c:
6456 * window.c:
6457 * tparam.c:
6458 * termhooks.h:
6459 * termcap.c:
6460 * term.c:
6461 * syssignal.h:
6462 * sysselect.h:
6463 * sysdep.c:
6464 * process.c:
6465 * lread.c:
6466 * lisp.h:
6467 * keyboard.c:
6468 * image.c:
6469 * fringe.c:
6470 * frame.h:
6471 * frame.c:
6472 * fontset.c:
6473 * font.h:
6474 * font.c:
6475 * fns.c:
6476 * fileio.c:
6477 * emacs.c:
6478 * dispnew.c:
6479 * dispextern.h:
6480 * config.in:
6481 * atimer.c:
2ae37cf0 6482 * Makefile.in: Remove code for Carbon.
aac0c6e3 6483
f0131492 64842008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
6485
6486 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
6487
64882008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6489
6490 * macterm.h (kCGBitmapByteOrder32Host): New define for
6491 non-universal SDKs.
6492
6493 * image.c (mac_create_cg_image_from_image, image_load_image_io)
6494 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6495
6496 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
6497 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
6498
64992008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
6500
6501 * w32inevt.c: Include dispextern.h.
6502
65032008-07-26 Andreas Schwab <schwab@suse.de>
6504
6505 * print.c (print_object): Fix off-by-one in last change.
6506
65072008-07-25 Juanma Barranquero <lekktu@gmail.com>
6508
6509 * term.c (syms_of_term): Don't initialize default_orig_pair,
6510 default_set_foreground and default_set_background on Windows.
6511
65122008-07-25 Jason Rumney <jasonr@gnu.org>
6513
6514 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
6515 ScriptItemize. Clean up return value checking. Remove unused
6516 variables.
6517 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
6518 shaping engine.
6519
6520 * w32font.c (w32font_has_char): Handle the case where we can't
6521 determine the script for a character.
6522
65232008-07-25 Chong Yidong <cyd@stupidchicken.com>
6524
6525 * term.c (syms_of_term): Initialize default_orig_pair,
6526 default_set_foreground, and default_set_background.
6527
6528 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
6529 clash (bug#86).
6530 (getloadavg): Callers changed.
6531
6532 * image.c (svg_load_image): Fix last change.
6533 (svg_load_image): Use rsvg_handle_get_dimensions to check that
6534 image size is valid. Use g_object_unref instead of deprecated
6535 rsvg_handle_free to free rsvg handle.
6536 (x_from_xcolors): Don't initialize pixmap (silence compiler).
6537
65382008-07-25 Jason Rumney <jasonr@gnu.org>
6539
6540 * w32font.c (w32font_encode_char): Encode characters outside BMP as
6541 surrogates before looking up glyph index.
6542 (w32font_text_extents): Encode as surrogates if falling back to
6543 functions that need UTF-16 wide chars.
6544
6545 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
6546 BMP as surrogates before looking up glyph index.
6547
65482008-07-25 Chong Yidong <cyd@stupidchicken.com>
6549
6550 * image.c (svg_load_image): Check for failure in return value of
6551 rsvg_handle_get_pixbuf. Free rsvg handle when done.
6552
65532008-07-25 Jason Rumney <jasonr@gnu.org>
6554
6555 * w32font.c (Fx_select_font): Reverse sense of second arg.
6556
65572008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
6558
6559 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
6560 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
6561
6562 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
6563 (PURESIZE): Use it.
6564
65652008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
6566
6567 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
6568 * m/alpha.h (TEXT_END):
6569 * m/ibmrs6000.h (TEXT_END):
6570 * m/macppc.h (TEXT_END):
6571 * s/darwin.h (TEXT_END):
6572 * s/msdos.h (TEXT_END): Remove, unused.
6573 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
6574 * s/cygwin.h: Remove comment.
6575
6576 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
6577 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
6578 * m/intel386.h (DOT_GLOBAL_START):
6579 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
6580 (USG): Remove, file not used on USG platforms.
6581
6582 * Makefile.in (HAVE_X11): Remove empty #else.
6583
65842008-07-24 Andreas Schwab <schwab@suse.de>
6585
6586 * fileio.c (Finsert_file_contents): Properly adjust undo list
6587 after format conversion.
6588
65892008-07-24 Jan Djärv <jan.h.d@swipnet.se>
6590
6591 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
6592 (menu_nav_ended): Remove.
6593 (create_menus): Remove signal connect for menu_nav_ended.
6594 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
6595 create_menus.
6596 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
6597
65982008-07-23 Jason Rumney <jasonr@gnu.org>
6599
6600 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
6601 with opened font.
6602 (w32font_open): Set font type to gdi.
6603
6604 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
6605
66062008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
6607
6608 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
6609 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
6610 defines it.
6611 * unexec.c (ADDR_CORRECT): Define unconditionally.
6612
6613 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
6614
6615 * unexec.c: Remove code depending on !COFF and USG, the file is
6616 not used for such systems.
6617
6618 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
6619 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
6620 (LD_SWITCH_SYSTEM_1): Remove, update users.
6621
6622 * s/darwin.h (DATA_END):
6623 * m/intel386.h (DATA_END):
6624 * m/ibmrs6000.h (DATA_END):
6625 * m/alpha.h (DATA_END): Remove, unused.
6626
6627 * config.in: Regenerate.
6628 * s/ms-w32.h (subprocesses): Define unconditionally.
6629 * s/template.h (subprocesses): Update comment.
6630 * s/vms.h (subprocesses):
6631 * s/usg5-4.h (subprocesses):
6632 * s/hpux10-20.h (subprocesses):
6633 * s/gnu-linux.h (subprocesses):
6634 * s/cygwin.h (subprocesses):
6635 * s/bsd-common.h (subprocesses):
6636 * s/aix4-2.h (subprocesses):
6637 * s/darwin.h (subprocesses): Do not define, defined by default now.
6638
6639 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
6640 Remove all references.
6641 (temacs): Add GNUstep specific ld flags.
6642
6643 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
6644 similarly to what X does.
6645
66462008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6647
6648 * nsfns.m (x-list-fonts): Remove.
6649 (syms_of_nsfns): Drop the x-list-fonts declaration.
6650 * nsterm.m: Get rid of remaining "//" comments.
6651
66522008-07-22 Chong Yidong <cyd@stupidchicken.com>
6653
6654 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
6655
6656 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
6657 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
6658 (Fns_own_selection_internal, Fx_disown_selection_internal)
6659 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
6660
6661 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
6662 ... */' style of docstrings. Doc fixes.
6663
66642008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6665
6666 * terminfo.c (UP, BC, PC): Undo previous change.
6667
6668 * nsfns.m: Rename ns prefixed functions/variables to the
6669 corresponding x versions. Update references.
6670
66712008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
6672
6673 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
6674
66752008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
6676
6677 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
6678 Remove forwarding functions.
6679 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
6680 non-static.
6681 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
6682 non-static.
6683 (ns_frame_parm_handlers): Use the new names.
6684 (syms_of_nsfns): Move to the end of file.
6685
6686 * nsterm.m (syms_of_nsterm): Move to the end of file.
6687
6688 * dispnew.c (init_display): Remove code for X10.
6689
66902008-07-22 Jason Rumney <jasonr@gnu.org>
6691
6692 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
6693 bare drive.
6694
66952008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6696
6697 * nsterm.m (syms_of_nsterm): Remove debugging println.
6698
66992008-07-22 David Reitter <david.reitter@gmail.com>
6700
6701 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6702 Carbon implementation of the same functionality: execute arbitrary
6703 AppleScript code.
6704
67052008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6706
6707 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
6708 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
6709 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
6710 (Fx_display_mm_height, Fx_display_mm_width)
6711 (Fx_display_backing_store, Fx_display_visual_class)
6712 (Fx_display_save_under, Fx_open_connection)
6713 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
6714 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
6715 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6716 (Fx_display_pixel_width, Fx_display_pixel_height)
6717 (Fx_display_usable_bounds, Fx_display_planes)
6718 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
6719 ... */' style of docstrings.
6720
67212008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
6722
6723 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
6724 on this platform.
6725 (mips):
6726 * m/iris4d.h (mips): Do not define.
6727 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
6728
6729 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
6730
6731 * image.c:
6732 * nsfns.m:
6733 * nsselect.m:
6734 * nsterm.h:
6735 * nsterm.m: Rename ns prefixed functions/variables to the
6736 corresponding x versions. Update references.
6737
6738 * m/ibms390x.h (NO_REMAP): Do not undefine.
6739
6740 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
6741
67422008-07-21 Chong Yidong <cyd@stupidchicken.com>
6743
6744 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
6745 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
6746 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
6747 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
6748 (Fns_display_mm_height, Fns_display_mm_width)
6749 (Fns_display_backing_store, Fns_display_visual_class)
6750 (Fns_display_save_under, Fns_open_connection)
6751 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
6752 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
6753 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
6754 (Fns_display_pixel_width, Fns_display_pixel_height)
6755 (Fns_display_usable_bounds, Fx_display_planes)
6756 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
6757
67582008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
6759
6760 * print.c (print_object): Check print_depth before searching for
6761 circularities.
6762
67632008-07-21 Michael Albinus <michael.albinus@gmx.de>
6764
6765 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
6766 only sprintf.
6767
67682008-07-21 Kenichi Handa <handa@m17n.org>
6769
6770 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
6771
67722008-07-20 Andreas Schwab <schwab@suse.de>
6773
6774 * syntax.c (find_start_pos, find_start_value)
6775 (find_start_value_byte, find_start_begv, find_defun_start)
6776 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
6777
67782008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6779
6780 * s/sol2-3.h: Insert contents of s/sol2.h.
6781 (LD_SWITCH_SYSTEM): Remove redundant definition.
6782 * s/sol2.h: Remove, unused.
6783
67842008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6785
6786 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
6787
67882008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6789
6790 * Makefile.in (ns_appdir): Fix typo in find command.
6791
67922008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
6793
6794 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
6795
6796 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
6797 added not supported anymore.
6798
6799 * s/usg5-4-2.h (LIBS_SYSTEM):
6800 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
6801
6802 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6803 * s/lynxos.h (GETPGRP_NO_ARG):
6804 * s/hpux10-20.h (NO_SIOCTL_H):
6805 * s/gnu.h (GETPGRP_NO_ARG):
6806 * s/gnu-linux.h (NO_SIOCTL_H):
6807 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
6808 * s/cygwin.h (GETPGRP_NO_ARG):
6809 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
6810 (C_DEBUG_SWITCH): Remove duplicate definition.
6811
6812 * m/ibms390.h: Remove boilerplate comments.
6813
6814 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
6815
6816 * process.c (HAVE_SERIAL): Consolidate ifdefs.
6817 (wait_reading_process_output): Remove code for SunOS, platform not
6818 supported anymore. Use SOLARIS2 instead of sun.
6819
68202008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6821
6822 * font.c (font_open_by_name): Under NS, default lface height to zero.
6823 (font_open_for_lface): Under NS, set size based on frame fontsize.
6824 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
6825 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
6826
68272008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6828
6829 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
6830 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
6831 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
6832 YES/NO.
6833 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
6834 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
6835 * Makefile.in (clean): Clear out build destination dir.
6836
68372008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6838
6839 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
6840 xterm, xselect.
6841 * lisp.h: Remove declaration of hash_remove.
6842 * nsgui.h: Remove redefinitions of hash_remove.
6843 * fns.c (hash_remove): Rename to hash_remove_from_table.
6844
68452008-07-19 Seiji Zenitani <zenitani@mac.com>
6846
6847 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
6848 strdup() the family UTF8String before modifying it.
6849
68502008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
6851
6852 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
6853 NS_FACE_BACKGROUND with 0 instead of nil.
6854 * nsfont.m (nsfont_draw): Same.
6855
68562008-07-19 Chong Yidong <cyd@stupidchicken.com>
6857
6858 * nsfns.m (ns_set_background_color): Fix crash.
6859
68602008-07-18 Chong Yidong <cyd@stupidchicken.com>
6861
6862 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
6863
68642008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
6865
6866 * puresize.h (BASE_PURESIZE): Increase to 1240000.
6867
68682008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6869
6870 * gtkutil.c: Include <config.h> instead of "config.h".
6871
6872 * lisp.h (Foverlay_buffer): Add EXFUN.
6873
6874 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
6875 child process to complete child_setup. Undo 2005-09-21 change.
6876
6877 * s/darwin.h: Mention setsid after vfork.
6878
68792008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6880
6881 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
6882 Depend on macgui.h.
6883
6884 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
6885 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
6886
6887 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
6888 and f19.
6889 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
6890
6891 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
6892 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
6893 Remove enumerators.
6894
6895 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
6896 Check if FACE_FROM_ID returns NULL.
6897
68982008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
6899
6900 * w32inevt.c (change_frame_size): Remove extern declaration.
6901 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
6902 change_frame_size.
6903
69042008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6905
6906 * getloadavg.c: Revert last change (2008-07-15).
6907
69082008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
6909
6910 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 6911 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
6912 from configure.
6913
69142008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
6915
6916 * s/sol2.h:
6917 * s/sol2-4.h: Reorganize conditionals.
6918
6919 * ecrt0.c: Remove code depending on m68000, not used anymore.
6920
6921 * fns.c (hash_remove): Make static.
6922 * lisp.h (hash_remove): Don't prototype.
6923
6924 * m/ibmrs6000.h:
6925 * m/ibms390x.h:
6926 * m/macppc.h: Remove boilerplate comments.
6927
6928 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
6929 Solaris, which does not need them.
6930
6931 * m/vax.h: Remove comments about unsupported systems.
6932
6933 * s/darwin.h: Reorganize ifdefs.
6934
69352008-07-17 Andreas Schwab <schwab@suse.de>
6936
6937 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
6938
69392008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
6940
6941 Use SDATA. Follow coding convention of placing operators at
6942 beginning of next line rather than end of previous line, and placing
6943 spaces around infix operators.
6944
6945 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
6946 in case it was defined already.
6947 USE @GNUSTEP_MAKEFILES@ rather than envvars.
6948 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
6949 ns_default.
6950 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
6951 Lisp_Objects.
6952 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
6953 (ns_defined_color, ns_color_to_lisp): Declare.
6954 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
6955 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
6956 it's accepted even with USE_LISP_UNION_TYPE.
6957 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
6958 (update_frame_tool_bar): Remove apparently obsolete tests for
6959 non-integerness of f->tool_bar_lines.
6960 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
6961 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
6962 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
6963 (nsfont_open): Don't confuse NULL for Qnil.
6964 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
6965 * menu.h (find_and_call_menu_selection):
6966 * menu.c (find_and_call_menu_selection): Use just int for vector size.
6967 (find_and_return_menu_selection): Always return something.
6968 * frame.h: Include dispextern.h for Display_Info.
6969 (display_x_get_resource): Declare.
6970
69712008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
6972
6973 * syntax.c: Remove stdio.h include accidentally introduced in
6974 Emacs.app commit.
6975 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
6976 NS_IMPL_COCOA.
6977 * keyboard.c (handle_async_input, input_available_signal): Remove
6978 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
6979
69802008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6981
6982 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
6983 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
6984 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6985 Use SDATA.
6986
6987 * keymap.c: Remove all NS-specific code.
6988 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
6989 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
6990 where_is_preferred_modifier, return a different value depending on how
6991 preferred is the binding.
6992 (where_is_internal): Adjust accordingly.
6993 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
6994 Adjust to new preferred_sequence_p.
6995 (syms_of_keymap): Declare `where-is-preferred-modifier'.
6996 * keyboard.c (parse_solitary_modifier): Not static any more.
6997 * keyboard.h (parse_solitary_modifier): Declare.
6998
69992008-07-16 Andreas Schwab <schwab@suse.de>
7000
7001 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7002 of easymenu.
7003
70042008-07-16 Chong Yidong <cyd@stupidchicken.com>
7005
7006 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7007 that we don't move off the line.
7008
70092008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7010
7011 * keyboard.c (Qsuper): Remove.
7012 (parse_menu_item): Don't call where_is_internal specially for NS.
7013
70142008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7015
7016 * s/gnu-linux.h: Remove boilerplate comments.
7017
7018 * m/alpha.h (__ELF__): Consolidate conditions.
7019
7020 * m/m68k.h (linux): Use GNU_LINUX instead.
7021 Remove boilerplate comments.
7022
7023 * m/intel386.h: Undo refactoring from previous change.
7024 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7025 too, remove dead code.
7026 (linux): Use GNU_LINUX instead.
7027
70282008-07-16 Jason Rumney <jasonr@gnu.org>
7029
7030 * w32gui.h: Repeat 26 June changes lost by last change.
7031
70322008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7033
7034 * systty.h: Remove code for Aix on 386, unsupported platform.
7035
7036 * s/ms-w32.h: Remove boilerplate comments.
7037 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7038
7039 * s/gnu-linux.h (TERM): Remove support.
7040 (HAVE_SYSVIPC): Remove, unused.
7041 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7042 for this system.
7043
7044 * process.c: Remove support for IRIS, unused.
7045 Remove support for TERM, not relevant anymore.
7046
7047 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7048 used with the definition.
7049
7050 * s/aix4-2.h (static): Do not undef.
7051
7052 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7053 only used on Aix.
7054 (HAVE_SYSVIPC): Remove, unused.
7055
7056 * m/hp800.h (CANNOT_DUMP): Do not undef.
7057
7058 * m/alpha.h: Fix comment.
7059
7060 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7061 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7062 used by this configuration.
7063 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7064 * unexec.c: Remove code depending on HPUX and
7065 USG_SHARED_LIBRARIES, not used with this file. Remove code
7066 depending on IRIS, unused. Remove if 0-ed code.
7067
7068 * s/template.h: Remove comments about static.
7069
7070 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7071 Remove if 0-ed code.
7072 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7073 were the same as the default.
7074 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7075 Remove boilerplate comments.
7076 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7077 (HAVE_SYSVIPC): Remove, unused.
7078 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7079
7080 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7081 Remove boilerplate comments.
7082 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7083 Remove boilerplate comments.
7084 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7085 Remove boilerplate comments.
7086 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7087
7088 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7089 USG systems which do not use DATA_SEG_BITS.
7090 Refactor code. Remove boilerplate comments.
7091
7092 * m/ibms390.h:
7093 * m/m68k.h:
7094 * s/bsd-common.h:
7095 * s/cygwin.h:
7096 * s/darwin.h:
7097 * s/freebsd.h:
7098 * s/gnu.h:
7099 * s/msdos.h: Remove boilerplate comments.
7100
7101 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7102 do not use this file.
aac0c6e3
MR
7103 (IRIS_4D): Remove, unused.
7104
7105 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7106 do not use this file.
aac0c6e3
MR
7107 (SIGN_EXTEND_CHAR):
7108 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7109 * unexmips.c: Remove file, unused.
7110
7111 * editfns.c (Fuser_full_name): Replace the only use of
7112 USER_FULL_NAME with its value.
7113 * config.in: Regenerate.
7114
71152008-07-16 David Reitter <david.reitter@gmail.com>
7116
7117 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7118 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7119
71202008-07-16 Glenn Morris <rgm@gnu.org>
7121
7122 * emacs.c (system-type): Doc fix.
7123
71242008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7125
7126 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7127 If the cache doesn't work, let's fix it, rather than work around it.
7128
71292008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7130
7131 * Makefile.in: Correct additions for nsfont.o in last commit.
7132 * nsfont.m: New file (forgot last commit).
7133
71342008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7135
7136 * callproc.c (set_initial_environment): Initialize
7137 Vprocess_environment under CANNOT_DUMP (fixes crash when
7138 batch-compiling for bootstrap).
7139
71402008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7141 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7142
7143 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7144 fix crash due to different init order.
7145
71462008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7147
7148 Changes and additions for NeXTstep windowing system (Cocoa and
7149 GNUstep) support.
7150
7151 * Makefile.in:
7152 * config.in: Support defines and build commands for NS port.
7153 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7154 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7155 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7156 windowing.
7157 (struct face): Add synth_ital field.
7158 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7159 (init_display): Initialize Vinitial_window_system to "ns" when so
7160 compiled.
7161 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7162 (display_arg): Use under NS.
7163 (main): Under NS, allocate autorelease pool and handle command line
7164 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7165 (standard_args): Add NS-specific args.
7166 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7167 * font.c (DEFAULT_ENCODING): New variable.
7168 (font_find_for_lface): Use it.
7169 (syms_of_font): Load syms_of_nsfont under NS.
7170 * font.h: Declare nsfont_driver when compiled under NS.
7171 * fontset.c: When compiling under NS, include nsterm.h.
7172 (fontset_from_font): Autoconstruct fontset under NS.
7173 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7174 symbol, document and use it.
7175 (do_switch_frame): When for_deletion under Cocoa, add
7176 Fraise_frame(Qnil).
7177 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7178 (x_get_arg): Allow "yes" and "no" as boolean values.
7179 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7180 Qright under Cocoa.
7181 (focus-follows-mouse): Default to 0 under NS.
7182 * frame.h (enum output_method): Add output_ns.
7183 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7184 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7185 (FRAME_WINDOW_P): NS-specific definition.
7186 * fringe.c (max_used_fringe_bitmap): Make public.
7187 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7188 (getloadavg): Use NeXT code under descendant OS's.
7189 * image.c (includes and header section, x_create_bitmap_from_data)
7190 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7191 (image_background_transparent, x_clear_image_1)
7192 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7193 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7194 (x_to_xcolors, x_from_xcolors, x_disable_image)
7195 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7196 other GUIs, including XPM support using code originally written for
7197 Carbon GUI.
7198 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7199 using NS API.
7200 (image_ascent): Use font metrics macros instead of direct struct field
7201 access.
7202 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7203 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7204 Also, handle NS as GTK for menu bar purposes.
7205 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7206 toolkit where they differ.
7207 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7208 use cachelist, still needed under NS.
7209 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7210 (struct widget_value): Define it here for menu.c.
7211 * keymap.c (includes): Include modifier internals.
7212 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7213 NS.
7214 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7215 support for preferring sequences using certain modifiers, specified by
7216 the FIRSTONLY argument.
7217 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7218 under NS GNUstep implementation.
7219 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7220 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7221 * menu.c: Include nsterm.h under NS.
7222 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7223 (free_menubar_widget_tree_value, update_submenu_strings)
7224 (find_and_call_menu_selection): Treat NS as X and NT.
7225 (find_and_return_menu_selection): New function, used for popup menus.
7226 * nsgui.h:
7227 * nsterm.h:
7228 * nsfns.m:
7229 * nsimage.m:
7230 * nsmenu.m:
7231 * nsselect.m:
7232 * nsterm.m: New files.
7233 * process.c (wait_reading_process_output): Under NS, call ns_select()
7234 instead of plain select().
7235 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7236 beginning of buffer.
7237 * sysselect.h (init_process): Rename when compiling under Cocoa to
7238 avoid name conflict.
7239 * termhooks.h (display_info): Add ns_display_info to union.
7240 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7241 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7242 COCOA environment.
7243 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7244 unexec() signature. (Note, this will dump, but the resulting file
7245 crashes; unexosx is used instead; keeping around for reference and
7246 possible aid in getting dump working under GNUstep.)
7247 * w32gui.h (button_type, widget_value): Remove definitions (now in
7248 keyboard.h).
7249 * window.c: Include nsterm.h when compiling under NS.
7250 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7251 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7252 other GUI windowing systems.
7253 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7254 GTK.
7255 (x_consider_frame_title): Under NS, set icon type and frame
7256 modified-state indicator; use ns_set_name_as_filename() when using
7257 formatted title.
7258 (update_window_cursor): Make public when compiling under NS.
7259 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7260 (hourglass_atimer, Vhourglass_delay
7261 * xfaces.c (header section, init_frame_faces, clear_font_table)
7262 (defined_color, unload_color, x_face_list_fonts)
7263 (prepare_face_for_display): Add NS support parallel to other GUIs.
7264 Emulate GCs like other non-X GUIs.
7265 (split_font_name): Don't lowercase font name under NS.
7266 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7267 under NS.
7268 * s/darwin.h: Add support for compilation under NS.
7269
72702008-07-15 Jason Rumney <jasonr@gnu.org>
7271
7272 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7273 (w32_show_hourglass): Rename from show_hourglass.
7274 (w32_hide_hourglass): Rename from hide_hourglass.
7275 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7276 (Vhourglass_delay): Declare extern.
7277 (hourglass_started): Remove.
7278
7279 * xdisp.c (Vhourglass_delay): Remove static.
7280 (hourglass_started, start_hourglass, cancel_hourglass):
7281 Don't include these versions on WINDOWSNT.
7282
72832008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7284
7285 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7286 variables (formerly in xfns.c).
7287 (show_hourglass, hide_hourglass): New prototypes (same).
7288 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7289 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7290 in xfns.c).
7291 (syms_of_xdisp): Declare/initialize display-hourglass,
7292 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7293 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7294 formerly in xfns.c.
7295 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7296 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7297 (start_hourglass, cancel_hourglass): Remove.
7298 (show_hourglass, hide_hourglass): Remove prototypes and static
7299 modifiers.
7300 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7301 hourglass_atimer, hourglass_shown_p declaration/initialization.
7302 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7303 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7304 (start_hourglass, cancel_hourglass): Remove.
7305 (show_hourglass, hide_hourglass): Remove prototypes and static
7306 modifiers.
7307 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7308 hourglass_atimer, hourglass_shown_p declaration/initialization.
7309 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7310 (DEFAULT_HOURGLASS_DELAY): Remove.
7311 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7312 hourglass_shown_p declaration/initialization.
7313
73142008-07-14 Jason Rumney <jasonr@gnu.org>
7315
7316 * w32fns.c (w32_get_arg): Remove wrapper function.
7317 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7318 directly.
7319 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7320
73212008-07-14 Kenichi Handa <handa@m17n.org>
7322
7323 * xfont.c (xfont_open): Add workaround for X's bug.
7324
73252008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7326
7327 * fontset.c: Include <stdio.h> unconditionally.
7328
73292008-07-13 Michael Albinus <michael.albinus@gmx.de>
7330
7331 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7332 for filtering.
7333
73342008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7335
7336 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7337
7338 * m/macppc.h:
7339 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7340
7341 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7342 (SPECIAL_EMACS_INT):
7343 * m/ia64.h (SPECIAL_EMACS_INT):
7344 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7345 * s/gnu.h (NLIST_STRUCT):
7346 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7347 * s/gnu-linux.h (LINUX):
7348 * s/msdos.h (HAVE_FACES):
7349 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7350
7351 * systty.h:
7352 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7353 anymore.
7354
73552008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7356
7357 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7358 always defined as int.
7359
7360 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7361 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7362 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7363 * s/freebsd.h (HAVE_WAIT_HEADER):
7364 * s/bsd-common.h (HAVE_UNION_WAIT):
7365 * s/aix4-2.h (HAVE_WAIT_HEADER):
7366 * m/mips.h (HAVE_UNION_WAIT):
7367 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7368 (COFF, static): Do not define, they are undefined later in the file.
7369
7370 * process.c (update_status): Don't use a union.
7371 (status_convert):
7372 (sigchld_handler): Use int instead of WAITTYPE.
7373
73742008-07-12 Chong Yidong <cyd@stupidchicken.com>
7375
7376 * indent.c (Fvertical_motion): Restore hscroll before moving to
7377 goal column.
7378
73792008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7380
7381 * lisp.h: Remove left over code.
7382
73832008-07-11 Andreas Schwab <schwab@suse.de>
7384
7385 * lisp.h: Fix logic in last change.
7386
7387 * menu.h: New file.
7388 * menu.c: Include it.
7389 * xmenu.c: Likewise.
7390 * Makefile.in: Update dependencies.
7391
73922008-07-11 Kenichi Handa <handa@m17n.org>
7393
7394 * fontset.c (fontset_from_font): Cancel the previous change.
7395
73962008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7397
7398 * lisp.h:
7399 * w32heap.c:
7400 * emacs.c:
7401 * alloc.c: Replace all references of NO_UNION_TYPE with
7402 USE_LISP_UNION_TYPE.
7403
7404 * m/xtensa.h (NO_UNION_TYPE):
7405 * m/vax.h (NO_UNION_TYPE):
7406 * m/template.h (NO_UNION_TYPE):
7407 * m/sparc.h (NO_UNION_TYPE):
7408 * m/mips.h (NO_UNION_TYPE):
7409 * m/macppc.h (NO_UNION_TYPE):
7410 * m/m68k.h (NO_UNION_TYPE):
7411 * m/iris4d.h (NO_UNION_TYPE):
7412 * m/intel386.h (NO_UNION_TYPE):
7413 * m/ibms390x.h (NO_UNION_TYPE):
7414 * m/ibms390.h (NO_UNION_TYPE):
7415 * m/ibmrs6000.h (NO_UNION_TYPE):
7416 * m/ia64.h (NO_UNION_TYPE):
7417 * m/hp800.h (NO_UNION_TYPE):
7418 * m/arm.h (NO_UNION_TYPE):
7419 * m/amdx86-64.h (NO_UNION_TYPE):
7420 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
7421 defining it the same.
7422
74232008-07-10 Chong Yidong <cyd@stupidchicken.com>
7424
7425 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
7426
74272008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7428
7429 * fileio.c:
7430 * sysdep.c
7431 * systty.h:
7432 * m/ibmrs6000.h:
7433 * m/iris4d.h:
7434 * s/aix4-2.h:
7435 * s/freebsd.h:
7436 * s/gnu-linux.h:
7437 * s/hpux10-20.h:
7438 * s/hpux11.h:
7439 * s/netbsd.h:
7440 * s/sol2-3.h:
7441 * s/sol2-4.h:
7442 * s/sol2.h:
7443 * s/usg5-4.h:
7444 * s/vms.h: Remove references to unused variables.
7445
74462008-07-10 Andreas Schwab <schwab@suse.de>
7447
7448 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
7449 pattern before matching the generic family.
7450
74512008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
7452
7453 * unexec.c:
7454 * s/vms.h:
7455 * s/usg5-4-2.h:
7456 * s/sol2-5.h:
7457 * s/freebsd.h:
7458 * s/darwin.h: Remove dead code.
7459
7460 * m/template.h:
7461 * m/sparc.h:
7462 * m/mips.h:
7463 * m/m68k.h:
7464 * m/iris4d.h:
7465 * m/intel386.h:
7466 * m/ibms390x.h:
7467 * m/ibms390.h:
7468 * m/ia64.h:
7469 * m/hp800.h:
7470 * m/arm.h:
7471 * m/amdx86-64.h: Remove dead code and references to unused
7472 and compiler defined symbols.
7473
7474 * unexmips.c:
7475 * unexelf.c: Remove references to desupported systems.
7476
7477 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
7478
7479 * m/powermac.h: Remove boilerplate comments.
7480 (NO_REMAP): Remove unused definition.
7481
7482 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
7483 define them.
7484
74852008-07-10 Kenichi Handa <handa@m17n.org>
7486
7487 * xfont.c (xfont_open): Log the reason of failure.
7488
74892008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
7490
7491 * fontset.c (fontset_get_font_group):
7492 * font.c (font_check_otf): Specify argument types.
7493
74942008-07-09 Kenichi Handa <handa@m17n.org>
7495
7496 * coding.c (detect_coding_utf_8): Set detect_info->found only when
7497 non-ASCII char is found.
7498
7499 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
7500 (reorder_font_vector): Change the arg preferred_family to font.
7501 Prefer the spec matching with font.
7502 (fontset_get_font_group): New function.
7503 (fontset_find_font): Change the format of an element of a realized
7504 fontset. Use fontset_get_font_group.
7505 (fontset_font): Try the current fontset, the default fontset, the
7506 fallbacks of the current fontset, and the fallbacks of the default
7507 fontset in this order.
7508 (face_for_char): Delete the shortcut to use the current font.
7509 (fontset_from_font): Don't set fonts for Latin in the fontset.
7510
7511 * font.h (font_make_object, font_match_p): Adjust prototypes.
7512
7513 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
7514
7515 * font.c (font_make_object): New arg entity and pixelsize.
7516 (font_check_otf_features, font_check_otf): New functions.
7517 (font_match_p): Check :lang, :script, and :otf properties.
7518
7519 * xfont.c (xfont_open): Adjust it for the change of
7520 font_make_object.
7521 (xfont_text_extents): Fix initial setting of metrics.
7522
7523 * ftfont.c (struct ftfont_info): New member index, delete member
7524 fc_charset_idx. Make the member order compatible with struct
7525 xftfont_info.
7526 (fc_charset_table): Change charset names to registry names.
7527 (ftfont_pattern_entity): Delete the args registry and
7528 fc_charset_idx. Change the value of :font-entity property
7529 to (FONTNAME . INDEX). Always set :registry property to
7530 `iso10646-1'.
7531 (struct ftfont_cache_data): New struct.
7532 (ftfont_lookup_cache): New arg for_face.
7533 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
7534 (ftfont_driver): Set the member otf_capability.
7535 (ftfont_get_charset): Adjust it for the change of
7536 fc_charset_table.
7537 (OTF_TAG_SYM): New macro.
7538 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
7539 for the change of fc_charset_table.
7540 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
7541 ftfont_pattern_entity. Add FC_INDEX to objset.
7542 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
7543 and ftfont_pattern_entity.
7544 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
7545 font_make_object, struct ftfont_info.
7546 (ftfont_has_char): Use ftfont_get_fc_charset.
7547 (ftfont_otf_features, ftfont_otf_capability): New functions.
7548 (ftfont_shape): Use ftfont_get_otf.
7549 (ftfont_text_extents): Fix initial setting of metrics.
7550
7551 * xftfont.c (struct xftfont_info): New member ft_size. Make the
7552 member order compatible with struct ftfont_info.
7553 (xftfont_open): Add FC_CHARSET to the pattern. Set
7554 xftfont_info->ft_size. Don't unlock the face. Check BDF
7555 properties if appropriate.
7556 (xftfont_close): Unlock the face.
7557 (xftfont_anchor_point, xftfont_shape): Deleted.
7558 (syms_of_xftfont): Don't set members anchor_point and shape of
7559 xftfont_driver.
7560
7561 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
7562 font_make_object.
7563
7564 * w32font.c (w32font_open): Adjust it for the change of
7565 font_make_object.
7566 (w32font_open_internal): Don't set properties of font_object here.
7567
75682008-07-08 Chong Yidong <cyd@stupidchicken.com>
7569
7570 * macfns.c (x_create_tip_frame):
7571 * w32fns.c (x_create_tip_frame):
7572 * xfns.c (x_create_tip_frame): Pass parameter argument to
7573 face-set-after-frame-default.
7574
7575 * xfaces.c (Finternal_merge_in_global_face): Save merged
7576 attributes for the default face back into the face vector.
7577
75782008-07-08 Andreas Schwab <schwab@suse.de>
7579
7580 * fontset.h: Declare fontset_from_font. Don't declare
7581 new_fontset_from_font and fontset_from_font_name.
7582 * xterm.c: Include "fontset.h".
7583 * Makefile.in (xterm.o): Update dependencies.
7584
75852008-07-08 Glenn Morris <rgm@gnu.org>
7586
7587 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
7588 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
7589
75902008-07-07 Chong Yidong <cyd@stupidchicken.com>
7591
7592 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
7593 (x_set_frame_parameters): Don't bind it.
7594
75952008-07-07 Juanma Barranquero <lekktu@gmail.com>
7596
7597 * w32fns.c (map_w32_filename): Declare extern.
7598
75992008-07-07 Jason Rumney <jasonr@gnu.org>
7600
7601 * w32term.c (WS_EX_LAYERED): Define if not already.
7602
76032008-07-06 Chong Yidong <cyd@stupidchicken.com>
7604
7605 * xfaces.c (set_font_frame_param): Don't try to set the font
7606 parameter if it is still unspecified in the lface.
7607
76082008-07-05 Chong Yidong <cyd@stupidchicken.com>
7609
7610 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
7611 face if it didn't already exist.
7612
7613 * xdisp.c (try_window_id): Give up if word-wrapping is on.
7614
76152008-07-05 Andreas Schwab <schwab@suse.de>
7616
7617 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
7618
76192008-07-05 Chong Yidong <cyd@stupidchicken.com>
7620
7621 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
7622 word-wrapping.
7623 (IT_DISPLAYING_WHITESPACE): New macro.
7624 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
7625 when word-wrapping. Simplify word-wrapping logic. Use correct
7626 pixel positions when saving copies of the iterator.
7627 (display_line): Use proper wrap point if the last character on a
7628 line was preceded by whitespace.
7629
76302008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
7631
7632 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
7633
76342008-07-04 Kenichi Handa <handa@m17n.org>
7635
7636 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
7637
7638 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
7639
76402008-07-02 Jason Rumney <jasonr@gnu.org>
7641
7642 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 7643 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
7644
7645 * xdisp.c (next_element_from_display_vector): Move assignment out
7646 of if statement.
7647
76482008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
7649
7650 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
7651
7652 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
7653 (syms_of_fileio): Initialize and export them.
7654 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
7655
7656 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
7657 (Fsystem_move_file_to_trash): New function.
7658 (syms_of_w32fns): Export it to lisp.
7659
76602008-07-01 Jason Rumney <jasonr@gnu.org>
7661
7662 * w32font.c (w32font_text_extents): Don't count overhang as part
7663 of width.
7664
76652008-06-30 Miles Bader <miles@gnu.org>
7666
7667 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
7668 Add `avoid_cursor_p' field.
7669
7670 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
7671 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
7672 (append_glyph, append_composite_glyph, produce_image_glyph)
7673 (append_stretch_glyph): Initialize avoid_cursor_p.
7674 (get_it_property): Rename from `get_line_height_property'.
7675 (x_produce_glyphs): Use get_it_property.
7676 (handle_line_prefix, push_display_prop): New functions.
7677 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
7678 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
7679 New variables.
7680 (syms_of_xdisp): Initialize them.
7681
76822008-06-30 Kenichi Handa <handa@m17n.org>
7683
7684 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
7685 XftDefaultSubstitute (they are called in XftFontMatch).
7686 (xftfont_open): Fix args to ftfont_font_format.
7687
7688 * ftfont.c (fc_charset_table): New member lang.
7689 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 7690 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
7691 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
7692 (ftfont_open): Fix args to ftfont_font_format.
7693 (ftfont_font_format): New arg filename.
7694
76952008-06-30 Chong Yidong <cyd@stupidchicken.com>
7696
7697 * xfaces.c (Finternal_merge_in_global_face): If default face was
7698 modified, realize it again. Update the font face attribute.
7699
77002008-06-29 Jason Rumney <jasonr@gnu.org>
7701
7702 * w32term.c (x_set_frame_alpha): Fix logic.
7703
77042008-06-29 Kenichi Handa <handa@m17n.org>
7705
7706 * fontset.c (Finternal_char_font): Return font-object instead of
7707 font-name.
7708
7709 * composite.c (get_composition_id): Fix the width calculation for TAB.
7710
77112008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
7712
7713 * indent.c (Fvertical_motion): Properly handle float column arg.
7714
77152008-06-28 Jason Rumney <jasonr@gnu.org>
7716
7717 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
7718 (pfnSetLayeredWindowAttributes): New function pointer.
7719 (w32_initialize): Initialize it when supported.
7720 (x_set_frame_alpha): New function.
7721
7722 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
7723 (w32_frame_parm_handlers): Set alpha handler.
7724
7725 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
7726
77272008-06-27 Jason Rumney <jasonr@gnu.org>
7728
7729 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
7730 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
7731 (w32_to_x_charset, x_to_w32_charset)
7732 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7733 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7734 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7735 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7736 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7737 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7738 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
7739 (Qw32_charset_unicode): Remove.
7740 (syms_of_w32fns): Update for above changes.
7741
7742 * w32font.c (w32_to_x_charset, x_to_w32_charset)
7743 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
7744 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
7745 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
7746 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
7747 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
7748 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
7749 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
7750 (syms_of_w32font): Update for above changes.
7751
77522008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
7753
7754 * s/usg5-4.h: Fix previous change: keep the correct branch of a
7755 removed #if.
7756 (USG_SHARED_LIBRARIES): Remove duplicate definition.
7757
77582008-06-26 Juanma Barranquero <lekktu@gmail.com>
7759 Eli Zaretskii <eliz@gnu.org>
7760
7761 * makefile.w32-in (LOCAL_FLAGS):
7762 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
7763
7764 * sysdep.c (_spawnlp, _getpid):
7765 Declare with explicit _cdecl instead of _CRTAPI1.
7766
7767 * editfns.c (Fget_internal_run_time):
7768 Check for WINDOWSNT with #ifdef, not #if.
7769
77702008-06-26 Jason Rumney <jasonr@gnu.org>
7771
7772 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
7773
7774 * w32term.c (x_draw_glyph_string_foreground)
7775 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
7776 Use FONT_HANDLE macro.
7777 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
7778
7779 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7780 (uniscribe_encode_char): Use FONT_HANDLE macro.
7781
7782 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
7783 (w32font_text_extents): Use precast w32_font.
7784 (w32font_close): Free cached metrics.
7785 (w32font_open_internal): Allocate space for name on stack.
7786
77872008-06-26 Chong Yidong <cyd@stupidchicken.com>
7788
7789 * xdisp.c (extend_face_to_end_of_line): Fix last change.
7790
77912008-06-26 Jason Rumney <jasonr@gnu.org>
7792
7793 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
7794 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
7795
77962008-06-26 Juanma Barranquero <lekktu@gmail.com>
7797
7798 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
7799
78002008-06-26 Jason Rumney <jasonr@gnu.org>
7801
7802 * w32bdf.c, w32bdf.h: Remove obsolete files.
7803
7804 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
7805
7806 * w32gui.h: Don't include w32bdf.h.
7807 (XCharStruct, enum w32_char_font_type, W32FontStruct):
7808 Remove obsolete font support.
7809
7810 * w32font.h (struct w32font_info): Remove compat_w32_font.
7811 Add hfont member.
7812 (FONT_COMPAT): Remove obsolete macro.
7813
7814 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
7815 (w32font_encode_char, w32font_text_extents): Use new hfont member.
7816 (w32font_open_internal): Remove compat code. Set new hfont member.
7817 (Fx_select_font): Use new hfont member.
7818
7819 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
7820 (uniscribe_encode_char): Use new hfont member.
7821
7822 * w32term.c (x_draw_glyph_string_foreground)
7823 (x_draw_composite_glyph_string_foreground): Use new hfont member.
7824 (x_draw_glyph_string): Use metrics in w32font_info.
7825
78262008-06-26 Kenichi Handa <handa@m17n.org>
7827
7828 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
7829
78302008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
7831
7832 * unexnext.c:
7833 * m/ews4800.h:
7834 * m/hp9000s300.h:
7835 * m/ibm370aix.h:
7836 * m/mips-siemens.h:
7837 * m/ncr386.h:
7838 * m/next.h:
7839 * m/pmax.h:
7840 * m/powerpcle.h:
7841 * m/tandem-s2.h:
7842 * s/386bsd.h:
7843 * s/bsd386.h:
7844 * s/bsd4-1.h:
7845 * s/bsd4-2.h:
7846 * s/bsdos2-1.h:
7847 * s/bsdos2.h:
7848 * s/bsdos3.h:
7849 * s/bsdos4.h:
7850 * s/nextstep.h:
7851 * s/ultrix4-3.h:
7852 * s/usg5-0.h:
7853 * s/usg5-2-2.h:
7854 * s/usg5-2.h:
7855 * s/usg5-4-3.h:
7856 * s/ux4800.h:
7857 * s/uxpds.h:
7858 * s/uxpv.h: Remove support for obsolete systems.
7859 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 7860 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
7861 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
7862 Remove, insert contents in s/aix4-2.h.
7863 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
7864 * s/bsd4-3.h: Rename to ...
7865 * s/bsd-common.h: ... this.
7866 * data.c:
7867 * doc.c:
7868 * ecrt0.c:
7869 * emacs.c:
7870 * fileio.c:
7871 * floatfns.c:
7872 * keyboard.c:
7873 * mem-limits.h:
7874 * print.c:
7875 * process.c:
7876 * sysdep.c:
7877 * syssignal.h:
7878 * systty.h:
7879 * syswait.h:
7880 * term.c:
7881 * unexec.c:
7882 * unexelf.c:
7883 * unexhp9k800.c:
7884 * m/hp800.h:
7885 * m/ibmrs6000.h:
7886 * m/mips.h:
7887 * m/vax.h:
7888 * s/darwin.h:
7889 * s/freebsd.h:
7890 * s/gnu.h:
7891 * s/ms-w32.h:
7892 * s/msdos.h:
7893 * s/netbsd.h:
7894 * s/template.h: Remove references to obsolete variables.
7895
7896 * Makefile.in: Add dependencies for all unexec files.
7897 (admindir): Remove unused variable.
7898 (UNEXEC_SRC): Remove references.
7899
79002008-06-25 Chong Yidong <cyd@stupidchicken.com>
7901
7902 * xfns.c (x_default_font_parameter): If Xft is available, first
7903 try Monospace-12 for the default font.
7904
79052008-06-25 Jason Rumney <jasonr@gnu.org>
7906
7907 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
7908
79092008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
7910
7911 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
7912
7913 * buffer.c (syms_of_buffer): Remove default-word-wrap.
7914
79152008-06-25 Juanma Barranquero <lekktu@gmail.com>
7916
7917 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
7918 <scroll-conservatively>: Fix typo in docstring.
7919
7920 * xselect.c (Fx_send_client_event): Doc fix.
7921
79222008-06-25 Kenichi Handa <handa@m17n.org>
7923
7924 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
7925
7926 * font.c (font_parse_fcname): Remove unused variables.
7927 (font_sort_entites): Delete the arg SPEC. Caller changed.
7928 Fix for the case of ! best_only.
7929 (font_delete_unmatched): Check DPI and AVGWIDTH too.
7930
7931 * lisp.h (Fstring_to_unibyte): EXFUN it.
7932
7933 * character.h (str_to_unibyte): Extern it.
7934
7935 * character.c (str_to_unibyte): New function.
7936
7937 * fns.c (Fstring_to_unibyte): New function.
7938 (syms_of_fns): Defsubr it.
7939
79402008-06-24 Kenichi Handa <handa@m17n.org>
7941
7942 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
7943 DPI too.
7944 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
7945
79462008-06-24 Andreas Schwab <schwab@suse.de>
7947
7948 * Makefile.in (${lispsource}loaddefs.el): Rename from
7949 ../lisp/loaddefs.el.
7950 (bootstrap-clean): Do what distclean does but don't remove
7951 Makefile.
7952 (distclean): Depend on bootstrap-clean and remove Makefile.
7953
79542008-06-24 Chong Yidong <cyd@stupidchicken.com>
7955
7956 * buffer.h (struct buffer): New member word_wrap.
7957
7958 * buffer.c (syms_of_buffer): New variables default-word-wrap and
7959 word-wrap.
7960 (init_buffer_once): Initialize them.
7961
7962 * dispextern.h (struct it): Replace bool truncate_lines_p with a
7963 line_wrap enum possessing three possible values.
7964
7965 * termopts.h: Replace truncate_partial_width_windows with
7966 Vtruncate_partial_width_windows.
7967
7968 * dispnew.c (direct_output_for_insert): Avoid direct output when
7969 inserting a space with word wrap on.
7970
7971 * indent.c (compute_motion): Obey integer values of
7972 truncate-partial-width-windows.
7973
7974 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
7975 replacing truncate_partial_width_windows.
7976 (init_iterator): If Vtruncate_partial_width_windows is an integer,
7977 truncate only if the window width is below that integer.
7978 (start_display, resize_mini_window, produce_stretch_glyph)
7979 (display_string, move_it_in_display_line_to): Use line_wrap.
7980 (back_to_previous_visible_line_start, reseat_1): Reset
7981 string_from_display_prop_p.
7982 (display_line): Extend default face to end of line when wrapping.
7983
79842008-06-24 Kim F. Storm <storm@cua.dk>
7985
7986 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
7987 to wrap continued lines at word boundaries.
7988
79892008-06-24 Jason Rumney <jasonr@gnu.org>
7990
7991 * font.c (Ffont_face_attributes): Multiply pixel size before point
7992 conversion to avoid multiplying rounding error.
7993
79942008-06-23 Jason Rumney <jasonr@gnu.org>
7995
7996 * w32term.c (x_draw_glyph_string_background)
7997 (x_draw_glyph_string): Remove old bdf font code.
7998
7999 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8000
80012008-06-22 Kenichi Handa <handa@m17n.org>
8002
8003 * font.c (font_find_for_lface): Try the adstyle specified in
8004 the property of LFACE_FONT of LFACE (if any).
8005
80062008-06-21 Seiji Zenitani <zenitani@mac.com>
8007 Ryo Yoshitake <ryo@shiftmode.net>
8008
8009 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8010
80112008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8012
8013 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8014 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8015 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8016 (witness-emacs): Remove.
8017 (lisp, shortlisp): Move loaddefs.el earlier.
8018 (mostlyclean): Forget about witness-emacs.
8019
80202008-06-22 Glenn Morris <rgm@gnu.org>
8021
8022 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8023 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8024
80252008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8026
8027 * Makefile.in (PRECOMP): Remove.
8028 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8029 (witness-emacs): Run `compile-first'.
8030 (.el.elc): Use the new compile-onefile target.
8031
80322008-06-21 Kenichi Handa <handa@m17n.org>
8033
8034 * xftfont.c (xftfont_open): Handle QCembolden only when
8035 FC_EMBOLDEN is defined.
8036
80372008-06-21 Andreas Schwab <schwab@suse.de>
8038
8039 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8040 (.el.elc): Likewise.
8041
80422008-06-21 Miles Bader <miles@gnu.org>
8043
8044 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8045 build dir, not the lisp source dir.
8046
80472008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8048
8049 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8050 (bootstrapclean): Remove.
8051 (.el.elc): New rule.
8052 (PRECOMP): New var.
8053 (../lisp/subdirs.el): Remove.
8054 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8055 (witness-emacs): New target.
8056 (mostlyclean): Remove witness-emacs as well.
8057 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8058 Add witness-emacs dependency.
8059
80602008-06-20 Chong Yidong <cyd@stupidchicken.com>
8061
8062 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8063 defined by the font.
8064
80652008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8066
8067 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8068 (bootstrap-clean): New target that keeps TAGS around.
8069 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8070 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8071
80722008-06-20 Jason Rumney <jasonr@gnu.org>
8073
8074 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8075 Remove obsolete font code.
8076
8077 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8078 to determine language support.
8079
80802008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8081
8082 * sysdep.c (cfsetspeed): New fun extracted from the code.
8083 (cfmakeraw): Move before first use.
8084
80852008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8086
8087 * sysdep.c (cfmakeraw): Provide fallback implementation.
8088 (serial_configure): Provide fallback implementation of cfsetspeed.
8089
80902008-06-20 Kenichi Handa <handa@m17n.org>
8091
8092 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8093 the pattern.
8094
8095 * fontset.c (fontset_from_font): Copy font_spec before changing
8096 the elements.
8097
8098 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8099
81002008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8101
8102 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8103 for explicit `font' parameters.
8104
8105 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8106
81072008-06-19 Kenichi Handa <handa@m17n.org>
8108
8109 * frame.c: Include <ctype.h>.
8110 (x_set_font_backend): Allow spacing characters in the X resource
8111 for FontBackend.
8112
81132008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8114
8115 * w32fns.c, xfns.c (Qfont_param): New var.
8116 (syms_of_w32fns): Initialize it.
8117 (x_default_font_parameter): Record explicit `font' into
8118 `font-parameter'.
8119
81202008-06-18 Kenichi Handa <handa@m17n.org>
8121
8122 * font.c (font_parse_xlfd): Fix previous change.
8123 (font_parse_fcname): Don't use :fc-unknown-spec.
8124 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8125 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8126 (font_add_log): Prepend the driver name to the resulting fonts.
8127
8128 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8129 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8130 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8131
8132 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8133 (QCembolden): New variables.
8134 (syms_of_xftfont): DEFSYM them.
8135 (xftfont_open): Call XftFontMatch. Don't trust the result of
8136 XftTextExtents8 if the pixel_size is less than 5.
8137
81382008-06-18 Andreas Schwab <schwab@suse.de>
8139
8140 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8141 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8142
81432008-06-18 Jason Rumney <jasonr@gnu.org>
8144
8145 * w32font.c (w32font_list, w32font_match): Add logging.
8146
8147 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8148
81492008-06-17 Chong Yidong <cyd@stupidchicken.com>
8150
8151 * font.c (font_parse_fcname): Store divider characters for
8152 unknown-spec list. For known key symbols, intern using correct
8153 symbol name.
8154
81552008-06-17 Kenichi Handa <handa@m17n.org>
8156
8157 * xfaces.c (realize_default_face): If the frame is not on window
8158 system, set the fontset of face to nil.
8159
81602008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8161
8162 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8163
81642008-06-16 Juanma Barranquero <lekktu@gmail.com>
8165
8166 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8167 (build_font_name_from_vector): Delete externs.
8168
8169 * xfaces.c (struct font_name): Don't declare.
8170
81712008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8172
8173 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8174
81752008-06-16 Chong Yidong <cyd@stupidchicken.com>
8176
8177 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8178
81792008-06-16 Juanma Barranquero <lekktu@gmail.com>
8180
8181 * font.c (Ffont_spec): Fix usage in docstring.
8182 (Ffont_face_attributes): Doc fix.
8183
81842008-06-16 Andreas Schwab <schwab@suse.de>
8185
8186 * font.c (Ffont_face_attributes): Fix definition.
8187
81882008-06-16 Jason Rumney <jasonr@gnu.org>
8189
8190 * font.h (font_style_symbolic_from_value): Remove.
8191
8192 * font.c (font_style_symbolic_from_value): Remove.
8193 (font_style_symbolic): Revert to pre 2008-06-13 version.
8194
8195 * w32font.c (w32_to_fc_weight): New function.
8196 (w32font_full_name, logfont_to_fcname): Use it.
8197
81982008-06-16 Kenichi Handa <handa@m17n.org>
8199
8200 * font.c (font_check_object): Delete it.
8201 (font_clear_cache): Check if a font-object is alive.
8202 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8203 font-object to nil.
8204 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8205 (font_at): Don't call font_check_object.
8206 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8207
82082008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8209
8210 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8211
82122008-06-16 Chong Yidong <cyd@stupidchicken.com>
8213
8214 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8215
82162008-06-15 Chong Yidong <cyd@stupidchicken.com>
8217
8218 * font.c (font_parse_fcname): Only one decimal point.
8219 (font_unparse_fcname): Handle data in family and foundry indices
8220 as symbols, not strings.
8221 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8222
8223 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8224
8225 * font.h (font_unparse_gtkname): Add prototype.
8226
82272008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8228
8229 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8230
82312008-06-15 Andreas Schwab <schwab@suse.de>
8232
8233 * font.c (font_update_drivers): Fix crash when no drivers match.
8234
82352008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8236
8237 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8238 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8239
82402008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8241
8242 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8243
82442008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8245
8246 * process.c (Fserial_process_configure, Fprocess_send_eof):
8247 Use EQ to compare Lisp_Objects.
8248
82492008-06-13 Jason Rumney <jasonr@gnu.org>
8250
8251 * w32fns.c (Fw32_select_font): Remove old font API function.
8252
8253 * w32font.c (logfont_to_fcname): New function.
8254 (Fx_select_font): New font dialog function compatible with
8255 GTK/fontconfig version.
8256
8257 * font.c (font_style_symbolic_from_value): New function.
8258 (font_style_symbolic): Use it.
8259
8260 * font.h (font_style_symbolic_from_value): Declare new function.
8261
82622008-06-13 Juanma Barranquero <lekktu@gmail.com>
8263
8264 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8265 <font-width-table>: Fix typos in docstrings.
8266
82672008-06-13 Daniel Engeler <engeler@gmail.com>
8268
8269 These changes add serial port access.
8270 * process.c: Add HAVE_SERIAL.
8271 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8272 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8273 (list_processes_1, select_wrapper, Fstop_process)
8274 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8275 (status_notify): Modify to handle serial processes.
8276 [HAVE_SERIAL] (Fserial_process_configure)
8277 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8278 New functions.
8279 * process.h (struct Lisp_Process): Add `type'.
8280 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8281 New functions.
8282 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8283 serial ports.
b71ac3dd 8284 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8285 * w32.h: Add FILE_SERIAL.
8286 (struct _child_process): Add ovl_read, ovl_write.
8287
82882008-06-13 Kenichi Handa <handa@m17n.org>
8289
8290 * dispextern.h (enum lface_attribute_index): New member
8291 LFACE_FOUNDRY_INDEX.
8292
8293 * font.c (font_score): Delete arg alternate_families. Check only
8294 weight, slant, width, and size. Ignore the difference of alias
8295 style symbols.
8296 (font_sort_entites): Adjust for the above change. Reflect the
8297 order of font-driver to scores.
8298 (font_list_entities): Don't check alternate_familes here.
8299 (font_clear_prop): Handle foundry.
8300 (font_update_lface): Don't parse "foundry-family" form here.
8301 Handle FONT_FOUNDRY_INDEX.
8302 (font_find_for_lface): Likewise. Handle alternate families here.
8303 If registry is nil, try iso8859-1 and ascii-0.
8304 (font_open_for_lface): Pay attention to size in ENTITY.
8305 (font_open_by_name): Simplify by calling font_load_for_lface.
8306 (free_font_driver_list): Delete it.
8307 (font_update_drivers): Preserve the order of backends.
8308 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8309 of font_score and font_sort_entites.
8310 (font_update_sort_order): Likewise.
8311
8312 * xfaces.c (LFACE_FOUNDRY): New macro.
8313 (check_lface_attrs): Check foundry.
8314 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8315 (merge_face_vectors): Check foundry.
8316 (merge_face_ref): Likewise.
8317 (Finternal_set_lisp_face_attribute): Likewise.
8318 (x_update_menu_appearance): Likewise.
8319 (Finternal_get_lisp_face_attribute): Likewise.
8320 (lface_hash): Likewise.
8321 (lface_same_font_attributes_p): Likewise.
8322 (x_supports_face_attributes_p): Likewise.
8323 (tty_supports_face_attributes_p): Likewise.
8324 (Finternal_set_alternative_font_family_alist): Intern strings.
8325 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8326 (realize_default_face): Set LFACE_FOUNDRY (lface).
8327
8328 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8329 font-driver at first.
8330
8331 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8332
83332008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8334
8335 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8336
83372008-06-12 Jim Meyering <meyering@redhat.com>
8338
8339 Make unexec_free handle NULL the same way free does.
8340 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8341
83422008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8343
8344 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8345 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8346 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8347 (WEAK_ALIAS): Simplify.
8348 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8349 when searching a unibyte buffer.
8350
83512008-06-12 Chong Yidong <cyd@stupidchicken.com>
8352
8353 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8354
83552008-06-12 Juanma Barranquero <lekktu@gmail.com>
8356
8357 * w32font.c: Include ctype.h.
8358
83592008-06-11 Jason Rumney <jasonr@gnu.org>
8360
8361 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8362 misreported as space.
8363 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8364 as aliases for registry iso10646-1.
8365
83662008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8367
8368 * buffer.c (clone_per_buffer_values): Skip `name'.
8369
83702008-06-11 Chong Yidong <cyd@stupidchicken.com>
8371
8372 * font.c (font_parse_fcname): Fix last change; accept decimal
8373 points in font size.
8374
83752008-06-10 Jason Rumney <jasonr@gnu.org>
8376
8377 * w32uniscribe.c (add_opentype_font_name_to_list):
8378 Skip non unicode fonts.
8379
83802008-06-10 Chong Yidong <cyd@stupidchicken.com>
8381
8382 * xfns.c (Fx_font_dialog): New function.
8383
8384 * gtkutil.c (xg_dialog_response_cb): Rename from
8385 xg_file_response_callback.
8386 (pop_down_dialog): Rename from pop_down_file_dialog.
8387 (xg_get_file_name): Callers changed.
8388 (xg_get_font_name): New function.
8389
8390 * gtkutil.h (xg_get_font_name): Insert prototype.
8391
83922008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8393
8394 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8395 x_underline_minimum_display_offset.
8396 (syms_of_xdisp): Declare it here rather than in xterm.c.
8397 * dispextern.h (underline_minimum_offset): Declare it.
8398 * w32term.c (x_draw_glyph_string): Use it.
8399 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8400 (syms_of_xterm): Don't declare it any more.
8401 (x_draw_glyph_string): Adjust to the new name.
8402
84032008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8404
8405 * xterm.c (x_underline_minimum_display_offset): New var.
8406 (x_draw_glyph_string): Use it.
8407 (syms_of_xterm): Declare it.
8408
84092008-06-10 Chong Yidong <cyd@stupidchicken.com>
8410
8411 * font.c (font_parse_fcname): Accept GTK-style font names too.
8412
84132008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8414
8415 * dired.c (file_name_completion): Don't return t if the match is exact
8416 but with different capitalization.
8417 * minibuf.c (Ftry_completion): Simplify.
8418
8419 * window.c (Vwindow_point_insertion_type): New var.
8420 (set_window_buffer): Use it.
8421 (syms_of_window): Init and export it to Lisp.
8422
84232008-06-10 Kenichi Handa <handa@m17n.org>
8424
8425 * font.h (font_intern_prop): Prototype adjusted.
8426
8427 * font.c (font_intern_prop): New arg force_symbol.
8428 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
8429 Adjust for the change of font_intern_prop.
8430
8431 * ftfont.c (ftfont_pattern_entity):
8432 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
8433 (w32_registry):
8434 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
8435 the change of font_intern_prop.
8436
84372008-06-09 Juanma Barranquero <lekktu@gmail.com>
8438
8439 * w32menu.c (digest_single_submenu): Declare extern.
8440
84412008-06-09 Jason Rumney <jasonr@gnu.org>
8442
8443 * w32term.c (x_make_frame_visible): Use alternate restore flags.
8444
8445 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
8446 (parse_single_submenu): Remove.
8447 (digest_single_submenu): Remove.
8448 (syms_of_w32menu): Don't initialise variables that have moved
8449 to menu.c.
8450 (set_frame_menubar): Sync with version in xmenu.c.
8451 (w32_menu_show): Sync with xmenu_show in xmenu.c.
8452
8453 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
8454 Make static again.
8455
84562008-06-09 Jason Rumney <jasonr@gnu.org>
8457
8458 Changes to w32 files related to the move of common menu code
8459 to menu.c on 2008-06-08 by Chong Yidong.
8460
8461 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
8462 defs to w32gui.h.
8463 (single_keymap_panes, push_menu_item, push_menu_pane):
8464 Make globally visible.
8465
8466 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
8467 (local_free, malloc_widget_value, free_widget_value)
8468 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
8469 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
8470 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8471 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
8472 (menu_items, menu_items_allocated, menu_items_used)
8473 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
8474 (init_menu_items, finish_menu_items, discard_menu_items)
8475 (grow_menu_items, push_submenu_start, push_submenu_end)
8476 (push_left_right_boundary, push_menu_pane, push_menu_item)
8477 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
8478 (free_menubar_widget_tree_value, parse_single_submenu)
8479 (update_submenu_strings): Remove functions.
8480 (xmalloc_widget_value): Remove and declare extern.
8481
8482 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
8483 (OBJ1): Build it.
8484
8485 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
8486 (local_heap, local_alloc, local_free, malloc_widget_value)
8487 (free_widget_value): Define here.
8488
84892008-06-09 Kenichi Handa <handa@m17n.org>
8490
8491 * font.h (Qascii_0): Extern it.
8492
8493 * font.c (Qascii_0): New variable.
8494 (syms_of_font): DEFSYM it.
8495 (font_open_by_name): If the registry "iso8859-1" fails, try also
8496 "ascii-0".
8497
8498 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
8499
85002008-06-08 Kenichi Handa <handa@m17n.org>
8501
8502 * .gdbinit (xfont): New command.
8503
85042008-06-08 Andreas Schwab <schwab@suse.de>
8505
8506 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
8507 * Makefile.in (menu.o): Update dependencies.
8508
8509 * Makefile.in (obj): Always add menu.o.
8510 * emacs.c (main): Always call syms_of_menu.
8511 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
8512
85132008-06-08 Chong Yidong <cyd@stupidchicken.com>
8514
8515 * Makefile.in: Compile menu.c.
8516
8517 * lisp.h: Declare syms_of_menu.
8518
8519 * emacs.c (main): Call syms_of_menu.
8520
8521 * keyboard.h: Relocate platform-independent menu definitions from
8522 xmenu.c.
8523
8524 * menu.c: New file. Relocate platform-independent menu
8525 definitions from xmenu.c. Suggested by Adrian Robert.
8526
8527 * xmenu.c: Remove platform-independent menu definitions.
8528 (menu_items menu_items_inuse, menu_items_allocated)
8529 (menu_items_used, menu_items_n_panes)
8530 (menu_items_submenu_depth): Move to keyboard.h.
8531 (init_menu_items, finish_menu_items, unuse_menu_items)
8532 (discard_menu_items, restore_menu_items, save_menu_items)
8533 (grow_menu_items, push_submenu_start, push_submenu_end)
8534 (push_left_right_boundary, push_menu_pane, push_menu_item)
8535 (keymap_panes, single_keymap_panes, single_menu_item)
8536 (list_of_panes, list_of_items, find_and_call_menu_selection)
8537 (xmalloc_widget_value, free_menubar_widget_value_tree)
8538 (parse_single_submenu, digest_single_submenu)
8539 (update_submenu_strings): Move to menu.c.
8540
85412008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
8542
8543 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
8544
85452008-06-06 Miles Bader <miles@gnu.org>
8546
8547 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
8548 face, not frame default.
8549
85502008-06-05 Martin Rudalics <rudalics@gmx.at>
8551
8552 * window.c (pop_up_windows, pop_up_frames)
8553 (display_buffer_reuse_frames, Vpop_up_frame_function)
8554 (Vdisplay_buffer_function, Veven_window_heights)
8555 (Vspecial_display_buffer_names, Vspecial_display_regexps)
8556 (Vspecial_display_function, Vsame_window_buffer_names)
8557 (Vsame_window_regexps, split_height_threshold)
8558 (Vsplit_window_preferred_function): Move those vars to window.el.
8559 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
8560 (Fdisplay_buffer): Move those functions to window.el.
8561 (syms_of_window): Remove corresponding declarations.
8562 (display_buffer): New function.
8563 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
8564 * dispnew.c (Flast_nonminibuf_frame): New function.
8565 * buffer.c (Fpop_to_buffer): Move to window.el.
8566
85672008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8568
8569 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
8570
85712008-06-05 Kenichi Handa <handa@m17n.org>
8572
8573 * coding.c (detect_coding): Fix previous change.
8574 (detect_coding_system): Likewise.
8575
85762008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8577
8578 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
8579
8580 * keymap.c (Vminibuffer_local_filename_must_match_map):
8581 Rename from Vminibuffer_local_must_match_filename_map.
8582 (syms_of_keymap):
8583 * minibuf.c (Fcompleting_read): Adjust accordingly.
8584 * commands.h: Rename declaration as well.
8585
85862008-06-05 Kenichi Handa <handa@m17n.org>
8587
8588 * font.c (Ffont_spec): Don't use font_parse_family_registry for
8589 family name.
8590 (Ffont_put): Likewise.
8591
8592 * fontset.c (fontset_find_font): Call font_open_for_lface with the
8593 current font-spec.
8594
8595 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
8596 is unspecified.
8597
8598 * xfaces.c (realize_x_face): If the font-related face attributes
8599 are the same as those of default face, realize a new fontset from
8600 default->fontset.
8601 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
8602
86032008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
8604
8605 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
8606 (move_it_in_display_line): New wrapper.
8607
8608 * window.c (window_scroll_pixel_based_preserve_x)
8609 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
8610 (window_scroll_pixel_based, window_scroll_line_based):
8611 Use them to preserve column positions.
8612 (syms_of_window): Initialize them.
8613
8614 * indent.c (Fvertical_motion): Extend first arg to allow passing an
8615 (HPOS . VPOS) pair.
8616
8617 * dispextern.h (move_it_in_display_line): Declare.
8618
86192008-06-05 Juanma Barranquero <lekktu@gmail.com>
8620
8621 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
8622 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
8623 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
8624
86252008-06-04 Juanma Barranquero <lekktu@gmail.com>
8626
8627 * window.c (Fset_window_parameter): Doc fix.
8628 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
8629
86302008-06-04 Joakim Verona <joakim@verona.se>
8631
8632 * window.h (struct window): Add new member window_parameters.
8633
8634 * window.c (Fwindow_parameters, Fwindow_parameter)
8635 (Fset_window_parameter): New defuns.
8636 (syms_of_window): Defsubr the new defuns.
8637 (make_window): Initialize window_parameters to nil.
8638
86392008-06-04 John Paul Wallington <jpw@pobox.com>
8640
8641 * eval.c (Fdefmacro): Doc fix.
8642
86432008-06-04 Kenichi Handa <handa@m17n.org>
8644
8645 * coding.c (detect_coding): Fix handling of coding->head_ascii.
8646 Be sure to call setup_coding_system when we find a proper coding system.
8647 (detect_coding_system): Fix handling of coding->head_ascii.
8648
86492008-06-03 Andreas Schwab <schwab@suse.de>
8650
8651 * font.c (font_prop_validate_spacing): Fix last change.
8652
86532008-06-03 Kenichi Handa <handa@m17n.org>
8654
8655 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
8656 (font_parse_fcname): Fix handling of unknown key.
8657
8658 * xfont.c (xfont_list): Try an alias.
8659
8660 * charset.c (char_charset): Return NULL if the arg charset_list is
8661 specified and C doesn't belong to any of them.
8662
86632008-06-02 Chip Coldwell <coldwell@redhat.com>
8664
8665 * font.c (font_pixel_size): Don't take cdr of an integer.
8666
86672008-06-02 Jim Meyering <meyering@redhat.com>
8668
8669 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
8670 * alloc.c (xfree): Return right away for a NULL arg.
8671 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
8672 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
8673 * mac.c (create_apple_event_from_event_ref): Likewise.
8674 (create_apple_event_from_drag_ref, cfstring_create_normalized):
8675 Likewise.
8676 * doprnt.c (doprnt1): Likewise.
8677 * frame.c (frame): Likewise.
8678 * keyboard.c (wipe_kboard): Likewise.
8679 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
8680 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
8681 * term.c (tty_default_color_capabilities, maybe_fatal)
8682 (delete_tty): Likewise.
8683 * w16select.c (string): Likewise.
8684 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
8685 * w32bdf.c (w32_free_bdf_font): Likewise.
8686 * w32fns.c (w32_unload_font): Likewise.
8687 * w32font.c (w32font_close): Likewise.
8688 * window.c (size_window): Likewise.
8689 * xselect.c (receive_incremental_selection): Likewise.
8690 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
8691 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
8692 * w32.c (stat): Likewise.
8693
8694 Remove useless if-before-free tests.
8695 * editfns.c (Fset_time_zone_rule): Likewise.
8696 * lread.c (nosuffix): Likewise.
8697 * ralloc.c (get_bloc): Likewise.
8698 * regex.c (reg_free): Likewise.
8699 * xftfont.c (xftfont_open, xftfont_close): Likewise.
8700 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
8701 * xsmfns.c (smc_save_yourself_CB): Likewise.
8702
87032008-06-02 Kenichi Handa <handa@m17n.org>
8704
8705 * font.c (font_find_for_lface): Handle float font size.
8706 (font_open_for_lface): Likewise.
8707
8708 * xfaces.c (x_supports_face_attributes_p): Check face->font before
8709 comparing the properties.
8710
87112008-06-01 Jason Rumney <jasonr@gnu.org>
8712
8713 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
8714 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
8715 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
8716 Don't add empty script list.
8717 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
8718
87192008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
8720
8721 * Makefile.in (dot, dotdot): Remove, update users.
8722 ".." has been used elsewhere in the file for a long time.
8723 (LIBXT_STATIC): Remove conditional based on unused variable.
8724
87252008-06-01 Miles Bader <miles@gnu.org>
8726
8727 * xfaces.c (Vface_remapping_alist): New variable.
8728 (syms_of_xfaces): Initialize it.
8729 (enum named_merge_point_kind): New type.
8730 (struct named_merge_point): Add `named_merge_point_kind' field.
8731 (push_named_merge_point): Make cycle detection respect different
8732 named-merge-point kinds.
8733 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
8734 Remove face-name alias resolution.
8735 (lface_from_face_name): New definition using
8736 `lface_from_face_name_no_resolve'.
8737 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
8738 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
8739 (get_lface_attributes): New definition that layers face-remapping on
8740 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
8741 (lookup_basic_face): New function.
8742 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
8743 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
8744 `get_lface_attributes'.
8745 (face_at_buffer_position): Use `lookup_basic_face' to lookup
8746 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
8747 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
8748
8749 * xdisp.c (init_iterator): Pass base_face_id through
8750 `lookup_basic_face' when we actually use it as a face-id.
8751 (handle_single_display_prop): Use `lookup_basic_face' to lookup
8752 DEFAULT_FACE_ID.
8753
8754 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
8755 lookup the initial face-id.
8756
8757 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
8758
87592008-06-01 Juanma Barranquero <lekktu@gmail.com>
8760
8761 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
8762 (Fremove_text_properties): Fix typos in docstrings.
8763
87642008-05-31 Kenichi Handa <handa@m17n.org>
8765
8766 * font.c (font_list_entities): Fix the car part of data to be
8767 stored in the cache.
8768
8769 * ftfont.c (ftfont_font_format): Don't use strcasestr.
8770
87712008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8772
8773 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
8774 Add a `test' argument so another predicate than `equal' can be used.
8775 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
8776 (map_char_table): Remove unused vars `c' and `i'.
8777 * lisp.h (Foptimize_char_table): Adjust declaration.
8778 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
8779
87802008-05-30 Kenichi Handa <handa@m17n.org>
8781
8782 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
8783 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
8784 defined.
8785
87862008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
8787
8788 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8789 (Fmake_variable_frame_local): Disallow mixing buffer-local and
8790 frame-local settings for the same variable.
8791
87922008-05-30 Kenichi Handa <handa@m17n.org>
8793
8794 * fontset.c (Ffont_info): Move to font.c.
8795 (syms_of_fontset): Delete defsubr of Sfont_info.
8796
8797 * font.c (font_style_to_value, font_score): Delete casting of the
8798 args to xstcasecmp.
8799 (register_font_driver): Increment num_font_drivers only when
8800 registering the driver globally.
8801 (Ffont_info): Move from fontset.c. Handle a font object too.
8802 (syms_of_font): Defsubr Sfont_info.
8803
88042008-05-29 Kenichi Handa <handa@m17n.org>
8805
8806 * coding.h (enum define_coding_utf8_arg_index): New enum.
8807 (enum coding_attr_index): Change coding_attr_utf_16_bom to
8808 coding_attr_utf_bom.
8809 (enum utf_bom_type): Rename from utf_16_bom_type.
8810 (struct utf_16_spec): Adjust for the above change.
8811 (struct coding_system): Add utf_8_bom in `spec' union.
8812
8813 * coding.c (CODING_UTF_8_BOM): New macro.
8814 (enum coding_category): Delete coding_category_utf_8, add
8815 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
8816 coding_category_utf_8_sig.
8817 (CATEGORY_MASK_UTF_8): Delete it.
8818 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
8819 (CATEGORY_MASK_UTF_8_SIG): New macros.
8820 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
8821 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
8822 CATEGORY_MASK_UTF_8_SIG.
8823 (CATEGORY_MASK_UTF_8): New macro.
8824 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
8825 (detect_coding_utf_8): Check BOM.
8826 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
8827 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
8828 (encode_coding_utf_16): Likewise.
8829 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
8830 (detect_coding, detect_coding_system): Handle utf-8-auto.
8831 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
8832 (syms_of_coding): Fix setting up of Vcoding_category_table.
8833
88342008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
8835
8836 * process.c (Faccept_process_output): If `millisec' is non-nil,
8837 `seconds' default to 0.
8838 (wait_reading_process_output): Also return non-nil if we read output
8839 from a non-running process.
8840
88412008-05-29 Jason Rumney <jasonr@gnu.org>
8842
8843 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
8844 `raster' specified.
8845 (add_font_entity_to_list): Allow non-opentype truetype fonts back
8846 in the uniscribe backend, but disallow any font that has no
8847 unicode subrange support.
8848
88492008-05-29 Juanma Barranquero <lekktu@gmail.com>
8850
8851 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
8852 Fix typos in docstrings.
8853
88542008-05-29 Kenichi Handa <handa@m17n.org>
8855
8856 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
8857 (Fx_family_fonts): Set frame correctly.
8858
88592008-05-28 Jason Rumney <jasonr@gnu.org>
8860
8861 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
8862
88632008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8864
8865 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
8866 calling build_annotations.
8867
88682008-05-28 Juanma Barranquero <lekktu@gmail.com>
8869
8870 * coding.c (Fdecode_coding_region, Fencode_coding_region)
8871 (Fencode_coding_string):
8872 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
8873 <latin-extra-code-table>: Fix typos in docstrings.
8874 (syms_of_coding) <coding-system-alist>: Doc fix.
8875 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
8876
88772008-05-28 Kenichi Handa <handa@m17n.org>
8878
8879 * fontset.c (Ffont_info): Don't call font_close_object.
8880
8881 * font.c (font_parse_family_registry): Use Ffont_put to validate
8882 foundry and family.
8883 (font_delete_unmatched): Don't check spacing.
8884 (font_list_entities): Add spacing to the spec to list fonts.
8885
8886 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
8887 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
8888
8889 * coding.c (encode_coding_raw_text): Fix previous change.
8890 (encode_coding_object): When the dst_object is a buffer and is
8891 different from src_object, move gap to PT.
8892
88932008-05-27 Chong Yidong <cyd@stupidchicken.com>
8894
8895 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
8896
88972008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8898
8899 * coding.c (encode_coding_raw_text): Set coding->produced_char for
8900 all branches. Compute it differently.
8901
8902 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
8903
89042008-05-27 Juanma Barranquero <lekktu@gmail.com>
8905
8906 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
8907 into "else if () ... else ...".
8908
89092008-05-27 Jason Rumney <jasonr@gnu.org>
8910
8911 * w32font.c (w32font_open_internal): Determine if glyph indices
8912 are likely to work here.
8913
89142008-05-27 Chong Yidong <cyd@stupidchicken.com>
8915
8916 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
8917 draw overlap glyphs with appropriate highlighting.
8918
89192008-05-27 Kenichi Handa <handa@m17n.org>
8920
8921 * xfont.c (xfont_open): Fix calculation of font->average_width.
8922
89232008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
8924
8925 * casefiddle.c (casify_object): Try to guess better whether the
8926 argument is a byte or a char.
8927
89282008-05-26 Andreas Schwab <schwab@suse.de>
8929
8930 * xselect.c (x_reply_selection_request): Properly handle format == 32.
8931 Always send multiples of format size.
8932
8933 * xterm.c (x_set_frame_alpha): Fix type mismatch.
8934
89352008-05-26 Jason Rumney <jasonr@gnu.org>
8936
8937 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
8938 (compute_metrics): Don't set failure if we just cleared the cache.
8939 (w32_weight_table): Remove unused variable.
8940 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
8941 backwards compatibility.
8942
89432008-05-25 Kenichi Handa <handa@m17n.org>
8944
8945 * w32term.c (x_draw_glyph_string):
8946 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
8947
8948 * xfaces.c: Delete unused function prototypes.
8949 (xstrlwr, font_frame): Delete them.
8950 (clear_face_cache): Delete unused variable.
8951
8952 * xftfont.c (xftfont_open): Delete unused variable.
8953 If underline_thickness is not 1, adjust underline_position.
8954
8955 * ftxfont.c (ftxfont_open): Delete unused variable.
8956
8957 * fontset.c (face_for_char): Optimize for the case of no charset
8958 property.
8959
8960 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
8961 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
8962 (otf_open, font_otf_capability, generate_otf_features)
8963 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
8964 Comment out by surrounding "#if 0" and "#endif" for the moment.
8965 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
8966 (syms_of_font): Codes for accessing above commented out.
8967
89682008-05-24 Eli Zaretskii <eliz@gnu.org>
8969
8970 * w32proc.c: Include dispextern.h.
8971
8972 * w32.c: Include dispextern.h.
8973
89742008-05-23 Juanma Barranquero <lekktu@gmail.com>
8975
8976 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
8977 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
8978 Fix typos in docstrings.
8979
89802008-05-23 Jason Rumney <jasonr@gnu.org>
8981
8982 * xsmfns.c: Remove includes that are already included by config.h.
8983
89842008-05-23 Kenichi Handa <handa@m17n.org>
8985
8986 * charset.c (Qemacs, charset_emacs): New variables.
8987 (char_charset): Fix for non-Unicode characters.
8988 (syms_of_charset): Define charset_emacs.
8989
8990 * w32term.c (x_draw_glyph_string): Be sure to update
8991 s->underline_thickness and s->underline_position. Be sure to draw
8992 underline within the current line area.
8993
8994 * xterm.c (x_draw_glyph_string): Be sure to update
8995 s->underline_thickness and s->underline_position. Be sure to draw
8996 underline within the current line area.
8997
8998 * fontset.c: Delete unused variables and add casting for char *
8999 throughout the file.
9000 (fontset_font): Try the fallback fonts of the current fontset
9001 before consulting the default fontset.
9002
9003 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9004
9005 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9006
90072008-05-22 Jason Rumney <jasonr@gnu.org>
9008
9009 * font.c: Don't include strings.h.
9010
9011 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9012
9013 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9014 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9015 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9016 to call xstrcasecmp.
9017
9018 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9019
9020 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9021
9022 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9023
9024 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9025
90262008-05-22 Kenichi Handa <handa@m17n.org>
9027
9028 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9029
9030 * font.c (font_prop_validate_style): Adjust for the format
9031 change of font_style_table.
9032
9033 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9034 two args.
9035
9036 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9037 two args.
9038
90392008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9040
9041 * minibuf.c (keys_of_minibuf): Delete.
9042 * lisp.h (keys_of_minibuf): Delete.
9043 * emacs.c (main): Don't call keys_of_minibuf.
9044
90452008-05-22 Kenichi Handa <handa@m17n.org>
9046
9047 * ftfont.c (ftfont_resolve_generic_family): Rename from
9048 ftfont_list_generic_family. Return a single family for each
9049 generic family.
9050 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9051 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9052 Call font_add_log.
9053 (ftfont_match): Call font_add_log.
9054
9055 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9056 (FONT_DEBUG): Define it.
9057 (font_add_log): Extern it.
9058 (font_assert): Rename from xassert.
9059
9060 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9061 (xfont_list_family): Call font_add_log.
9062 (xfont_match): Likewise.
9063 (memq_no_quit): Delete.
9064
9065 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9066 call of Ffont_xlfd_name.
9067
9068 * xfaces.c (struct table_entry, slant_table, weight_table)
9069 (swidth_table): Move to font.c.
9070
9071 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9072 xassert are changed to font_assert. Delete many unused variables.
9073 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9074 New variables.
9075 (struct table_entry): Move from xfaces.c and modified.
9076 (weight_table, slant_table, width_table): Move from xfaces.c and
9077 contents adjusted for the change of struct table_entry.
9078 (font_style_to_value, font_style_symbolic): Adjust for the
9079 format change of font_style_table.
9080 (font_parse_family_registry): Don't overwrite existing foundry and
9081 family of font_spec.
9082 (font_score): Fix calculation of diff for sizes.
9083 (font_sort_entites): Call font_add_log.
9084 (font_delete_unmatched): Return a newly created list.
9085 (font_list_entities): Fix previous change. Call font_add_log.
9086 (font_matching_entity, font_open_entity, font_close_entity):
9087 Call font_add_log.
9088 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9089 (Finternal_set_font_style_table): Delete.
9090 (BUILD_STYLE_TABLE): New macro.
9091 (build_style_table): New function.
9092 (Vfont_log, font_log_env_checked): New variables.
9093 (font_add_log): New function.
9094 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9095 Declare Lisp variables "font-weight-table", "font-slant-table",
9096 "font-width-table", and "font-log". Initialize font_style_table.
9097
90982008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9099
9100 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9101
91022008-05-21 Seiji Zenitani <zenitani@mac.com>
9103 Ryo Yoshitake <ryo@shiftmode.net>
9104
9105 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9106 (Vframe_alpha_lower_limit): New variable.
9107 (x_set_alpha): New function.
9108
9109 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9110
9111 * xfns.c (x-create-frame, Qalpha):
9112 Initialize the frame parameter `alpha'.
9113 * xterm.c (OPAQUE, OPACITY): New.
9114 (x_set_frame_alpha): New function.
9115 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9116
9117 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9118 * w32fns.c (w32_frame_parm_handlers): Likewise.
9119
91202008-05-20 Jason Rumney <jasonr@gnu.org>
9121
9122 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9123 truetype fonts to opentype list.
9124
91252008-05-20 Juanma Barranquero <lekktu@gmail.com>
9126
9127 * fontset.c (Ffontset_info): Doc fix.
9128 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9129 <ignore-relative-composition>: Fix typos in docstrings.
9130
9131 * font.c (syms-of-font) <font-encoding-alist>:
9132 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9133 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9134 (Ffont_otf_alternates): Doc fixes.
9135
91362008-05-20 Kenichi Handa <handa@m17n.org>
9137
9138 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9139 font.h through out the file.
9140 (FONT_DRIVERS): Rename from FONTOBJ.
9141 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9142 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9143
9144 * emacs.c (main): Call syms_of_font unconditionally.
9145
9146 * font.h (find_font_encoding): Extern it.
9147
9148 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9149 fontset.c.
9150 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9151 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9152 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9153 only when HAVE_WINDOW_SYSTEM is defined.
9154 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9155 when HAVE_WINDOW_SYSTEM is defined.
9156
9157 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9158 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9159
9160 * xfaces.c: Include font.h unconditionally.
9161 (merge_face_ref, merge_face_vectors)
9162 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9163
91642008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9165
9166 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9167 indirect_variable.
9168 * eval.c (lisp_indirect_variable): New fun.
9169 (Fuser_variable_p): Use it.
9170
91712008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9172
9173 * lisp.h (indirect_variable):
9174 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9175 Use Lisp_Symbol pointers rather than Lisp_Object.
9176 Adjust callers.
9177 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9178 To this end, change calling-convention.
9179
9180 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9181 if some non-hidden buffers are selected by string&pred.
9182
91832008-05-19 Chong Yidong <cyd@stupidchicken.com>
9184
9185 * process.c (wait_reading_process_output): Always check status
9186 when in batch mode.
9187
91882008-05-19 Kenichi Handa <handa@m17n.org>
9189
9190 * font.c (font_list_entities): Fix handling of cache.
9191 (font_matching_entity): Likewise.
9192
9193 * ftfont.c (cs_iso8859_1): Delete.
9194 (ft_face_cache): New variable.
9195 (struct ftfont_info): New member fc_charset_idx.
9196 (ftfont_build_basic_charsets): Delete.
9197 (fc_charset_table): New variable.
9198 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9199 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9200 Callers changed.
9201 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9202 (ftfont_spec_pattern): New argument fc_charset_idx.
9203 Check registry more rigidly. Change callers.
9204 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9205 change of :font-entity property of the font.
9206
9207 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9208 property of the font.
9209
92102008-05-18 Juanma Barranquero <lekktu@gmail.com>
9211
9212 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9213 (Funencodable_char_position, Fcheck_coding_systems_region)
9214 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9215 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9216 (Ffind_operation_coding_system, Fset_coding_system_priority)
9217 (Fcoding_system_eol_type): Doc fixes.
9218
92192008-05-17 Glenn Morris <rgm@gnu.org>
9220
9221 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9222
92232008-05-16 Eli Zaretskii <eliz@gnu.org>
9224
9225 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9226 and st_gid.
9227
9228 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9229 HAVE_WINDOW_SYSTEM is not defined.
9230
9231 * xfaces.c (merge_face_ref, merge_face_vectors)
9232 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9233 HAVE_WINDOW_SYSTEM is defined.
9234 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9235
92362008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9237
9238 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9239
92402008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9241
9242 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9243
92442008-05-15 Kenichi Handa <handa@m17n.org>
9245
9246 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9247 preference.
9248
92492008-05-15 Glenn Morris <rgm@gnu.org>
9250
9251 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9252
92532008-05-15 Chong Yidong <cyd@stupidchicken.com>
9254
9255 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9256 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9257
9258 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9259
92602008-05-15 Kenichi Handa <handa@m17n.org>
9261
9262 * ftfont.c (ftfont_list): Downcase family name to check generic
9263 families.
9264
9265 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9266 font-spec for QCfont value.
9267
9268 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9269 buffer. Check the return value of it.
9270
92712008-05-14 Jason Rumney <jasonr@gnu.org>
9272
9273 * w32term.c (w32_get_glyph_overhangs): Remove.
9274 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9275
92762008-05-14 Kenichi Handa <handa@m17n.org>
9277
9278 * font.c (font_prop_validate): Make nil a valid value.
9279 (font_clear_cache): Check if the cached vector of entities is nil
9280 or not.
9281
92822008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9283
9284 * emacs.c (main_thread): Conditionalize on
9285 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9286 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9287
9288 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9289 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9290 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9291
92922008-05-14 Kenichi Handa <handa@m17n.org>
9293
9294 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9295 has no corresponding coding system.
9296
92972008-05-14 Jason Rumney <jasonr@gnu.org>
9298
9299 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9300
9301 * w32font.h (w32font_open_internal): Update declaration.
9302
9303 * w32font.c (w32font_open_internal): Change last argument from
9304 w32font_info struct to font object. Fill in font object from
9305 font_entity. Get Outline metrics if possible. Use them to
9306 calculate underline position and thickness. Use xlfd name as name
9307 property. Don't set codepage.
9308 (w32font_open): Pass font_object to w32font_open_internal. Don't
9309 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9310 (w32font_draw): Use s->font.
9311 (clear_cached_metrics): Don't clear non-existent blocks.
9312
9313 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9314 font was not found.
9315 (x_draw_glyph_string): Use underline position and thickness from font.
9316
9317 * w32uniscribe.c (uniscribe_open): Pass font_object to
9318 w32font_open_internal.
9319
93202008-05-14 Kenichi Handa <handa@m17n.org>
9321
9322 These changes are to delete all legacy font-handling codes, and
9323 make Emacs use only font-backends.
9324
9325 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9326 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9327
9328 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9329
9330 * charset.h (Vcharset_non_preferred_head)
9331 (Vcurrent_iso639_language): Extern them.
9332
9333 * charset.c (Vcharset_non_preferred_head): New variable.
9334 (Vcurrent_iso639_language): New variable.
9335 (syms_of_charset): Declare it as a Lisp variable.
9336 (char_charset): Don't check non preferred charsets. As a last
9337 resort, return charset_unicode.
9338 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9339
9340 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9341 conditionals. Don't check enable_font_backend. Delete all codes
9342 used only when USE_FONT_BACKEND is not defined.
9343
9344 * dispextern.h (struct glyph_string): Change type of `font' to
9345 `struct font *'.
9346 (struct glyph_string): New member underline_position and
9347 underline_thickness.
9348 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9349 (struct face): Change type of `font' to `struct font *'. Remove
9350 members `font_name', `font_info_id'.
9351 (per_char_metric, encode_char): Delete externs.
9352 (calc_pixel_width_or_height): Adjust the prototype.
9353
9354 * emacs.c (enable_font_backend): Delete extern.
9355 (main): Don't set enable_font_backend. Don't check the command
9356 line argument "-disable-font-backend".
9357
9358 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9359 (enum font_property_index): New members FONT_DPI_INDEX,
9360 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9361 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9362 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9363 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9364 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9365 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9366 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9367 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9368 (struct font_spec, struct font_entity): New structs.
9369 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9370 (struct font): Many members from old "struct font_info" moved to
9371 here. Members font and entity deleted.
9372 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9373 the new font-related objects.
9374 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9375 (CHECK_FONT_GET_OBJECT): Likewise.
9376 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9377 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9378 (struct font_driver): New members case_sensitive anc check. Type
9379 of the member list and open changed.
9380 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9381 (font_symbolic_width, font_find_object, font_get_spec)
9382 (font_set_lface_from_name): Delete extern.
9383 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9384
9385 * font.c: Include <strings.h>.
9386 (enable_font_backend): Delete it.
9387 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9388 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9389 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9390 (null_string): Delete it.
9391 (null_vector): Make it static.
9392 (font_family_alist): Delete it.
9393 (Qnormal): Extern it.
9394 (QCextra, QClanguage): Delete it.
9395 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9396 (font_make_spec, font_make_entity, font_make_object)
9397 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9398 the string. Callers changed.
9399 (font_pixel_size): Adjusted for the format change of font-related
9400 objects.
9401 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9402 (font_style_to_value, font_style_symbolic): New function.
9403 (build_font_family_alist): Delete it.
9404 (font_registry_charsets): Use Fassoc_string instead of
9405 assq_no_quit.
9406 (font_prop_validate_symbol): Don't return null_string.
9407 (font_prop_validate_style): Adjusted for the change of
9408 style-related values in a font vector.
9409 (font_property_table): Delete entries for QClanguage and
9410 QCantialias, add entries for QCavgwidth.
9411 (get_font_prop_index): Delete the 2nd argument FROM.
9412 (font_prop_validate): Arguments changed.
9413 (font_put_extra): Adjusted for the change of font-related objects.
9414 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
9415 (font_parse_fcname, font_unparse_fcname)
9416 (font_prepare_composition): Likewise.
9417 (font_parse_family_registry): Renamed from font_merge_old_spec.
9418 (otf_open): Delete the 1st arg entity.
9419 (font_otf_capability): Adjusted for the above change.
9420 (font_score): New arg alternate_families. Adjusted for the change
9421 of font-related objects.
9422 (font_sort_entites): New arg best_only.
9423 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
9424 Delete them.
9425 (font_match_p): Check alternate families.
9426 (font_find_object): Delete it.
9427 (font_check_object): New function.
9428 (font_clear_cache): Adjusted for the change of font-related objects.
9429 (font_delete_unmatched): New arg.
9430 (font_list_entities): Call font_driver->list with a spec that
9431 doesn't specify style-related properties.
9432 (font_matching_entity): Arguments changed. Caller changed.
9433 (font_open_entity): Adjusted for the change of font-related objects.
9434 (font_close_object, font_has_char, font_encode_char)
9435 (font_get_name, font_get_spec): Likewise.
9436 (font_spec_from_name, font_clear_prop, font_update_lface):
9437 New functions.
9438 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
9439 (font_prepare_for_face, font_done_for_face, font_open_by_name)
9440 (font_at): Adjusted for the change of font-related objects.
9441 (font_range): New function.
9442 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
9443 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
9444 (Fcopy_font_spec, Fmerge_font_spec): New function.
9445 (Ffont_family_list): Renamed from list-families.
9446 (Finternal_set_font_style_table): Arguments changed.
9447 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
9448 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
9449 change of font-related objects.
9450 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
9451
9452 * fontset.h (struct font_info): Delete it. Most members go to
9453 struct font.
9454 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
9455 (enum FONT_SPEC_INDEX): Delete it.
9456 (font_info, list_fonts_func, load_font_func, query_font_func)
9457 (set_frame_fontset_func, find_ccl_program_func)
9458 (get_font_repertory_func, new_fontset_from_font_name): Delete
9459 externs.
9460 (fontset_from_font_name): Extern it.
9461 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
9462 (FONT_INFO_FROM_FACE): Deleted.
9463 (face_for_font): Adjust prototype.
9464
9465 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
9466 conditionals. Don't check enable_font_backend. Delete all codes
9467 used only when USE_FONT_BACKEND is not defined.
9468 (get_font_info_func, list_font_func, load_font_func)
9469 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
9470 (get_font_repertory_func): Delete them.
9471 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
9472 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
9473 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
9474 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
9475 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
9476 (fontset_compare_rfontdef): New function.
9477 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
9478 rfont-defs by qsort. Adjusted for the change of font-group vector.
9479 (load_font_get_repertory): Deleted.
9480 (fontset_find_font): Use new macros to ref/set elements of
9481 font-def and rfont-def.
9482 (fontset_font): Fix the timing of remembering that no font for C.
9483 (free_face_fontset): Do nothing if the face has no fontset.
9484 (face_suitable_for_char_p): Use new macros to ref/set elements of
9485 rfont-def.
9486 (face_for_char): Likewise. Call face_for_char with font_object.
9487 (fs_load_font): Delete. Delete #pragma surrounding it.
9488 (fs_query_fontset): Use strcasecmp instead of strcmp.
9489 (generate_ascii_font_name): Adjusted for the format change of
9490 font-spec.
9491 (Fset_fontset_font): Likewise. Use new macros to set elements of
9492 font-def.
9493 (Fnew_fontset): Use font_unparse_xlfd to generate
9494 FONTSET_ASCII (fontset).
9495 (new_fontset_from_font_name): Deleted.
9496 (fontset_from_font): Renamed from new_fontset_from_font. Check if
9497 a fontset is already created for the font. FIx updating of
9498 Vfontset_alias_alist.
9499 (fontset_ascii_font): Deleted.
9500 (Ffont_info): Adjusted for the format change of font-spec.
9501 (Finternal_char_font): Likewise.
9502 (Ffontset_info): Likewise.
9503 (syms_of_fontset): Don't check load_font_func.
9504
9505 * fns.c (internal_equal): Handle PREV_FONT.
9506
9507 * frame.h: Delete USE_FONT_BACKEND conditional.
9508
9509 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
9510 conditionals. Don't check enable_font_backend. Delete all codes
9511 used only when USE_FONT_BACKEND is not defined.
9512 (x_set_font): Call x_new_font, not x_new_fontset2.
9513 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
9514 already set for the frame.
9515
9516 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
9517 a font-entity by font_make_entity. Use font_intern_prop instead
9518 of intern_downcase. Use FONT_SET_STYLE to set a style-related
9519 font property. If a font is scalable, set avgwidth property to 0.
9520 Set font-entity property by font_put_extra.
9521 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
9522 (ffont_driver): Adjusted for the change of struct font_driver.
9523 (ftfont_spec_pattern): New function.
9524 (ftfont_list): Return a list, not vector.
9525 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
9526 (ftfont_list_family): Don't downcase names.
9527 (ftfont_free_entity): Deleted.
9528 (ftfont_open): Return a font-object. Adjusted for the change of
9529 struct font. Get underline_thickness and underline_position from
9530 font property. Don't update dpyinfo->smallest_font_height and
9531 dpyinfo->smallest_char_width.
9532 (ftfont_close): Don't free `struct font'.
9533 (ftfont_has_char): Adjusted for the format change of font-entity.
9534 (ftfont_encode_char, ftfont_text_extents): Likewise.
9535
9536 * ftxfont.c (ftxfont_list): Return a list, not vector.
9537 (ftxfont_open): Return a font-object. Adjusted for the change of
9538 struct font. Get underline_thickness and underline_position from
9539 font property. Don't update dpyinfo->smallest_font_height and
9540 dpyinfo->smallest_char_width.
9541 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
9542 (ftxfont_draw): Adjusted for the change of struct font.
9543
9544 * image.c (image_ascent): Don't include "charset.h". Include
9545 "character.h" and "font.h".
9546
9547 * lisp.h (enum pvec_type): New member PREV_FONT.
9548 (Fassoc_string): EXFUN it.
9549
9550 * print.c: Include font.h.
9551 (print_object): Handle font-related objects.
9552
9553 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
9554 conditionals. Don't check enable_font_backend. Delete all codes
9555 used only when USE_FONT_BACKEND is not defined.
9556 (handle_auto_composed_prop): Do nothing if it->f is not on a
9557 window system. Check how many following characters can be
9558 displayed by the same font.
9559 (calc_pixel_width_or_height): Type of the 4th arg is changed to
9560 'struct font *'.
9561 (get_char_face_and_encoding): Assign the whole encoding task to
9562 the `encode-char' method of a font driver.
9563 (fill_composite_glyph_string): Adjusted for the change of `struct
9564 face' and `struct glyph_string'.
9565 (fill_glyph_string): Likewise.
9566 (get_per_char_metric): Arguments changed.
9567 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
9568 and `struct glyph_string'.
9569 (produce_stretch_glyph, calc_line_height_property)
9570 (x_produce_glyphs): Likewise.
9571
9572 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
9573 conditionals. Don't check enable_font_backend. Delete all codes
9574 used only when USE_FONT_BACKEND is not defined. Use
9575 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
9576 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
9577 (Qp): Extern them.
9578 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
9579 Deleted.
9580 (struct font_name): Deleted.
9581 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
9582 (compare_fonts_by_sort_order): New function.
9583 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
9584 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
9585 Deleted.
9586 (Fx_family_fonts): Use font_list_entities, and sort fonts by
9587 compare_fonts_by_sort_order.
9588 (Fx_font_family_list): Call Ffont_family_list.
9589 (face_numeric_value, face_numeric_weight, face_numeric_slant)
9590 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
9591 (face_symbolic_slant, face_symbolic_swidth)
9592 (split_font_name_into_vector, build_font_name_from_vector)
9593 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
9594 (font_rescale_ratio, split_font_name, build_font_name)
9595 (free_font_names, sort_fonts, x_face_list_fonts)
9596 (face_font_available_p, sorted_font_list, cmp_font_names)
9597 (font_list_1, concat_font_list, font_list, remove_duplicates):
9598 Deleted.
9599 (Fx_list_fonts): Use Ffont_list.
9600 (LFACE_AVGWIDTH): Deleted.
9601 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
9602 by FONTP.
9603 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
9604 (set_lface_from_font_name): Delete it.
9605 (set_lface_from_font): Renamed from
9606 set_lface_from_font_and_fontset. Caller changed. Don't set
9607 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
9608 for face.
9609 (merge_face_vectors): Copy font-spec if necessary.
9610 Clear properties of the font-spec if necessary.
9611 (merge_face_ref): Clear properties of the font-spec if necessary.
9612 (Finternal_set_lisp_face_attribute): Likewise.
9613 (set_font_frame_param): Use font_load_for_lface to load a
9614 font-object, and call Fmodify_frame_parameters with it.
9615 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
9616 font name by Ffont_xlfd_name.
9617 (Finternal_lisp_face_attribute_values): Don't check QCweight,
9618 QCslant, and QCwidth.
9619 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
9620 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
9621 Compare fonts by EQ.
9622 (lookup_non_ascii_face): Deleted.
9623 (face_for_font): The 2nd argument changed.
9624 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
9625 Check atomic font properties by case insensitive.
9626 (realize_non_ascii_face): Set face->overstrike correctly.
9627 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
9628 (dump_realized_face): Get font name from
9629 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
9630
9631 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
9632 conditionals. Don't check enable_font_backend. Delete all codes
9633 used only when USE_FONT_BACKEND is not defined.
9634 (xic_create_xfontset): Original code deleted and renamed from
9635 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
9636 (x_make_gc): Don't set GCFont in GCs.
9637 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
9638 opened by "fixed".
9639 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
9640 find_ccl_program_func, query_font_func, set_frame_fontset_func,
9641 get_font_repertory_func.
9642
9643 * xfont.c: Include <stdlib.h> and "ccl.h".
9644 (struct xfont_info): New structure.
9645 (xfont_query_font): Deleted.
9646 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
9647 moved from xterm.c.
9648 (xfont_driver): Adjusted for the change of struct font_driver.
9649 (compare_font_names): New function.
9650 (xfont_list_pattern): Sort font names case insensitively. Make
9651 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
9652 (xfont_list): Return a list, not vector.
9653 (xfont_match): If the font doesn't have QCname property, generate
9654 a name from the other font properties.
9655 (xfont_open): Return a font-object. Adjusted for the change of
9656 struct font. Get underline_thickness and underline_position from
9657 font property. Don't update dpyinfo->smallest_font_height and
9658 dpyinfo->smallest_char_width.
9659 (xfont_close): Don't free struct font.
9660 (xfont_prepare_face): Adjusted for the change of struct font.
9661 (xfont_done_face): Deleted.
9662 (xfont_has_char): Adjusted for the change of struct font.
9663 (xfont_encode_char, xfont_draw): Likewise.
9664 (xfont_check): New function.
9665
9666 * xftfont.c (xftfont_list): Adjusted for the change of `list'
9667 callback function.
9668 (xftfont_match): Adjusted for the format change of font-entity.
9669 (xftfont_open): Adjusted for the format change of font-entity and
9670 font-object. Adjusted for the change of struct font. Return a
9671 font-object. Don't update dpyinfo->smallest_font_height and
9672 dpyinfo->smallest_char_width.
9673 (xftfont_close): Block input while calling XftFontClose.
9674 (xftfont_prepare_face): Don't block input while calling
9675 xftfont_get_colors. Adjusted for the change of struct font.
9676 (xftfont_shape): Return value of error case fixed.
9677
9678 * xrdb.c (x_load_resources): Don't setup a fontset resource.
9679
9680 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
9681 conditionals.
9682 (FONT_WIDTH): Return (f)->max_width.
9683 (struct x_display_info): Delete member `font'.
9684 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
9685 (x_find_ccl_program, x_get_font_repertory): Delete externs.
9686 (struct x_output): Change type of `font' to `struct font *'.
9687
9688 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
9689 conditionals. Don't check enable_font_backend. Delete all codes
9690 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
9691 (x_per_char_metric, x_encode_char): Deleted.
9692 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
9693 (x_compute_glyph_string_overhangs): Adjusted for the change of
9694 `struct face'.
9695 (x_draw_glyph_string_foreground)
9696 (x_draw_composite_glyph_string_foreground): Likewise.
9697 (x_draw_glyph_string): Likewise. Use font->underline_position and
9698 font->underline_thickness.
9699 (x_new_font): Renamed from x_new_fontset2.
9700 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
9701 (x_check_font): Call `check' method of a font driver.
9702 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
9703 (x_query_font, x_get_font_repertory): Deleted.
9704 (x_find_ccl_program): Renamed and moved to xfont.c.
9705 (x_redisplay_interface): Adjusted for the change of `struct
9706 redisplay_interface'.
9707
9708 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
9709 conditionals. Don't check enable_font_backend. Delete all codes
9710 used only when USE_FONT_BACKEND is not defined. Surround non-used
9711 code by "#ifdef OLD_FONT" and "endif".
9712 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
9713
9714 * w32font.h (struct w32font_info): New member.
9715 (FONT_COMPAT): New macro.
9716 (w32font_open_internal): Prototype adjusted.
9717
9718 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
9719 OLD_FONT" and "endif".
9720
9721 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
9722 conditionals. Don't check enable_font_backend. Delete all codes
9723 used only when USE_FONT_BACKEND is not defined.
9724 (w32font_open): Return a font-object. Make a font-object by
9725 font_make_object. Adjusted for the change of struct w32font_info.
9726 (w32font_close): Don't free struct font. Adjusted for the change
9727 of struct w32font_info.
9728 (w32font_encode_char, w32font_text_extents, w32font_draw):
9729 Adjusted for the change of struct w32font_info.
9730 (w32font_draw): Likewise.
9731 (w32font_list_internal): Return a list, not vector.
9732 (w32font_open_internal): Change the 4th arg to font-object.
9733 Adjusted for the change of struct w32font_info and font-object format.
9734 (add_font_name_to_list): Don't downcase names.
9735 (w32_enumfont_pattern_entity): Make a font-entity by
9736 font_make_entity. Adjusted for the format change of font-entity.
9737 Use FONT_SET_STYLE to set a style-related font property. If a
9738 font is scalable, set avgwidth property to 0. Set font-entity
9739 property by font_put_extra.
9740 (font_matches_spec): Adjusted for the format change of font-entity.
9741 (w32_weight_table, w32_decode_weight): New variables.
9742 (w32_encode_weight): New function.
9743 (fill_in_logfont): Adjusted for the format change of font-spec.
9744 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
9745 weight value.
9746 (w32font_driver): Adjusted for the change of struct font_driver.
9747
9748 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
9749 conditionals. Don't check enable_font_backend. Surround non-used
9750 code by "#ifdef OLD_FONT" and "endif".
9751 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
9752 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
9753
9754 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
9755 conditionals. Don't check enable_font_backend. Delete all codes
9756 used only when USE_FONT_BACKEND is not defined. Surround non-used
9757 code by "#ifdef OLD_FONT" and "endif".
9758
9759 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
9760 (uniscribe_open): Return value changed to font-object.
9761 Adjusted for the format change of font-object.
9762 (uniscribe_otf_capability): Adjusted for the change of struct font.
9763 (add_opentype_font_name_to_list): Don't downcase names.
9764 (uniscribe_font_driver): Adjusted for the change of struct
9765 font_driver.
9766
97672008-05-13 Chong Yidong <cyd@stupidchicken.com>
9768
9769 * dispnew.c (update_frame_1): Check if tty output is still valid
9770 before flushing it.
9771
97722008-05-13 Jan Djärv <jan.h.d@swipnet.se>
9773
9774 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
9775 to Gtk+ menus.
9776
97772008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9778
9779 * dired.c (file_name_completion): Tweak the code so as to always do it
9780 in a single pass. Tighten the scope of some variables.
9781
9782 * dired.c (Qdefault_directory): New var.
9783 (file_name_completion): Use it instead of Fexpand_file_name.
9784 (syms_of_dired): Initialize it.
9785
97862008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
9787
9788 * fileio.c (double_dollars): Remove dead code.
9789
97902008-05-10 Eli Zaretskii <eliz@gnu.org>
9791
9792 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
9793 Mention w32-get-true-file-attributes in doc string.
9794
9795 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
9796
97972008-05-09 Glenn Morris <rgm@gnu.org>
9798
9799 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
9800 2008-04-23.
9801
98022008-05-09 Eli Zaretskii <eliz@gnu.org>
9803
9804 Support for reporting owner and group of each file on MS-Windows:
9805 * dired.c (stat_uname, stat_gname): New functions, with special
9806 implementation for w32.
9807 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
9808
9809 * w32.c: Rename the_passwd_* to dflt_passwd_*.
9810 (dflt_group_name): New static variable.
9811 (dflt_group): Rename from the_group.
9812 (init_user_info): Init dflt_group fields. Get user's group name
9813 from LookupAccountSid.
9814 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
9815 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
9816 New initialization states.
9817 (globals_of_w32): Initialize them to zero. Initialize the default
9818 group name to "None".
9819 (GetFileSecurity_Name): New global var, the name of the function
9820 to call for GetFileSecurity.
9821 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
9822 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
9823 (get_file_security, get_security_descriptor_owner)
9824 (get_security_descriptor_group, is_valid_sid)
9825 (get_file_security_desc, get_rid, get_name_and_id)
9826 (get_file_owner_and_group): New functions.
9827 (stat): Use get_file_security_desc and get_file_owner_and_group to
9828 report the owner and primary group of each file. Don't ignore the
9829 high 32 bits of file's size, now that st_size is 64-bit wide.
9830 Fix test when to get true file attributes.
9831 (init_user_info): Use get_rid instead of equivalent inline code.
9832 (fstat): Don't ignore the high 32 bits of file's size.
9833
98342008-05-09 Chong Yidong <cyd@stupidchicken.com>
9835
9836 * image.c (png_load): Use correct bit-depth for setting background
9837 color.
9838
98392008-05-08 Eli Zaretskii <eliz@gnu.org>
9840
9841 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
9842 epa-hook.elc.
9843
98442008-05-08 Juanma Barranquero <lekktu@gmail.com>
9845
9846 * font.c (Ffont_match_p): Don't use `iff' in docstring.
9847
98482008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
9849
9850 * macfns.c (Fx_create_frame): Make a copy of frame parameters
9851 because the original parameters are in pure storage now.
9852 (mac_window): Remove unused params. Update callers.
9853
98542008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
9855
9856 * lread.c (substitute_object_recurse): Use lower-level primitives.
9857 Don't signal errors when traversing sub-char-tables.
9858 Don't loop over all the possible characters when traversing char-tables.
9859
9860 * print.c (print_preprocess): Add sub-char-tables to the print-table,
9861 just like we do in print.c.
9862
98632008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
9864
9865 * minibuf.c (Ftry_completion): Remove code left over from when we used
9866 scmp instead of Fcompare_strings.
9867
98682008-05-04 Juanma Barranquero <lekktu@gmail.com>
9869
9870 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
9871
98722008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9873
9874 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
9875 Create bitmap context in native byte order.
9876
9877 * macterm.c (XDrawLine)
9878 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
9879 context in native byte order.
9880
98812008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9882
9883 * config.in: Regenerate.
9884
9885 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
9886 New definitions for Image I/O support.
9887 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9888 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
9889 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9890 (mac_data_provider_release_data, image_load_image_io)
9891 [USE_MAC_IMAGE_IO]: New functions.
9892 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
9893 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
9894 (init_image_func_pointer) [MAC_OSX]: Remove function.
9895 (image_load_quartz2d) [MAC_OSX]: Check availability of
9896 CGImageCreateWithPNGDataProvider at compile time.
9897 Use lowercase `false' for boolean constant.
9898 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
9899 Use image_load_image_io.
9900 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
9901 Don't check MyCGImageCreateWithPNGDataProvider.
9902 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
9903 Don't call init_image_func_pointer.
9904
9905 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
9906
9907 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
9908 Make variable non-static.
9909 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9910 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
9911
9912 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
9913 (RED_FROM_ULONG): Mask off higher bits.
9914 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
9915
9916 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
9917 Include AvailabilityMacros.h.
9918 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
9919 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
9920
99212008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
9922
9923 * chartab.c (Fset_char_table_range): If range is t, really set all
9924 chars to that value.
9925
99262008-05-03 Eli Zaretskii <eliz@gnu.org>
9927
9928 * dired.c (Ffile_attributes): Don't allow the device number become
9929 negative.
9930
99312008-05-02 Daiki Ueno <ueno@unixuser.org>
9932
9933 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
9934
99352008-05-02 Juri Linkov <juri@jurta.org>
9936
9937 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
9938 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
9939 DEFAULT argument as a list of default values in docstrings.
9940
99412008-05-01 Chong Yidong <cyd@stupidchicken.com>
9942
9943 * puresize.h (BASE_PURESIZE): Increase to 1210000.
9944
99452008-05-01 Martin Rudalics <rudalics@gmx.at>
9946
9947 * dispnew.c (change_frame_size_1): Preserve small windows when
9948 shrinking frames by calling set_window_height|width with third
9949 arg 2.
9950
9951 * window.h (struct window): Replace field too_small_ok by field
9952 resize_proportionally.
9953
9954 * window.c (make_window): Initialize resize_proportionally.
9955 (enlarge_window): Temporarily set resize_proportionally to make
9956 sure that shrink_windows does scale the window proportionally.
9957 (shrink_windows): When window has resize_proportionally set try
9958 to shrink it proportionally by stealing from other windows.
9959 (struct saved_window, Fset_window_configuration)
9960 (compare_window_configurations): Handle resize_proportionally.
9961 (WINDOW_TOTAL_SIZE): New macro.
9962 (window_min_size, shrink_windows, size_window): Use it.
9963 (check_min_window_sizes): Remove. Invalid values of
9964 window-min-height|width are handled by window_min_size_2 now.
9965 (size_window, Fsplit_window, enlarge_window)
9966 (adjust_window_trailing_edge, grow_mini_window): Don't call
9967 check_min_window_sizes.
9968 (window_min_size_2, window_min_size_1, window_min_size):
9969 New argument safe_p for retrieving "safe" minimum sizes.
9970 (Fdisplay_buffer, Fsplit_window, enlarge_window)
9971 (adjust_window_trailing_edge, grow_mini_window):
9972 Adjust arguments of window_min_size... functions.
9973 (shrink_windows): Argument min_size removed. New argument
9974 safe_p allows shrinking windows to their safe minimum sizes.
9975 Calculate minimum size and decide whether a window shall be
9976 deleted for each window individually.
9977 (size_window): When nodelete_p equals 2, tell shrink_windows to
9978 delete windows only if their new minimum size is no more safe.
9979 (shrink_window_lowest_first): Call window_min_size_1 to make
9980 sure to preserve modeline of bottom-most window when resizing
9981 the minibuffer.
9982 (Fset_window_configuration, Fcurrent_window_configuration)
9983 (compare_window_configurations): Do not handle
9984 window-min-height|width any more.
9985 (syms_of_window): Clarify window-min-height|width doc-strings.
9986
99872008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
9988
9989 * dired.c (file_name_completion): Fix up the encoding/decoding issue
9990 some more. Copy some of the code from Ftry_completions.
9991 Remove special case code that dates back to initial revision when the
9992 slash was only added when necessary and that can't trigger nowadays.
9993
99942008-04-27 Kenichi Handa <handa@m17n.org>
9995
9996 * font.c (font_prop_validate): Signal `error' instead of `font'.
9997
99982008-04-29 Jason Rumney <jasonr@gnu.org>
9999
10000 * w32fns.c (Fw32_battery_status): New defun.
10001 (syms_of_w32fns): Defsubr it.
10002
100032008-04-28 Andreas Schwab <schwab@suse.de>
10004
10005 * dired.c (file_name_completion): Fix another mixing of encoded
10006 and decoded names.
10007
100082008-04-28 Juanma Barranquero <lekktu@gmail.com>
10009
10010 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10011
100122008-04-27 Juanma Barranquero <lekktu@gmail.com>
10013
10014 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10015
100162008-04-27 Andreas Schwab <schwab@suse.de>
10017
10018 * dired.c (file_name_completion): Fix inappropriate mixing of
10019 encoded and decoded names.
10020
10021 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10022
10023 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10024
100252008-04-26 Eli Zaretskii <eliz@gnu.org>
10026
10027 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10028 2008-03-31, it's not needed anymore with `struct stat' definition
10029 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10030 for the same reasons.
10031
100322008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10033
10034 * m/sparc.h: Additional redefinitions for GNU/Linux.
10035
100362008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10037
10038 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10039 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10040 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10041 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10042 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10043 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10044 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10045 Likewise.
10046
10047 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10048 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10049 (mac_ax_number_of_characters): Add externs.
10050 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10051 [USE_MAC_TSM]: Likewise.
10052 (mac_handle_text_input_event) [MAC_OSX]:
10053 Handle kEventTextInputOffsetToPos for no active input area case.
10054 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10055 (mac_handle_document_access_event)
10056 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10057 (install_application_handler) [MAC_OSX]: Register handlers for
10058 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10059 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10060 Register mac_handle_document_access_event.
10061
10062 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10063 Make functions non-static.
10064
100652008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10066
10067 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10068 (read_file_name_completion_ignore_case, insert_default_directory)
10069 (Qdefault_directory): Move to minibuffer.el.
10070 (Fread_file_name): Call the new `read-file-name' instead.
10071
100722008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10073
10074 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10075 Make function non-static.
10076 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10077 Remove function.
10078 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10079 Move to mactoolbox.c.
10080 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10081
10082 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10083 (mac_rect_make): New macro.
10084
10085 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10086 instead of float.
10087 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10088 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10089 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10090 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10091 CGRectMake.
10092 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10093 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10094 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10095 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10096 instead of WindowRef in argument type.
10097 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10098 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10099 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10100 instead of DISPLAY. All uses changed.
10101 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10102 (x_calc_absolute_position): Simplify so as not to use
10103 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10104
10105 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10106 instead of WindowRef in argument type.
10107 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10108 [TARGET_API_MAC_CARBON]: Remove externs.
10109 (create_apple_event, mac_event_parameters_to_lisp)
10110 [TARGET_API_MAC_CARBON]: Add externs.
10111
10112 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10113 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10114 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10115 is clicked.
10116 (x_activate_menubar): Remove extern for saved_menu_event_location.
10117 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10118 Move from mac.c.
10119
101202008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10121
10122 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10123 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10124
101252008-04-23 Jason Rumney <jasonr@gnu.org>
10126
10127 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10128 attributes only for local files.
10129
10130 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10131 default to Qlocal.
10132
101332008-04-22 Juri Linkov <juri@jurta.org>
10134
10135 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10136 read-buffer-to-switch instead of using the letter "B".
10137
101382008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10139
10140 * fileio.c (Qdefault_directory): New variable.
10141 (Fread_file_name): Use it to pass `dir' to the completion functions.
10142
101432008-04-20 Chong Yidong <cyd@stupidchicken.com>
10144
10145 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10146
101472008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10148
10149 * keyboard.c (Vpre_help_message): Remove.
10150 (show_help_echo): Remove default C code.
10151
10152 * dired.c (directory_files_internal, file_name_completion):
10153 Only call ENCODE_FILE if the string is indeed decoded.
10154
101552008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10156
10157 * Makefile.in (TOOLKIT_DEFINES): Remove.
10158 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10159
101602008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10161
10162 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10163 (mactoolbox.o): New target.
10164
10165 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10166 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10167
10168 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10169 Use mac_set_frame_window_background instead of XSetWindowBackground.
10170 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10171 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10172 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10173 instead of SetWindowTitleWithCFString.
10174 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10175 Move function to mactoolbox.c.
10176 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10177 Use mac_set_window_modified instead of SetWindowModified.
10178 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10179 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10180 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10181 FrontNonFloatingWindow. Use mac_activate_window instead of
10182 ActivateWindow. Use mac_active_non_floating_window instead of
10183 ActiveNonFloatingWindow.
10184 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10185 Use mac_show_hourglass and mac_hide_hourglass.
10186 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10187 instead of GetGlobalMouse.
10188 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10189 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10190 Use mac_bring_window_to_front instead of BringToFront.
10191 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10192 mactoolbox.c.
10193 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10194 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10195 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10196 mactoolbox.c.
10197
10198 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10199 (XtPointer): Move typedef from macmenu.c.
10200 (enum button_type): Move enum from macmenu.c.
10201 (widget_value): Move typedef from macmenu.c.
10202 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10203 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10204 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10205 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10206 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10207 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10208 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10209 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10210 (Selection): Move typedef from macselect.c.
10211 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10212 macterm.c.
10213 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10214 (mac_is_window_collapsed, mac_bring_window_to_front)
10215 (mac_send_window_behind, mac_hide_window, mac_show_window)
10216 (mac_collapse_window, mac_front_non_floating_window)
10217 (mac_active_non_floating_window, mac_activate_window)
10218 (mac_move_window_structure, mac_move_window, mac_size_window)
10219 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10220
10221 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10222 (enum mac_menu_kind): Move enum to mactoolbox.c.
10223 (min_menu_id): Move variable to mactoolbox.c.
10224 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10225 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10226 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10227 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10228 [TARGET_API_MAC_CARBON]: Likewise.
10229 (XtPointer): Move typedef to macgui.h.
10230 (enum button_type): Move enum to macgui.h.
10231 (widget_value): Move typedef to macgui.h.
10232 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10233 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10234 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10235 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10236 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10237 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10238 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10239 (popup_activated_flag): Make variable non-static.
10240 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10241 (add_menu_item, fill_menu, dispose_menus):
10242 Move functions to mactoolbox.c.
10243 (restore_show_help_function, menu_target_item_handler)
10244 (install_menu_target_item_handler, mac_handle_dialog_event)
10245 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10246 [TARGET_API_MAC_CARBON]: Likewise.
10247 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10248 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10249 (find_and_call_menu_selection, name_is_separator): Make function
10250 non-static.
10251 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10252 to mactoolbox.c.
10253 (set_frame_menubar): Don't call install_menu_quit_handler.
10254 (menu_item_selection): New variable.
10255 (mac_menu_show): Use create_and_show_popup_menu.
10256 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10257 selection but set variable menu_item_selection. All uses changed.
10258 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10259 Call install_menu_quit_handler. Move to mactoolbox.c.
10260
10261 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10262 (Selection): Move typedef to macgui.h.
10263 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10264 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10265 Make variables non-static.
10266 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10267 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10268 Make functions non-static.
10269 (Vmac_service_selection) [MAC_OSX]: Likewise.
10270 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10271 (mac_valid_selection_target_p, mac_clear_selection)
10272 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10273 (mac_put_selection_value, mac_selection_has_target_p)
10274 (mac_get_selection_value, mac_get_selection_target_list)
10275 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10276 Move functions to mactoolbox.c.
10277 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10278 Likewise.
10279 (copy_scrap_flavor_data, mac_handle_service_event)
10280 (install_service_handler) [MAC_OSX]: Likewise.
10281 (syms_of_macselect) <Vmac_dnd_known_types>:
10282 Use mac_dnd_default_known_types.
10283
10284 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10285 Move to mactoolbox.c.
10286 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10287 (Fx_selection_owner_p): Add EXFUN.
10288 (install_window_handler, remove_window_handler, XSetWindowBackground):
10289 Remove externs.
10290 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10291 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10292 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10293 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10294 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10295 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10296 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10297 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10298 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10299 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10300 (mac_valid_selection_target_p, mac_clear_selection)
10301 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10302 (mac_put_selection_value, mac_selection_has_target_p)
10303 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10304 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10305 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10306 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10307 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10308 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10309 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10310 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10311 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10312
10313 * mactoolbox.c: New file.
10314
103152008-04-18 Jason Rumney <jasonr@gnu.org>
10316
10317 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10318
103192008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10320
10321 * character.c (Fmultibyte_char_to_unibyte):
10322 Return latin1 chars unchanged.
10323
10324 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10325 relocated if it points to `name'.
10326
103272008-04-17 Kenichi Handa <handa@m17n.org>
10328
10329 * data.c (Faset): Allow setting a multibyte character in an
10330 ASCII-only unibyte string.
10331
10332 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10333
103342008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10335
10336 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10337 done in config.h.
10338
103392008-04-16 Juanma Barranquero <lekktu@gmail.com>
10340
10341 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10342 (Fchar_direction): Add usage in the docstring.
10343
103442008-04-15 Chong Yidong <cyd@stupidchicken.com>
10345
10346 * keyboard.c (read_key_sequence): Remove always-true checks.
10347
103482008-04-14 Jason Rumney <jasonr@gnu.org>
10349
10350 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10351 compatibility struct, for better underline positioning.
10352
103532008-04-13 David Hansen <david.hansen@gmx.net>
10354
10355 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10356 string.
10357
103582008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10359
10360 * m/hp800.h (XUINT, XSET): Remove.
10361
103622008-04-12 Juanma Barranquero <lekktu@gmail.com>
10363
10364 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10365 previous change.
10366
103672008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10368
10369 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10370 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10371
103722008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10373
10374 * keymap.h (map_keymap_canonical): Declare.
10375 * xmenu.c (single_keymap_panes): Use it.
10376
103772008-04-11 Glenn Morris <rgm@gnu.org>
10378
10379 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10380 set the target's value to that of the alias.
10381
103822008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10383
10384 * term.c (set_tty_color_mode): Left over typo.
10385
103862008-04-10 Michael Albinus <michael.albinus@gmx.de>
10387
10388 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10389 only after check for file name handler functions. Signal, when
10390 native functionality is not supported.
10391 (syms_of_fileio): Declare it unconditionally.
10392
103932008-04-10 Jason Rumney <jasonr@gnu.org>
10394
10395 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10396 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10397
10398 * w32.c (logon_network_drive): Also logon to remote drives that
10399 are mapped to drive letters.
10400
104012008-04-10 Glenn Morris <rgm@gnu.org>
10402
10403 * xdisp.c (truncate-partial-width-windows): Doc fix.
10404
104052008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10406
10407 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10408 Move functions to minibuffer.el.
10409 (syms_of_fileio): Don't declare them.
10410
104112008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10412
10413 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
10414 (syms_of_minibuf): Remove its initialization.
10415
10416 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
10417
104182008-04-09 Juanma Barranquero <lekktu@gmail.com>
10419
10420 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
10421
104222008-04-09 Jason Rumney <jasonr@gnu.org>
10423
10424 * makefile.w32-in (distclean): Delete makefile too.
10425 (maintainer-clean): New target.
10426
10427 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
10428
10429 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
10430 for new font backend and composite cases.
10431
104322008-04-09 Jan Djärv <jan.h.d@swipnet.se>
10433
10434 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
10435 Most of the code moved to run_timers.
10436 (do_pending_atimers): Call run_timers.
10437 (run_timers): New function.
10438
10439 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
10440 run atimers.
10441
10442 * process.c (wait_reading_process_output): The same as above.
10443
104442008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10445
10446 * minibuf.c (last_exact_completion): Remove variable.
10447 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
10448 (complete_and_exit_1, complete_and_exit_2)
10449 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
10450 (Fdisplay_completion_list, display_completion_list_1)
10451 (Fminibuffer_completion_help, Fself_insert_and_exit)
10452 (Fexit_minibuffer, Fminibuffer_message): Move functions to
10453 minibuffer.el.
10454 (syms_of_minibuf): Remove corresponding initializations.
10455
10456 * keyboard.c (Qdeactivate_mark): New var.
10457 (command_loop_1): Use it to call `deactivate-mark'.
10458 (syms_of_keyboard): Initialize it.
10459
10460 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
10461 to another frame.
10462 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
10463 Don't call set_tty_color_mode.
10464 (store_frame_param): Reset previous_frame rather than call
10465 set_tty_color_mode.
10466 * term.c (set_tty_color_mode): Rewrite.
10467 * dispextern.h (set_tty_color_mode): New type.
10468 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
10469
104702008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
10471
10472 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
10473 for generic chars, which do not exist any more in emacs-unicode.
10474
104752008-04-08 Michael Albinus <michael.albinus@gmx.de>
10476
10477 * coding.c (detect_coding_emacs_mule)
10478 (Ffind_operation_coding_system): Fix typo.
10479
104802008-04-08 Jason Rumney <jasonr@gnu.org>
10481
10482 * w32uniscribe.c (SNAME): Extract only symbol name.
10483
10484 * w32font.h (struct w32_metric_cache): New struct.
10485 (w32font_info): Use it.
10486 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
10487 (CACHE_BLOCKSIZE): New constants.
10488
10489 * w32font.c (Qja, Qko, Qzh): New symbols.
10490 (syms_of_w32font): Initialise them.
10491 (font_matches_spec): Use them to filter by language.
10492 (recompute_cached_metrics): Remove function.
10493 (compute_metrics, clear_cached_metrics): New functions.
10494 (w32font_encode_char): Use them to manage metric cache.
10495 (w32font_text_extents): Cache metrics for all glyphs on demand.
10496 Delay converting glyph indices to WORD until needed.
10497 (w32font_open_internal): Initialize metric cache to empty.
10498 (registry_to_w32_charset): Charset should always be a symbol.
10499 (fill_in_logfont, list_all_matching_fonts): Family should
10500 always be a symbol.
10501
105022008-04-06 Jason Rumney <jasonr@gnu.org>
10503
10504 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
10505 Give up if glyph indices not supported. Use uniscribe obtained
10506 ABC widths for individual metrics. Map glyph clusters back to
10507 characters using fClusterStart flag. Return number of glyphs
10508 produced, not chars processed.
10509 (uniscribe_shape): Map char at FROM to current glyph.
10510
105112008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10512
10513 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
10514 Use SetMenuItemHierarchicalMenu.
10515
105162008-04-05 Jason Rumney <jasonr@gnu.org>
10517
10518 * image.c (pbm_load): Allow color values up to 65535.
10519 Throw an error if max_color_idx is outside the supported range.
10520 Report an error when image size is invalid.
10521 Read two bytes at a time when raw images have max_color_idx above 255.
10522
105232008-04-05 Eli Zaretskii <eliz@gnu.org>
10524
10525 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10526 cFileName a file name that includes `?' characters, use the 8+3
10527 alias in cAlternateFileName instead.
10528
105292008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
10530
10531 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
10532 append "CCL: Quitted" when the CCL program is quitted.
10533 (setup_ccl_program): Initialize ccl->quit_silently to zero.
10534
10535 * ccl.h (struct ccl_program): New member quit_silently.
10536
105372008-04-05 Chong Yidong <cyd@stupidchicken.com>
10538
10539 * search.c (compile_pattern_1): Treat non-nil and non-string of
10540 search-spaces-regexp as nil.
10541
10542 * minibuf.c (Fassoc_string): Tweak docstring.
10543
105442008-04-05 Eli Zaretskii <eliz@gnu.org>
10545
10546 * dired.c (Ffile_attributes): Support inode numbers wider than 32
10547 bits. Remove ugly WINDOWSNT-specific kludge introduced on
10548 2008-03-14 to force inode be positive.
10549
10550 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
10551 _S_* ones, since we now use our own sys/stat.h.
10552 (stat, fstat): Don't mangle the inode number.
10553 (init_user_info): Don't restrict UID and GID to 0-60000 range.
10554
105552008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
10556
10557 * frame.h (struct frame): Give one more bit to `visible' since we use
10558 values larger than 1 to indicate obscured frames on ttys.
10559
10560 * keymap.c (Qkeymap_canonicalize): New var.
10561 (Fmap_keymap_internal): New fun.
10562 (describe_map): Use keymap-canonicalize.
10563
10564 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
10565 (Fundo_boundary): Set them.
10566 (syms_of_undo): Initialize them.
10567 (record_point): Use them instead of last_point_position*.
10568 (last_undo_buffer): Change type.
10569
105702008-04-04 Jason Rumney <jasonr@gnu.org>
10571
10572 * w32font.c (w32font_text_extents): Use font's ascent and descent.
10573 (recompute_cached_metrics): Don't set ascent and descent per char.
10574
10575 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
10576 (uniscribe_check_otf): Add GC protection before consing.
10577 Rearrange loop for counting features.
10578
105792008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10580
10581 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
10582 buffer with byte-size of source buffer.
10583
105842008-04-03 Chong Yidong <cyd@stupidchicken.com>
10585
10586 * callint.c (Fcall_interactively): Handle temporary region even
10587 when shift-select-mode is off.
10588
105892008-04-03 Jason Rumney <jasonr@gnu.org>
10590
10591 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
10592
105932008-04-03 Kenichi Handa <handa@m17n.org>
10594
10595 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
10596 (CATEGORY_MASK_UTF_16): Likewise.
10597 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
10598 binary file.
10599 (detect_coding): Add null-byte detection for a binary file.
10600 (detect_coding_system): Likewise.
10601
106022008-04-03 Jason Rumney <jasonr@gnu.org>
10603
10604 * w32uniscribe.c: New file.
10605
10606 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
10607
10608 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
10609
10610 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
10611 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
10612 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
10613 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
10614 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
10615 (Qphonetic): New symbols.
10616 (syms_of_w32font): Initialize them.
10617 (font_supported_scripts): Use them.
10618 (w32font_list_family): List all charsets.
10619 (w32font_text_extents, recompute_cached_metrics): Fix metric
10620 calculations.
10621 (w32_enumfont_pattern_entity): Make full_type a DWORD.
10622 Give opentype fonts their own format.
10623 (font_matches_spec): New arguments backend and logfont.
10624 Handle :otf spec for uniscribe backend.
10625 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
10626 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
10627
10628 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
10629 font backend.
10630 (globals_of_w32fns): Initialize uniscribe font backend.
10631
10632 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
10633 dependencies.
10634 (w32uniscribe.$(O)): New file to build.
10635 (FONT_OBJ): Include w32uniscribe.$(O).
10636 (LIBS): Add uniscribe libraries.
10637
10638 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
10639
106402008-04-02 Chong Yidong <cyd@stupidchicken.com>
10641
10642 * callint.c (Vshift_select_mode): New var.
10643 (Finteractive): Document new ^ spec.
10644 (Fcall_interactively): Call handle-shift-selection if the ^ spec
10645 is present.
10646
10647 * keyboard.c (Vthis_command_keys_shift_translated): New var.
10648 (command_loop_1): Avoid running the direct display versions of
10649 forward-char and backward-char if shift-selection may occur.
10650 (read_key_sequence): Set Vthis_command_keys_shift_translated if
10651 shift-translation takes place.
10652
10653 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
10654 avoid clobbering by define-minor-mode.
10655
10656 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
10657 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
10658
10659 * syntax.c (Fforward_word): Add ^ interactive spec.
10660
10661 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
10662 (Fscroll_right): Add ^ interactive spec.
10663
106642008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
10665
10666 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
10667
10668 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
10669
10670 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
10671
106722008-03-31 Juri Linkov <juri@jurta.org>
10673
10674 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
10675
106762008-03-30 Jan Djärv <jan.h.d@swipnet.se>
10677
10678 * gtkutil.c (xg_set_geometry): Fix indentation.
10679 (xg_resize_outer_widget): Remove.
10680 (x_wm_size_hint_off): Fix indentation.
10681 (xg_frame_set_char_size): Call flush_and_sync after
10682 gtk_window_resize.
10683 (x_wm_set_size_hint): Pass NULL as geometry window to
10684 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
10685 Add menu bar and tool bar height to base height.
10686 (xg_update_frame_menubar, free_frame_menubar)
10687 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
10688 (update_frame_tool_bar, free_frame_tool_bar):
10689 Change xg_resize_outer_widget to xg_frame_set_char_size.
10690
106912008-03-30 Michael Albinus <michael.albinus@gmx.de>
10692
10693 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
10694 (Fdbus_call_method): New parameter TIMEOUT.
10695 (dbus-send-signal): Optimize UNGCPRO call.
10696
106972008-03-29 Juri Linkov <juri@jurta.org>
10698
10699 * window.c (Fdisplay_buffer): Move call to
10700 Vsplit_window_preferred_function out of conditions that check
10701 if window is eligible for vertical splitting.
10702 When Vsplit_window_preferred_function is non-nil, call it and use
10703 its non-nil return value as window. Otherwise, continue doing
10704 vertical splitting using Fsplit_window with arg horflag=nil.
10705 (syms_of_window) <Vsplit_window_preferred_function>: Change the
10706 default value from `split-window' to nil.
10707
107082008-03-29 Juri Linkov <juri@jurta.org>
10709
10710 * callint.c (Fcall_interactively): Revert 2008-03-16 change
10711 for interactive code letters 'b' and 'B'.
10712
107132008-03-29 Eli Zaretskii <eliz@gnu.org>
10714
10715 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
10716 multibyte string.
10717
107182008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
10719
10720 * keyboard.c (pending_funcalls): New var.
10721 (timer_check): Run it.
10722 (syms_of_keyboard): Initialize it.
10723 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
10724 (Vdelete_terminal_functions): New vars.
10725 (syms_of_terminal): Initialize them.
10726 (Fdelete_terminal): Run delete-terminal-functions.
10727 * xdisp.c (safe_eval): Rewrite.
10728 (safe_call2): New fun.
10729 * frame.c (Qdelete_frame_functions): New var.
10730 (syms_of_frame): Initialize it.
10731 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
10732 * lisp.h (safe_call2, pending_funcalls): Declare.
10733
107342008-03-28 Andreas Schwab <schwab@suse.de>
10735
10736 * indent.c (Fmove_to_column): Move declaration before statements.
10737
107382008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
10739
10740 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
10741 (struct frame): Use bit fields for boolean vars.
10742
10743 * process.c (server_accept_connection): Simplify naming.
10744 (emacs_get_tty_pgrp): Use SDATA.
10745
10746 * coding.c (decode_coding_object): Fix last change.
10747
107482008-03-27 Jason Rumney <jasonr@gnu.org>
10749
10750 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
10751
107522008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
10753
10754 * charset.c (Fdefine_charset_internal): Change the way of
10755 registering charsets in Vcharset_order_list.
10756 (syms_of_charset): Make the charset `eight-bit' supplementary.
10757
107582008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
10759
10760 * regex.c (EXTEND_BUFFER): Change order of pointer addition
10761 operations, to avoid having the difference between pointers
10762 overflow.
10763
107642008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
10765
10766 * indent.c (check_display_width): New fun.
10767 (scan_for_column): Use it.
10768
10769 * data.c (syms_of_data): Mark most-positive-fixnum and
10770 most-negative-fixnum as constants.
10771
10772 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
10773
10774 * indent.c (scan_for_column): Extract from current_column_1.
10775 Merge with the same code from Fmove_to_column.
10776 (current_column_1, Fmove_to_column): Use it.
10777
107782008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
10779
10780 * keymap.c (map_keymap_internal): New fun.
10781 (map_keymap): Use it.
10782 (Fmap_keymap_internal): New fun.
10783 (Fmap_keymap): Remove left-out test from before make_save_value.
10784
10785 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
10786
10787 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
10788 Use XCAR/XCDR.
10789
10790 * process.h (struct Lisp_Process): Remove filter_multibyte.
10791 * process.c (QCfilter_multibyte): Remove.
10792 (setup_process_coding_systems): Don't use filter_multibyte.
10793 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
10794 (read_process_output): Don't adjust multibyteness to filter_multibyte.
10795 (Fset_process_filter_multibyte): Change the coding-system to
10796 approximate the previous behavior.
10797 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
10798 coding-system.
10799
10800 * coding.c (decode_coding_object): When not decoding into a buffer,
10801 obey the coding system's preference of (uni|multi)byte.
10802
108032008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
10804
10805 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
10806 every char is changed and has a different byte-length.
10807 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
10808 Fix int -> EMACS_INT.
10809
108102008-03-23 David Hansen <david.hansen@gmx.net>
10811
10812 * dbusbind.c (xd_read_message): Remove extra copying of message
10813 strings. Check for NULL `interface' or `member'.
10814
108152008-03-22 Eli Zaretskii <eliz@gnu.org>
10816
10817 * w32.c (readdir): If FindFirstFile/FindNextFile return in
10818 cFileName a file name that includes `?' characters, use the 8+3
10819 alias in cAlternateFileName instead.
10820
108212008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
10822
10823 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
10824
108252008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10826
10827 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
10828 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
10829 work on current_buffer only instead (that was already the case
10830 for some of the code anyway).
10831 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
10832 (temp_set_point, temp_set_point_both): Use EMACS_INT.
10833 (SET_PT, SET_PT_BOTH): Adjust.
10834 * intervals.h (set_point, temp_set_point, set_point_both)
10835 (temp_set_point_both): Remove redundant declarations.
10836
108372008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
10838
10839 * fileio.c (Finsert_file_contents):
10840 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
10841 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
10842 when buffer != current_buffer anyway.
10843
108442008-03-20 Andreas Schwab <schwab@suse.de>
10845
10846 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
10847 as default.
10848
108492008-03-19 Jason Rumney <jasonr@gnu.org>
10850
10851 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
10852 (syms_of_w32fns): Initialize them.
10853 (HOURGLASS_ID): New constant.
10854 (x_window_to_frame): Don't check hourglass_window.
10855 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
10856 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
10857 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
10858 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
10859 Only change the cursor if hourglass is not active.
10860 (Fx_create_frame): Initialize frame's current_cursor.
10861 (hourglass_atimer): Remove.
10862 (hourglass_started): New function.
10863 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
10864 (show_hourglass): Adapt to w32, changing argument to frame.
10865
10866 * w32term.h (struct w32_output): Remove hourglass_window.
10867 Add current_cursor.
10868
10869 * eval.c (call_debugger, Fsignal):
10870 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
10871 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
10872 (Fexecute_extended_command, cancel_hourglass_unwind):
10873 * minibuf.c (read_minibuf):
10874 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
10875
108762008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
10877
10878 * window.c (run_funs): New fun.
10879 (run_window_configuration_change_hook): Use it to run the buffer-local
10880 and the global part of the hook.
10881
10882 * xdisp.c (format_mode_line_unwind_data): Add window argument.
10883 (unwind_format_mode_line): Restore selected window.
10884 (x_consider_frame_title, Fformat_mode_line): Set selected window.
10885
108862008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10887
10888 * editfns.c (Fchar_equal): Check they are valid characters.
10889
10890 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
10891
108922008-03-17 Andreas Schwab <schwab@suse.de>
10893
10894 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
10895 against a charset.
10896
10897 * lisp.h (Fbuffer_list): Declare.
10898
108992008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 10900
aac0c6e3
MR
10901 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
10902 handlebox_widget is != 0.
10903
109042008-03-16 Juri Linkov <juri@jurta.org>
10905
10906 * callint.c (Fcall_interactively): For interactive code letters
10907 'b' and 'B' put the buffer list into the list of default "future"
10908 values of the minibuffer.
10909
109102008-03-16 Andreas Schwab <schwab@suse.de>
10911
10912 * keyboard.c (read_key_sequence): Fix downcasing of letters with
10913 modifiers.
10914
10915 * regex.c (re_match_2_internal): Correct matching of a charset
10916 against latin-1 characters.
10917
109182008-03-16 Kenichi Handa <handa@m17n.org>
10919
10920 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
10921 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
10922 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
10923 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
10924 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
10925 CHAR_STRING_ADVANCE.
10926 (produce_chars): Fix for the case that the source and the
10927 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
10928 instead of CHAR_STRING_ADVANCE.
10929 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
10930 STRING_CHAR_ADVANCE.
10931
109322008-03-15 Andreas Schwab <schwab@suse.de>
10933
10934 * regex.c (re_match_2_internal): Correct matching of eight bit
10935 characters in unibyte strings.
10936
109372008-03-15 Martin Rudalics <rudalics@gmx.at>
10938
10939 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
10940 at end of range when it coincides with the end of the buffer.
10941
109422008-03-14 Eli Zaretskii <eliz@gnu.org>
10943
10944 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
10945
10946 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
10947
109482008-03-14 Jason Rumney <jasonr@gnu.org>
10949
10950 * editfns.c (initial_tz): New variable.
10951 (syms_of_editfns): Initialize it.
10952 (Fset_time_zone_rule): Set it when first called.
10953 Use it when TZSTRING is nil.
10954
10955 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
10956 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
10957 (monitor_from_point_fn, get_monitor_info_fn): New globals.
10958 (globals_of_w32fns): Initialize them.
10959 (compute_tip_xy): Use them to position tooltips.
10960
109612008-03-14 Glenn Morris <rgm@gnu.org>
10962
10963 * emacs.c (main): Revert previous change.
10964 (standard_args): Revert -internal-script back to -scriptload,
10965 and remove the long-option form.
10966
109672008-03-13 Glenn Morris <rgm@gnu.org>
10968
10969 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
10970 Remove option -enable-font-backend.
10971
109722008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
10973
10974 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
10975
109762008-03-11 Jan Djärv <jan.h.d@swipnet.se>
10977
10978 * xterm.c (x_connection_closed): For GTK: If this is the last
10979 terminal just exit without closing the display.
10980
109812008-03-11 Jason Rumney <jasonr@gnu.org>
10982
10983 * w32font.c (w32font_full_name): Use floor to round.
10984
f0131492 109852008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
10986
10987 * sound.c (alsa_configure): Declare vol at beginning of block.
10988
10989 * fontset.c (Ffontset_info): Remove extra semicolon.
10990
109912008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
10992
10993 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
10994 size of resulting string.
10995
109962008-03-10 Jason Rumney <jasonr@gnu.org>
10997
10998 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
10999
110002008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11001
11002 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11003 Don't pretend as if characters with display property haven't been
11004 consumed for string-replacing-string case.
11005
110062008-03-08 Kim F. Storm <storm@cua.dk>
11007
11008 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11009 (get_next_display_element, next_element_from_string)
11010 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11011
110122008-03-08 Andreas Schwab <schwab@suse.de>
11013
11014 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11015
110162008-03-06 Jason Rumney <jasonr@gnu.org>
11017
11018 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11019 when charset not specified. Only translate ANSI to unicode when
11020 font_type is truetype.
11021 (w32font_coverage_ok): New function.
11022 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11023
110242008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11025
11026 * lread.c (Fread_char): Resolve modifiers.
11027 (Fread_char_exclusive): Likewise.
11028
11029 * character.c (char_resolve_modifier_mask): New function.
11030 (char_string): Use char_resolve_modifier_mask.
11031 (Fchar_resolve_modifiers): New function.
11032 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11033 function.
11034
110352008-03-04 Jason Rumney <jasonr@gnu.org>
11036
11037 * makefile.w32-in: Always include w32font.c in the build.
11038 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11039
110402008-03-04 Andreas Schwab <schwab@suse.de>
11041
11042 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11043 (versionclean): Likewise.
11044
110452008-03-04 Juanma Barranquero <lekktu@gmail.com>
11046
11047 * .cvsignore: Add oo.
11048
110492008-03-03 Andreas Schwab <schwab@suse.de>
11050
11051 * coding.c (decode_coding_object): Inhibit gap shrinking while
11052 decoding in place.
11053
110542008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11055
11056 * w32term.c: Remove unused include "gnu.h".
11057 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11058
11059 * gnu.h: Rename to ...
11060 * emacs-icon.h: ... this.
11061 * xterm.c: Use emacs-icon.h instead of gnu.h.
11062 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11063
110642008-03-03 Juanma Barranquero <lekktu@gmail.com>
11065
11066 * w32font.c: Include math.h.
11067
110682008-03-03 Jason Rumney <jasonr@gnu.org>
11069
11070 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11071 Compute options separately.
11072 (w32font_open_internal): Set glyph_idx before caching metrics.
11073
11074 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11075 Define if system headers don't.
11076 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11077 (w32font_encode_char): Don't declare here.
11078
11079 * w32font.c (Quniscribe, QCformat): New symbols.
11080 (syms_of_w32font): Define them.
11081 (w32font_has_char): Indicate uncertainty.
11082 (w32font_encode_char): Encode as glyph point. Make static.
11083 (recompute_cached_metrics): New function.
11084 (w32font_open_internal): Use it. Set font to use glyph points
11085 initially. Set format based on type of font.
11086 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11087 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11088 on it. Set format based on information available here.
11089 (add_font_entity_to_list): Identify backend based on opentype_only.
11090
110912008-03-02 Andreas Schwab <schwab@suse.de>
11092
11093 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11094
11095 * coding.c (decode_coding_big5, produce_chars):
11096 Fix typos in last change.
11097
110982008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11099
11100 * gnu.h: New icon.
11101
111022008-03-02 Kenichi Handa <handa@m17n.org>
11103
11104 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11105 `dos', don't decode '\r' if that is the last in the source.
11106 (decode_coding_utf_16, decode_coding_emacs_mule)
11107 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11108 (decode_coding_raw_text, decode_coding_charset): Likewise.
11109 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11110
111112008-03-01 Jason Rumney <jasonr@gnu.org>
11112
11113 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11114
111152008-03-01 Kim F. Storm <storm@cua.dk>
11116
11117 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11118
111192008-03-01 Jason Rumney <jasonr@gnu.org>
11120
11121 * w32font.c (w32font_full_name): New function.
11122 (w32font_open_internal): Use it.
11123
111242008-03-01 Kim F. Storm <storm@cua.dk>
11125
11126 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11127
111282008-03-01 Jason Rumney <jasonr@gnu.org>
11129
11130 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11131
111322008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11133
11134 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11135 xg_frame_resized when the event is for the edit widget.
11136
11137 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11138
11139 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11140 set_char_size.
11141 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11142 operations on widgets here. Just set frame size if needed.
11143 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11144 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11145 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11146 the whole frame.
11147 (xg_create_tool_bar): Move attachment of the tool bar to
11148 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11149 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11150
111512008-03-01 Jason Rumney <jasonr@gnu.org>
11152
11153 * w32fns.c (w32_msg_pump): Disable debug code.
11154
111552008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11156
11157 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11158
111592008-02-29 Chong Yidong <cyd@stupidchicken.com>
11160
11161 * xdisp.c (next_overlay_string): Don't set
11162 overlay_strings_at_end_processed_p if we're currently reading from
11163 a display string.
11164
111652008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11166
11167 * xdisp.c (get_overlay_strings_1): Fix typo.
11168
111692008-02-29 Chong Yidong <cyd@stupidchicken.com>
11170
11171 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11172
111732008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11174
11175 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11176
11177 * xdisp.c (display_mode_element): Cancel the previous change.
11178 (decode_mode_spec): Likewise.
11179 (handle_auto_composed_prop): Don't make composition if it->string
11180 is a string.
11181
111822008-02-27 Kim F. Storm <storm@cua.dk>
11183
11184 * lisp.h (GLYPH): Change type from int to struct with separate char
11185 and face_id members.
11186 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11187 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11188 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11189 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11190 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11191 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11192 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11193 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11194 handle new Lisp glyph code encoding, either an integer or a cons.
11195
11196 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11197 (GLYPH_ALIAS): Delete.
11198 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11199 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11200 (GLYPH_FROM_CHAR): Replace macro by ...
11201 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11202
11203 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11204 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11205 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11206 (GLYPH_INVALID_P): New macro.
11207 (spec_glyph_lookup_face): Update prototype.
11208
11209 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11210 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11211 new glyph code encoding.
11212 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11213 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11214
11215 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11216 Adapt to new glyph type and new glyph code encoding.
11217
11218 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11219
11220 * indent.c (current_column, current_column_1, Fmove_to_column)
11221 (compute_motion): Adapt to new glyph code encoding.
11222
11223 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11224
112252008-02-27 Chong Yidong <cyd@stupidchicken.com>
11226
11227 * process.c (wait_reading_process_output): Check for window
11228 changes caused by timers.
11229 Suggested by Johan Bockgård.
11230
112312008-02-27 Glenn Morris <rgm@gnu.org>
11232
11233 * emacs.c (USAGE1): Add `--disable-font-backend'.
11234
112352008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11236
11237 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11238 is made to the buffer.
11239
112402008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11241
11242 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11243 (face_at_string_position):
11244 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11245 (face_at_string_position):
11246 * xdisp.c (display_string, next_overlay_change):
11247 * buffer.h (overlays_at):
11248 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11249 Update callers.
11250
112512008-02-26 Chong Yidong <cyd@stupidchicken.com>
11252
11253 * editfns.c (Fformat): Doc fix.
11254
112552008-02-26 Juanma Barranquero <lekktu@gmail.com>
11256
11257 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11258 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11259 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11260
112612008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11262
11263 * buffer.c (Fbuffer_swap_text): New function.
11264 (syms_of_buffer): Defsubr it.
11265
112662008-02-25 Chong Yidong <cyd@stupidchicken.com>
11267
11268 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11269
112702008-02-25 Jason Rumney <jasonr@gnu.org>
11271
11272 * w32font.c (w32font_draw): Draw one character at a time when padding.
11273
112742008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11275
11276 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11277 Handle a nil arg. Use run_window_configuration_change_hook.
11278 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11279 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11280 Use run_window_configuration_change_hook.
11281
112822008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11283
11284 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11285 1-pixel width.
11286
112872008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11288
11289 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11290 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11291 if the glyph in the font is zero pixel with.
11292
11293 * dispextern.h (struct glyph_string): New member padding_p.
11294
11295 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11296
11297 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11298
11299 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11300
11301 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11302
11303 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11304
113052008-02-25 Jason Rumney <jasonr@gnu.org>
11306
11307 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11308
113092008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11310
11311 Allow fine-grained image-cache flushing.
11312 * dispextern.h (struct image): Add `dependencies' field.
11313 (clear_image_caches): Change arg to Lisp_Object.
11314 * image.c (make_image): Initialize `dependencies' field.
11315 (clear_image_cache): Change arg to allow fine-grained flushing.
11316 Perform the flush even if image-cache-eviction-delay is nil.
11317 (clear_image_caches): Change arg to Lisp_Object.
11318 (Fclear_image_cache): Expand meaning of the argument.
11319 (mark_image): Mark `dependencies' field.
11320 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11321 (lface_hash): Use XHASH rather than XFASTINT.
11322 (face_at_buffer_position): Fix int -> EMACS_INT position.
11323 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11324 (select_frame_for_redisplay): Remove code duplication.
11325 (redisplay_internal): Adapt arg to call to clear_image_caches.
11326
113272008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11328
11329 * s/vms4-0.h:
11330 * s/vms4-2.h:
11331 * s/vms4-4.h:
11332 * s/vms5-5.h: Remove, unused.
11333
11334 * s/irix5-2.h:
11335 * s/irix6-0.h:
11336 * s/riscos5.h:
11337 * s/mach-bsd4-3.h:
11338 * m/mips4.h: Remove files for obsolete systems.
11339
11340 * Makefile.in:
11341 * filelock.c:
11342 * unexmips.c:
11343 * m/hp9000s300.h:
11344 * m/iris4d.h:
11345 * s/aix3-1.h:
11346 * s/hpux.h:
11347 * s/msdos.h:
11348 * s/usg5-0.h:
11349 * s/usg5-2-2.h:
11350 * s/usg5-2.h:
11351 * s/usg5-3.h: Remove references to obsolete variables.
11352
11353 * s/irix5-0.h: Remove, move all the contents ...
11354 * s/irix6-5.h: ... here. Simplify.
11355 * config.in: Regenerate.
11356
113572008-02-24 Jason Rumney <jasonr@gnu.org>
11358
11359 * w32term.c (x_draw_glyph_string_background): Clear the background
11360 manually when cleartype is in use.
11361 (x_draw_glyph_string_foreground): Draw text transparently when
11362 cleartype is in use.
11363
11364 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11365 a font into it unless we have to.
11366
113672008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11368
11369 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11370 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11371
aac0c6e3
MR
113722008-02-18 Jason Rumney <jasonr@gnu.org>
11373
11374 * w32fns.c (Fw32_shell_execute): Encode parameters.
11375
113762008-02-09 Eli Zaretskii <eliz@gnu.org>
11377
11378 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11379
113802008-02-05 Juanma Barranquero <lekktu@gmail.com>
11381
11382 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11383
113842008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11385
11386 * xterm.c (x_set_offset): Don't change the gravity if
11387 CHANGE_GRAVITY is -1.
11388
113892008-02-23 Chong Yidong <cyd@stupidchicken.com>
11390
11391 * fileio.c (auto_save_error_occurred): New var.
11392 (auto_save_error): Set it.
11393 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11394 error occurred.
11395
113962008-02-23 Eli Zaretskii <eliz@gnu.org>
11397
11398 * w32.c (globals_of_w32): Add initializations for
11399 g_b_init_get_sid_sub_authority and
11400 g_b_init_get_sid_sub_authority_count.
11401
114022008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11403
11404 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11405 (font_parse_xlfd): Use them for sanity check.
11406 (Finternal_set_font_style_table): Make sure the table is bijective.
11407
11408 Consolidate the image_cache to the terminal struct.
11409 * termhooks.h (P_): Remove redundant def.
11410 (struct terminal): New field `image_cache'.
11411 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
11412 of FRAME_X_IMAGE_CACHE.
11413 * xterm.h (struct x_display_info): Remove image_cache field.
11414 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11415 * w32term.h (struct w32_display_info): Remove image_cache field.
11416 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11417 * macterm.h (struct mac_display_info): Remove image_cache field.
11418 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
11419 * xterm.c (x_term_init):
11420 * w32term.c (w32_term_init):
11421 * macterm.c (mac_term_init): Set the image_cache in the terminal.
11422 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
11423 Remove declarations.
11424 (clear_image_caches, mark_image_cache): New declarations.
11425 * xfaces.c (clear_face_cache):
11426 * xdisp.c (redisplay_internal): Use clear_image_caches.
11427 * image.c (clear_image_cache): Don't check that a frame is on
11428 a window-system before checking if it shares the same cache.
11429 (clear_image_caches): New function.
11430 (Fclear_image_cache): Use it.
11431 (mark_image): Move from allo.c.
11432 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
11433 * alloc.c (mark_image, mark_image_cache): Move to image.c.
11434 (mark_object): Don't call mark_image_cache for frames.
11435 (mark_terminals): Call mark_image_cache.
11436
11437 * lisp.h (Fdelete_terminal): Declare.
11438
11439 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
11440 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
11441 wrong_type_argument.
11442
114432008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
11444
11445 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
11446 malayalam.el, and tamil.el. Add sinhala.el.
11447
114482008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
11449
11450 * xterm.c (x_connection_closed): Consolidate identical tests.
11451 (x_delete_terminal): Don't crash if called via x_connection_closed.
11452
114532008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
11454
11455 * xdisp.c (decode_mode_spec): New arg string.
11456 (display_mode_element): Adjust for the above change.
11457
114582008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11459
11460 * callint.c (Fcall_interactively): Use AREF.
11461
114622008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
11463
11464 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
11465
114662008-02-18 Jan Djärv <jan.h.d@swipnet.se>
11467
11468 * xfns.c (Fx_show_tip): Set string to " " if empty.
11469
114702008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
11471
11472 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
11473 with Qt.
11474
114752008-02-17 Kenichi Handa <handa@m17n.org>
11476
11477 * ftfont.c (ftfont_shape): Return Lispy number.
11478
11479 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
11480 for GCs.
11481 (Finternal_set_font_selection_order): Call font_update_sort_order
11482 only when enable_font_backend is set.
11483 (realize_x_face): Set face->font_info to that of default face only
11484 when enable_font_backend is set.
11485
11486 * xdisp.c (handle_composition_prop): Set it->c to the fist
11487 character of the composed region.
11488 (fill_composite_glyph_string): Set base_face->font_info to
11489 s->font_info. Get a face for ascii from base_face->ascii_face.
11490 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
11491 with a face already decided.
11492 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
11493 non-negative.
11494 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
11495 call font_prepare_composition unconditionally.
11496
11497 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
11498
11499 * xterm.h (struct x_display_info): New member font.
11500
11501 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
11502 (x_set_mouse_face_gc, x_new_font): Likewise.
11503 (x_term_init): Setup display_info->font.
11504 (x_delete_terminal): Free display_info->font.
11505
11506 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
11507
11508 * ftxfont.c (ftxfont_default_fid): Delete it.
11509 (ftxfont_open): Set xfont->fid to 0.
11510 (ftxfont_end_for_frame): Clear data specific to the frame and the
11511 font-driver.
11512
11513 * xftfont.c (xftfont_default_fid): Delete it.
11514 (xftfont_open): Set xfont->fid to 0.
11515
11516 * fontset.c (FONTSET_OBJLIST): New macro.
11517 (fontset_find_font): Update font-object list of the fontset.
11518 (free_realized_fontset): New function.
11519 (free_face_fontset): Call free_realized_fontset.
11520 (Ffont_info): Call font_close_object only when enable_font_backend
11521 is set.
11522
11523 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
11524 [HAVE_NTGUI]: Include w32term.h.
11525 [MAC_OS]: Include macterm.ch.
11526 (font_otf_ValueRecord): Use make_number.
11527 (font_finish_cache): Fix handling of reference count.
11528 (font_clear_cache): Update num_fonts.
11529 (font_open_entity): Update smallest_char_width and
11530 smallest_font_height of the frame.
11531 (font_close_object): Update num_fonts.
11532 (Fclear_font_cache): Fix finding the target cache data.
11533
115342008-02-16 Glenn Morris <rgm@gnu.org>
11535
11536 * fontset.c (Finternal_char_font): Fix compilation warning.
11537
115382008-02-16 Eli Zaretskii <eliz@gnu.org>
11539
11540 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
11541 instead of char arrays. Enlarge the size of array passed to
11542 get_token_information.
11543
11544 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
11545 warnings.
11546
115472008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
11548
11549 * .gdbinit: Don't set `args', it breaks gdb --args.
11550
115512008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
11552
11553 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
11554 within a narrowed buffer.
11555
115562008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
11557
11558 * coding.c (decode_coding_object, encode_coding_object):
11559 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
11560
115612008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
11562
11563 * coding.c (coding_set_destination): Use BEG_BYTE rather than
11564 hardcoding 1.
11565 (detect_coding_system):
11566 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
11567 (string_char_to_byte, string_byte_to_char, insert_from_gap):
11568 * insdel.c (insert_from_gap):
11569 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
11570 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
11571 (string_to_multibyte):
11572 * character.c (chars_in_text, multibyte_chars_in_text):
11573 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
11574
11575 * character.h (FETCH_STRING_CHAR_ADVANCE)
11576 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
11577 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
11578 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
11579
11580 * casefiddle.c (casify_region): Only call after-change and composition
11581 functions on the part of the region that was changed.
11582
11583 * keyboard.c (read_avail_input):
11584 * frame.c (Fdelete_frame): Call Fdelete_terminal.
11585
115862008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11587
11588 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
11589 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
11590
115912008-02-11 Juanma Barranquero <lekktu@gmail.com>
11592
11593 * w32menu.c (push_submenu_start, push_submenu_end)
11594 (push_left_right_boundary, push_menu_pane, push_menu_item):
11595 * keyboard.c (read_key_sequence): Don't pass args with side effects
11596 to AREF, it fails when compiling with -DENABLE_CHECKING.
11597
115982008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
11599
11600 * Makefile.in (${lispsource}international/charprop.el):
11601 Delete this target.
11602
11603 * search.c (boyer_moore): Fix incorrect synching of the trunk and
11604 emacs-unicode-2.
11605
116062008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
11607
11608 * terminal.c (Fdelete_terminal): Clean up the `force' path.
11609
116102008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11611
11612 * frame.c (Qnoelisp): New symbol.
11613 (syms_of_frame): Initialize it.
11614 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
11615 harmless Elisp code, from a strong `force' from x_connection_closed.
11616 * frame.h (Qnoelisp): Declare.
11617 * xterm.c (x_connection_closed): Pass `noelisp'.
11618
11619 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
11620 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
11621 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
11622 rather than `int' for the type of `type'.
11623
116242008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
11625
11626 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
11627
11628 * Makefile.in (GNUC): Remove support for gcc-1.x.
11629
116302008-02-10 Richard Stallman <rms@gnu.org>
11631
11632 * lisp.h (ASET): Use AREF, not ASLOT.
11633
116342008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
11635
11636 * lisp.h (ASET): Check bounds.
11637
116382008-02-10 Glenn Morris <rgm@gnu.org>
11639
11640 * buffer.c (mode-name): Doc fix.
11641
116422008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11643
11644 * Makefile.in:
11645 * emacs.c:
11646 * gmalloc.c:
11647 * keyboard.c:
11648 * lisp.h:
11649 * m/ibm370aix.h:
11650 * process.c:
11651 * regex.c:
11652 * s/hpux.h:
11653 * sysdep.c:
11654 * sysselect.h:
11655 * systty.h:
11656 * unexec.c:
11657 * w32term.c:
11658 * xsmfns.c:
11659 * xterm.c: Remove code that deals with obsolete variables.
11660
11661 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
11662
11663 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
11664 nothing else needs it anymore.
11665
116662008-02-09 Eli Zaretskii <eliz@gnu.org>
11667
11668 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
11669 instead of unibyte_char_to_multibyte.
11670
116712008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
11672
11673 * s/gnu-linux.h: Remove commented out code.
11674
11675 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
11676
11677 * Makefile.in: Update what RMS says about using autoconf.
11678 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
11679 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
11680 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
11681 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
11682
116832008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
11684
11685 * keymap.c (Fkey_description): Move side effect outside of macro call.
11686
11687 * xfaces.c (Finternal_make_lisp_face):
11688 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
11689
11690 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
11691 (syms_of_fontset): Use ASET.
11692
11693 * fns.c (concat): Move side effect outside of macro call.
11694 (hash_clear): Use ASET.
11695
116962008-02-08 Richard Stallman <rms@gnu.org>
11697
11698 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
11699 If FORCE, and frame has a surrogate minibuffer for another frame,
11700 delete the other frame first.
11701
117022008-02-07 Timo Savola <timo.savola@iki.fi>
11703
11704 * xterm.c (x_detect_focus_change): Handle embed client message.
11705 (handle_one_xevent): Ditto.
11706 (handle_one_xevent): If embedded and we get a button press/release,
11707 request focus.
11708 (xembed_set_info, xembed_send_message): New functions.
11709 (x_make_frame_visible): Call xembed_set_info if embedded.
11710 (x_make_frame_invisible): Call xembed_set_info if embedded.
11711 (x_term_init): Initialize Xatom_XEMBED.
11712 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
11713 (x_iconify_frame): Ditto.
11714
11715 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
11716 (enum xembed_info, enum xembed_message, enum xembed_focus)
11717 (enum xembed_modifier, enum xembed_accelerator): New.
11718 (xembed_set_info, xembed_send_message): Declare.
11719 (FRAME_X_EMBEDDED_P): New.
11720
11721 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
11722 gtk_plug_new.
11723
11724 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
11725 window ID of a frame.
11726 (x_window): Reparent frame if embedded.
11727 (Fx_create_frame): Don't set border width if embedded.
11728
11729 * emacs.c (USAGE3): Add --parent-id.
11730 (standard_args): Ditto.
11731
117322008-02-07 Jan Djärv <jan.h.d@swipnet.se>
11733
11734 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
11735
117362008-02-07 Jim Meyering <meyering@redhat.com>
11737
11738 Use "do...while (0)", not "if (1)...else" in macro definitions.
11739 The latter provokes a warning from gcc about the empty else, when
11740 followed by ";". Also, without that trailing semicolon, it would
11741 silently swallow up any following statement.
11742 * syntax.h (SETUP_SYNTAX_TABLE)
11743 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
11744 * buffer.h (DECODE_POSITION): Likewise.
11745 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
11746 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
11747 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
11748 (FETCH_CHAR_ADVANCE): Likewise.
11749 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
11750
117512008-02-07 Jim Meyering <meyering@redhat.com>
11752
11753 * lread.c [lint]: Don't include <sys/inode.h>.
11754
117552008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
11756
11757 * xselect.c (x_handle_dnd_message):
11758 * xmenu.c (digest_single_submenu, xmenu_show):
11759 * xdisp.c (with_echo_area_buffer_unwind_data)
11760 (format_mode_line_unwind_data, unwind_format_mode_line)
11761 (display_menu_bar):
11762 * eval.c (Ffetch_bytecode):
11763 * doc.c (store_function_docstring):
11764 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
11765 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
11766 * buffer.c (add_overlay_mod_hooklist): Use ASET.
11767
117682008-02-07 Kenichi Handa <handa@m17n.org>
11769
11770 * ftxfont.c (ftxfont_open): Don't set
11771 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
11772
11773 * ftfont.c (ftfont_open): Fix previous change.
11774
117752008-02-06 Jason Rumney <jasonr@gnu.org>
11776
11777 * w32font.c (w32font_text_extents): Fill in lbearing metric.
11778 Use cached metrics for ASCII characters.
11779 (w32font_open_internal): Don't set font's owning_frame.
11780 Cache metrics for ASCII characters.
11781
11782 * w32font.h (struct w32font_info): Add ascii_metrics.
11783 Remove owning_frame.
11784
117852008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
11786
11787 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
11788 to negative value.
11789
11790 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
11791
11792 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
11793
11794 * charset.c (syms_of_charset): Set QCtest and Qeq.
11795
117962008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
11797
11798 * process.c (Fstart_process):
11799 * callproc.c (Fcall_process): Handle the case where
11800 Funhandled_file_name_directory returns nil.
11801
11802 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
11803 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
11804 * font.c (check_gstring): Use them and AREF to access the vector before
11805 we know it's really a gstring.
11806 (Ffont_shape_text): Fix typo.
46e722a9 11807 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
11808
11809 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
11810 Declare.
11811
11812 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
11813
118142008-02-05 Jason Rumney <jasonr@gnu.org>
11815
11816 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
11817 Set smallest_font_height and smallest_char_width in display info.
11818
118192008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
11820
11821 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
11822
118232008-02-05 Miles Bader <miles@gnu.org>
11824
11825 * xfaces.c (get_lface_attributes, merge_named_face)
11826 (lookup_named_face, lookup_derived_face, realize_named_face):
11827 Revert 2008-02-01 change by cyd@stupidchicken.com.
11828
118292008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
11830
11831 * fontset.c (Ffontset_info): Handle the case of inhibitting the
11832 fallback fonts.
11833 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
11834
118352008-02-04 Jason Rumney <jasonr@gnu.org>
11836
11837 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
11838 set full_name.
11839 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
11840
118412008-02-03 Jason Rumney <jasonr@gnu.org>
11842
11843 * makefile.w32-in (OBJ1): Include font.o here.
11844 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
11845
118462008-02-02 Jason Rumney <jasonr@gnu.org>
11847
11848 * makefile.w32-in (temacs): Bump EMHEAP to 21.
11849
118502008-02-01 Jason Rumney <jasonr@gnu.org>
11851
11852 * s/cygwin.h: Define VIRT_ADDR_VARIES.
11853
11854 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
11855
118562008-02-01 Andreas Schwab <schwab@suse.de>
11857
11858 * Makefile.in (shortlisp, lisp): Update for rename of
11859 ../lisp/language/myanmar.el.
11860
118612008-02-01 Chong Yidong <cyd@stupidchicken.com>
11862
11863 * xfaces.c (get_lface_attributes): Delete function.
11864 (merge_named_face, lookup_named_face, lookup_derived_face)
11865 (realize_named_face): Call lface_from_face_name directly, and use
11866 the fact that merge_face_vectors does not alter its FROM argument.
11867
118682008-02-01 Jason Rumney <jasonr@gnu.org>
11869
11870 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
11871 input in the default locale. Handle non-Unicode multibyte input.
11872
118732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11874
11875 * fontset.c (reorder_font_vector): Exclude nil elements from the
11876 font group. Don't try multiple fonts.
11877 (fontset_font): Adjust for the above change.
11878 (Finternal_char_font): Return nil if the found font doesn't
11879 contain the character ch.
11880
11881 * Makefile.in (lisp, shortlisp): Add cham.el.
11882
118832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11884
11885 * font.h (FONTP): Make it return 1 also for a font-object.
11886
11887 * .gdbinit (xfontset): New function.
11888
11889 * font.c (font_find_for_lface): Check if the character C is
11890 supported or not only for the first font.
11891
11892 * fontset.c (reorder_font_vector): Fix typo.
11893 (fontset_find_font): Don't add a font-spec specifying a script.
11894 Use 0 (not Qt) for the indication of empty font-group. Change the
11895 format of RFONT-DEF. Return Qt if no font in the font-group
11896 support the character.
11897 (fontset_font): Adjust for the above change. If no font was
11898 found the character, remember that.
11899 (face_for_char): Adjust for the change of RFONT-DEF.
11900 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
11901 no font for the target.
11902 (Finternal_char_font): Adjust for the change of RFONT-DEF.
11903
119042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11905
11906 * font.c (font_load_for_face): Handle the case that the font in
11907 face->lface is a string.
11908
119092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11910
11911 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
11912
119132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11914
11915 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
11916 Fix previous change. If the frame is not on a window system,
11917 signal an error.
11918
119192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11920
11921 * coding.c (decode_coding_object, encode_coding_object): Adjust
11922 marker positions after conversion.
11923
11924 * lisp.h (struct Lisp_Marker): New member need_adjustment.
11925
119262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11927
11928 * font.c (font_find_for_lface): Fix the handling of the return
11929 value of font_has_char.
11930 (Ffont_shape_text): Fix previous change.
11931
11932 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
11933 (fontset_ref_and_range): Delete it.
11934 (fontset_find_font): Call char_table_ref_and_range instead of
11935 FONTSET_REF_AND_RANGE.
11936 (make_fontset): Don't setup font groups of Latin here.
11937 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
11938 (new_fontset_from_font): Make the specified font the default for
11939 all Latin characters.
11940
119412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11942
11943 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
11944 is on a window system before accessing the fontset of the frame.
11945
119462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11947
11948 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
11949
11950 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
11951 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
11952
11953 * font.c (Ffont_shape_text): If the font driver doesn't have a
11954 shaper function, make zero-width glyphs to have at least one-pixel
11955 width. Fix setting of `to' field of glyphs.
11956
119572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11958
11959 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
11960 glyphs.
11961
11962 * font.h (struct font_driver): Improve docstring of member `shape'.
11963
119642008-02-01 Kenichi Handa <handa@m17n.org>
11965
11966 * composite.c (syms_of_composite): Fix docstring of
11967 auto-composition-function.
11968
11969 * font.h (LGLYPH_SIZE): New macro.
11970
11971 * font.c (Ffont_fill_gstring): Stop filling when a character not
11972 supported by the font is found.
11973 (Ffont_shape_text): When a shape callback function returns nil,
11974 try at most two more times with larger gstring.
11975 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
11976
11977 * xdisp.c (handle_auto_composed_prop): Change the argument to
11978 auto-composition-function.
11979
11980 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
11981 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
11982 Lispy glyph and store it in the lgstring.
11983
11984 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
11985
11986 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
11987
119882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11989
11990 * font.c (Ffont_shape_text): Avoid unnecessary composition.
11991
11992 * fontset.c (Vfont_encoding_charset_alist): New variable.
11993 (syms_of_fontset): DEFVAR it.
11994 (reorder_font_vector, fontset_find_font): Optimize for the case of
11995 no need of reordering.
11996 (face_for_char): Map the charset property by
11997 Vfont_encoding_charset_alist.
11998
119992008-02-01 Jason Rumney <jasonr@gnu.org>
12000
12001 * w32font.c (logfonts_match): Don't check adstyle here.
12002 (font_matches_spec): Check here against physical font instead.
12003 (add_font_entity_to_list): Avoid some substitutions.
12004
12005 * font.c (font_parse_fcname): Default weight and slant to normal.
12006 (font_score): Prefer normal fonts if weight or slant unspecified.
12007 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12008 match freetype scores.
12009
120102008-02-01 Jason Rumney <jasonr@gnu.org>
12011
12012 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12013 font, as it may have been deleted.
12014 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12015 most common hyphenless variation.
12016 (logfonts_match): Check generic family.
12017 (font_matches_spec): Don't check generic family here.
12018 (fill_in_logfont): Set generic family based on adstyle.
12019
12020 * w32font.h (w32font_get_cache): Update declaration.
12021
120222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12023
12024 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12025
12026 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12027 If none of the new drivers are available, call font_update_drivers
12028 with the old drivers.
12029
12030 * w32font.c (w32font_get_cache): Adjust the argument type.
12031
12032 * xfont.c (xfont_get_cache): Adjust the argument type.
12033
12034 * font.h (struct font_driver): Change argument type of get_cache.
12035
12036 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12037
12038 * font.c (Ffont_get): Fix arguments to Fassoc.
12039 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12040 (font_clear_cache): New function.
12041 (font_list_entities, font_matching_entity): Use font_get_cache.
12042 (font_update_drivers): Call font_clear_cache when finishing a driver.
12043
12044 * fontset.c (fontset_find_font): Fix previous change.
12045
120462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12047
12048 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12049 dpyinfo->font_table.
12050 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12051 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12052
12053 * font.c (font_at): Handle the case that the arg C is negative.
12054 Handle the unibyte case.
12055 (Ffont_at): Call font_at with the arg C -1.
12056
12057 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12058 the position here, and call font_at with the arg C -1.
12059 Don't check the range of the existing composition at the point.
12060
120612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12062
12063 * fontset.c (fontset_add): New args charset_id and family.
12064 Change caller.
12065 (load_font_get_repertory, fontset_find_font): Assume that
12066 font_spec is always a font-spec object.
12067 (Fset_fontset_font): Always store a font-spec object in a fontset.
12068
12069 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12070 instead of get_property_and_range.
12071
120722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12073
12074 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12075 (xftfont_open): Don't keep locking face.
12076 (xftfont_close): Don't unlock face.
12077 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12078
12079 * fontset.c (fontset_find_font): Don't prefer a font of
12080 supplementary charset.
12081
120822008-02-01 Kenichi Handa <handa@m17n.org>
12083
12084 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12085 script, langsys_tag to langsys, new member script.
12086 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12087 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12088 listing to the script specified in that property. Fix arg to
12089 OTF_check_features.
12090
120912008-02-01 Jason Rumney <jasonr@gnu.org>
12092
12093 * w32font.h: New file.
12094
12095 * w32font.c: Include it.
12096 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12097 (w32font_open): Set owning_frame.
12098 (w32font_text_extents): Use owning_frame.
12099 (struct font_callback_data): Add opentype_only field.
12100 (add_font_entity_to_list): Use it to filter fonts.
12101 Don't check against full name.
12102 (w32font_list_internal): New function.
12103 (w32font_list): Use it.
12104 (w32font_match_internal): New function.
12105 (w32font_match): Use it.
12106 (w32font_open_internal): New function.
12107 (w32font_open): Use it.
12108 (w32font_get_cache, w32font_close, w32font_has_char)
12109 (w32font_encode_char, w32font_text_extents, w32font_draw):
12110 Make non-static.
12111
12112 * makefile.w32-in (w32font.o): Depend on w32font.h.
12113
121142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12115
12116 * charset.c (Fdefine_charset_internal): Record a supplementary
12117 charset at the tail of Vcharset_order_list.
12118
12119 * font.c (Ffont_shape_text): Fix the return value.
12120
12121 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12122
12123 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12124
121252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12126
12127 * ftfont.c (struct OpenTypeSpec): New struct.
12128 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12129 (ftfont_get_open_type_spec): New function.
12130 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12131
12132 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12133
121342008-02-01 Jason Rumney <jasonr@gnu.org>
12135
12136 * w32font.c (add_font_entity_to_list): Compare only the beginning
12137 of full name.
12138
121392008-02-01 Kenichi Handa <handa@m17n.org>
12140
12141 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12142 Never return HANDLED_RECOMPUTE_PROPS.
12143
121442008-02-01 Kenichi Handa <handa@m17n.org>
12145
12146 * font.c (font_gstring_produce): Delete it.
12147
12148 * composite.h (COMPOSITION_METHOD):
12149 Handle COMPOSITION_WITH_GLYPH_STRING.
12150
121512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12152
12153 * xfont.c (Qx): Delete.
12154 (syms_of_xfont): Don't initialize Qx.
12155
12156 * composite.h (enum composition_method):
12157 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12158
121592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12160
12161 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12162 (choose_face_font): Accept new form of font-spec.
12163
12164 * frame.h (font_driver_list): Declare it unconditionally.
12165 (struct frame): Define members font_driver_list and font_data_list
12166 unconditionally.
12167
12168 * fontset.c: Include "font.h" unconditionally.
12169 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12170 (Fset_fontset_font): Accept a font-spec object.
12171
12172 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12173 PIXEL_SIZE part a wild card.
12174
12175 * dispextern.h (struct glyph_string): Define members clip and
12176 num_clips unconditionally.
12177 (struct face): Define members font_info and extra unconditionally.
12178
12179 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12180 ftfont_info only when HAVE_LIBOTF is defined.
12181
121822008-02-01 Andreas Schwab <schwab@suse.de>
12183
12184 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12185 and end.
12186
121872008-02-01 Jason Rumney <jasonr@gnu.org>
12188
12189 * w32font.c (w32font_driver): Add new fields.
12190
121912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12192
12193 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12194 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12195 (LIBES): Add @M17N_FLT_CFLAGS@.
12196
12197 * composite.c (compose_text): Don't treat the new style
12198 composition specially.
12199
12200 * emacs.c (main): Call syms_of_font unconditionally.
12201
12202 * font.h (FONT_ENTITY_NOT_LOADABLE)
12203 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12204 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12205 (struct font_driver): New member shape.
12206 (font_registry_charsets): Extern it.
12207 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12208 (font_otf_capability, font_drive_otf): Delete their externs.
12209
12210 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12211 (font_charset_alist, font_registry_charsets): Move from xfont.c
12212 and rename.
12213 (font_prop_validate_otf): New function.
12214 (font_property_table): Register it for QCotf.
12215 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12216 (font_drive_otf): Delete.
12217 (font_prepare_composition): New arg F. Adjust for the change of
12218 lispy gstring.
12219 (font_find_for_lface): New arg C.
12220 (font_load_for_face): Adjust for the change of font_find_for_lface.
12221 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12222 lispy gstring.
12223 (Ffont_shape_text): New function.
12224 (Fopen_font): If the font size is not given, use 12-pixel.
12225 (Ffont_at): New arg STRING.
12226 (syms_of_font): Initalize font_charset_alist.
12227 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12228 conditionally.
12229
12230 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12231 fonts of the same font-spec. Change the format of RFONT-DEF.
12232 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12233 Adjust for the change of RFONT-DEF.
12234 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12235
12236 * ftfont.h: New file.
12237
12238 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12239 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12240 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12241 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12242 font_otf_capability and font_drive_otf, set ftfont_shape.
12243 (ftfont_list): Adjust for the change of :otf property value.
12244 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12245 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12246 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12247 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12248 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12249 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12250
12251 * w32term.c (x_draw_composite_glyph_string_foreground):
12252 Adjust for the change of lispy gstring.
12253
12254 * xdisp.c (handle_composition_prop): Adjust for the change of
12255 lispy gstring. Call a function for auto-composition with the
12256 third arg it->window.
12257 (fill_composite_glyph_string): Adjust for the change of lispy string.
12258 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12259
12260 * xfaces.c (set_font_frame_param): Adjust for the change of
12261 font_find_for_lface.
12262
12263 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12264 (xfont_registry_charsets): Likewise. Change caller.
12265 (syms_of_xfont): Don't handle x_font_charset_alist.
12266
12267 * xftfont.c: Include "ftfont.h".
12268 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12269 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12270 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12271 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12272 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12273 Set xftfont_driver.shape to xftfont_shape.
12274
12275 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12276 the change of lispy gstring.
12277
122782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12279
12280 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12281
122822008-02-01 Jason Rumney <jasonr@gnu.org>
12283
12284 * w32font.c (w32font_draw): Fill background manually.
12285
122862008-02-01 Jason Rumney <jasonr@gnu.org>
12287
12288 * font.c (Qfontp): Remove unused symbol.
12289 (QCantialias): New symbol.
12290 (syms_of_font): Define it.
12291 (font_property_table): Set a validator for QCantialias.
12292
12293 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12294 Define if not already.
12295 (QCfamily): Share with xfaces.c.
12296 (Qstandard, Qsubpixel, Qnatural): New symbols.
12297 (syms_of_w32font): Define them. Don't define QCfamily here.
12298 (w32_antialias_type, lispy_antialias_type): New functions.
12299 (w32_enumfont_pattern_entity): New arg requested_font.
12300 Set antialias parameter if non-default was requested.
12301 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12302
123032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12304
12305 * lread.c (read1): Undo the previous change.
12306
123072008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12308
12309 * frame.c (Fdelete_frame): Call font_update_drivers only when
12310 USE_FONT_BACKEND is defined.
12311
123122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12313
12314 * font.h (struct font_bitmap): New member bits_per_pixel.
12315 (struct font_driver): New members start_for_frame and end_for_frame.
12316 (struct font_data_list): New struct.
12317 (font_put_frame_data, font_get_frame_data): Extern them.
12318
12319 * frame.h (struct frame): New member font_data_list.
12320
12321 * font.c (font_update_drivers): Call driver->start_for_frame and
12322 driver->end_for_frame at proper timings.
12323 (font_put_frame_data, font_get_frame_data): New functions.
12324 (Ffont_spec): Add usage in the docstring.
12325
12326 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12327 (Fdelete_frame): Call font_update_drivers.
12328
12329 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12330 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12331 (xftfont_get_xft_draw): New function.
12332 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12333 (xftfont_end_for_frame): New function.
12334 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12335
12336 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12337 Change argument. Cache GCs in the per-frame data.
12338 (struct ftxfont_frame_data): New struct.
12339 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12340 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12341 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12342 (ftxfont_end_for_frame): New function.
12343 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12344
12345 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12346
123472008-02-01 Kenichi Handa <handa@m17n.org>
12348
12349 * xselect.c (Vselection_coding_system)
12350 (Vnext_selection_coding_system): Delete them.
12351 (syms_of_xselect): Don't declare selection-coding-system and
12352 next-selection-coding-system. They are declared in select.el.
12353
123542008-02-01 Jason Rumney <jasonr@gnu.org>
12355
12356 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12357
12358 * w32fns.c: Include imm.h.
12359 (get_composition_string_fn, get_ime_context_fn): New optional
12360 system functions.
12361 (globals_of_w32fns): Load them from imm32.dll.
12362 (ignore_ime_char): New flag.
12363 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12364 WM_IME_ENDCOMPOSITION messages.
12365
12366 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12367 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12368
123692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12370
12371 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12372 (READCHAR_REPORT_MULTIBYTE): New macro.
12373 (readchar): New 2nd arg MULTIBYTE.
12374 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12375 Make symbol's name multibyte according to the multibyteness of the
12376 source.
12377
123782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12379
12380 * xfaces.c (face_for_overlay_string): Call lookup_face with
12381 correct arguments (fix of synching with the trunk).
12382
123832008-02-01 Kenichi Handa <handa@m17n.org>
12384
12385 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12386 (font_prop_validate_non_neg, font_prop_validate_spacing):
12387 Delete argument prop_index.
12388 (font_property_table): Change arguments to validater. Change Callers.
12389 (font_lispy_object): Delete.
12390 (font_at): Use font_find_object instead fo font_lispy_object.
12391
123922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12393
12394 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12395 and file names.
12396
123972008-02-01 Jason Rumney <jasonr@gnu.org>
12398
12399 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12400 (font_matches_spec): Remove debug output.
12401 (add_font_entity_to_list): Avoid using substituted fonts.
12402
124032008-02-01 Jason Rumney <jasonr@gnu.org>
12404
12405 * doc.c (Fsnarf_documentation):
12406 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12407
124082008-02-01 Miles Bader <miles@gnu.org>
12409
12410 * dispextern.h (struct glyph_row): Only define "clip" field if
12411 HAVE_WINDOW_SYSTEM is defined.
12412
124132008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12414
12415 Fix up multi-tty merge.
12416
12417 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
12418 and indentation.
12419
12420 * xfaces.c (free_realized_face, clear_face_gcs):
12421 Include font_done_for_face in the input_blocked section, just in case.
12422
12423 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
12424 (get_char_face_and_encoding): Undo last change and remove the *other*
12425 duplicate definition (i.e. keep the one that's better scoped and that
12426 includes code for the font-backend).
12427
12428 * terminal.c (create_terminal): Default keyboard_coding to
12429 `no-conversion' and terminal_coding to `undecided'.
12430
12431 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
12432
12433 * fontset.c (free_realized_fontsets): Check that the table entry does
12434 contain a fontset before trying to compare it to `base'.
12435
12436 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
12437 syms_of_charset, and syms_of_coding earlier because init_window_once
12438 now needs Vcoding_system_hash_table to be setup.
12439
12440 * coding.h (default_buffer_file_coding): Remove.
12441
12442 * coding.c (default_buffer_file_coding): Remove.
12443 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
12444 than ->symbol, and use the terminal-local coding system.
12445 (syms_of_coding): Don't setup the coding-systems that are not
12446 terminal-local.
12447 (Fdefine_coding_system_internal): Use XCAR/XCDR.
12448
12449 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
12450 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
12451
12452 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
12453 in chartab.c and were re-added here by mistake.
12454 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
12455
12456 * doc.c (Fsnarf_documentation):
12457 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
12458 src to etc.
12459
12460 * ChangeLog.10: Add mistakenly removed entry.
12461
124622008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
12463
12464 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
12465
124662008-02-01 Miles Bader <miles@gnu.org>
12467
12468 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
12469 Add extra args to FACE_FOR_CHAR.
12470
124712008-02-01 Kenichi Handa <handa@m17n.org>
12472
12473 * keymap.c (where_is_internal_1): If key is a cons, store the copy
12474 in sequence.
12475
12476 * chartab.c (map_sub_char_table, map_char_table): If the range
12477 contains just one character, call the function with that character
12478 even if the depth is not 3.
12479
124802008-02-01 Jason Rumney <jasonr@gnu.org>
12481
12482 * w32font.c (w32font_text_extents): Calculate metrics for the
12483 whole string.
12484
124852008-02-01 Jason Rumney <jasonr@gnu.org>
12486
12487 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
12488
124892008-02-01 Jason Rumney <jasonr@gnu.org>
12490
12491 * w32term.c (x_set_glyph_string_clipping): Use
12492 get_glyph_string_clip_rects.
12493 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12494 Adjust for the change of struct glyph_string.
12495
12496 * w32font.c (w32font_draw): Do clipping here.
12497
124982008-02-01 Kenichi Handa <handa@m17n.org>
12499
12500 * xftfont.c (xftfont_draw): Adjust for the change of struct
12501 glyph_string.
12502
12503 * xterm.c (x_set_glyph_string_clipping): Use
12504 get_glyph_string_clip_rects.
12505 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
12506 Adjust for the change of struct glyph_string.
12507
12508 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
12509 the resulting clip(s}.
12510 (expose_overlaps): Add arg r. Change callers. Set it to
12511 row->clip temporarily.
12512 (expose_window): Redraw rows overlapping the exposed area.
12513
12514 * dispextern.h (struct glyph_row): New member clip.
12515 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
12516 clip_height, new member clip, and num_clips.
12517
125182008-02-01 Kenichi Handa <handa@m17n.org>
12519
12520 * data.c (Fchar_or_string_p): Fix docstring.
12521
125222008-02-01 Kenichi Handa <handa@m17n.org>
12523
12524 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
12525 create a temporary XftDraw object.
12526
125272008-02-01 Kenichi Handa <handa@m17n.org>
12528
12529 * font.c (Ffontp): Fix docstring.
12530
12531 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
12532 strong evidence of ISO-2022.
12533
125342008-02-01 Kenichi Handa <handa@m17n.org>
12535
12536 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
12537 SYNTAX_ENTRY_FOLLOW_PARENT.
12538
125392008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
12540
12541 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
12542 its type.
12543 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
12544 Update to the new type of weak_hash_tables and next_weak.
12545
12546 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
12547 a plain C pointer to Lisp_Hash_Table.
12548
12549 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
12550 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
12551 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
12552 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
12553 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
12554 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
12555 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
12556 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
12557 (GC_EQ): Remove since they've been identical to their non-GC_
12558 alter-egos ever since the markbit was eradicated.
12559
12560 * alloc.c:
12561 * buffer.c:
12562 * buffer.h:
12563 * data.c:
12564 * fileio.c:
12565 * filelock.c:
12566 * fns.c:
12567 * frame.h:
12568 * lisp.h:
12569 * macterm.c:
12570 * print.c:
12571 * process.c:
12572 * w32fns.c:
12573 * w32menu.c:
12574 * w32term.c:
12575 * xfns.c:
12576 * xmenu.c:
12577 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
12578
125792008-02-01 Kenichi Handa <handa@m17n.org>
12580
12581 * chartab.c (map_sub_char_table): Make it work for the top-level
12582 char-table. Fix handling of parent char-table.
12583 (map_char_table): Adjust for the above change.
12584
125852008-02-01 Jason Rumney <jasonr@gnu.org>
12586
12587 * w32font.c (Qgdi): Rename from Qw32.
12588
125892008-02-01 Jason Rumney <jasonr@gnu.org>
12590
12591 * w32bdf.c (get_quoted_string): Make function static.
12592
125932008-02-01 Kenichi Handa <handa@m17n.org>
12594
12595 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
12596 bigger ascent and descent than those of the font, use them as
12597 font's ascent and descent.
12598
125992008-02-01 Kenichi Handa <handa@m17n.org>
12600
12601 * Makefile.in (${lispsource}international/charprop.el): Move this
12602 target within "#ifdef HAVE_UNIDATA" and "#endif".
12603
126042008-02-01 Kenichi Handa <handa@m17n.org>
12605
12606 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
12607 (shortlisp): Add ../lisp/language/tai-viet.el.
12608
126092008-02-01 Ulrich Mueller <ulm@gentoo.org>
12610
12611 * Makefile.in (${lispsource}international/charprop.el): Depend on
12612 temacs${EXEEXT}.
12613
126142008-02-01 Jason Rumney <jasonr@gnu.org>
12615
12616 * w32font.c (w32font_close): Delete the GDI font object.
12617
12618 * w32menu.c: Include character.h.
12619
12620 * w32proc.c: Likewise.
12621
12622 * w32select.c: Likewise.
12623
12624 * makefile.w32-in (w32proc.o): Depend on character.h.
12625
126262008-02-01 Jason Rumney <jasonr@gnu.org>
12627
12628 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
12629
12630 * w32menu.c (syms_of_w32menu): Likewise.
12631
12632 * w32proc.c (syms_of_ntproc): Likewise.
12633
12634 * w32select.c (syms_of_w32select): Likewise.
12635
12636 * w32term.c (syms_of_w32term): Likewise.
12637
126382008-02-01 Jason Rumney <jasonr@gnu.org>
12639
12640 * w32font.c (w32font_draw): Delete brush after using it.
12641
126422008-02-01 Jason Rumney <jasonr@gnu.org>
12643
12644 * w32font.c (w32font_open): Don't set font_idx.
12645 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
12646 to font settings.
12647 (w32font_draw): Fill background explicitly.
12648
126492008-02-01 Jason Rumney <jasonr@gnu.org>
12650
12651 * w32term.c (w32_initialize): Don't call w32font_initialize.
12652
12653 * w32font.c (w32font_info): Remove subranges.
12654 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
12655 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
12656 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
12657 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
12658 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
12659 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
12660 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
12661 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
12662 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
12663 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
12664 New symbols.
12665 (font_callback_data): New struct.
12666 (w32font_list, w32font_match): Use it.
12667 (w32font_open): Don't populate subranges.
12668 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
12669 (w32font_encode_char): Always return unicode code-point as-is.
12670 (w32font_text_extents): Supply a transformation matrix to
12671 GetGlyphOutline. Never look up by glyph index. Avoid looping
12672 twice. Use unicode version of GetTexExtentPoint32 instead of
12673 glyph index version.
12674 (set_fonts_frame): Remove.
12675 (w32_enumfont_pattern_entity): Add frame parameter, use it to
12676 set frame parameter. Use backward compatible fake foundries.
12677 Save generic family in extra slot under QCfamily. Make width slot
12678 constant. Save QCspacing value. Save list of scripts instead of
12679 binary subranges.
12680 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
12681 (add_font_entity_to_list): Use font_callback_data struct. Filter
12682 unwanted fonts.
12683 (add_one_font_entity_to_list): Use font_callback_data struct.
12684 (w32_registry): Default to iso10646_1.
12685 (fill_in_logfont): Use dpi from extra slot. Don't bother with
12686 string font registries. Don't fill in font name if it is a generic
12687 family name, fill family instead. Use spacing, family and script
12688 extra info to fill pitch, family and charset fields.
12689 (list_all_matching_fonts): Use font_callback_data struct.
12690 (unicode_range_for_char): Remove.
12691 (font_supported_scripts): New function.
12692 (w32font_initialize): Remove.
12693 (syms_of_w32font): Update which symbols are defined.
12694
126952008-02-01 Jason Rumney <jasonr@gnu.org>
12696
12697 * font.c (font_pixel_size): Reverse assq_no_quit args.
12698
12699 * w32term.h (FONT_WIDTH): Report max width, not average.
12700 (FONT_MAX_WIDTH): Remove.
12701 (FONT_AVG_WIDTH): New macro.
12702
12703 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
12704 redefinition of FONT_WIDTH.
12705
12706 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
12707 (w32_cache_char_metrics): Use FONT_WIDTH.
12708
12709 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
12710
127112008-02-01 Jason Rumney <jasonr@gnu.org>
12712
12713 * w32font.c (w32font_open): Make lfHeight negative.
12714
12715 * w32fns.c (x_default_font_parameter): Use new style font name.
12716 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
12717
127182008-02-01 Jason Rumney <jasonr@gnu.org>
12719
12720 * w32font.c (QCsubranges): New symbol.
12721 (w32font_open, w32font_has_char): Get subranges from subproperty
12722 of extra.
12723 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
12724 (syms_of_w32font): Define :subranges symbol.
12725
12726 * font.c (font_put_extra): Expose externally.
12727
12728 * font.h (font_put_extra): Move declaration from font.c.
12729
12730 * font.c (Ffont_get): Use font driver to determine otf capability.
12731 (adjust_anchor): Check if driver defines anchor_point before using.
12732
12733 * w32font.c (w32font_open): Handle size, height and pixel_size better.
12734 (w32font_draw): Use options.
12735 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
12736 Fix detection of truetype fonts.
12737 (registry_to_w32_charset): Handle charsets other than iso8859-1
12738 expressed as lisp symbols.
12739 (w32_registry): Express charset as lisp symbol.
12740 (fill_in_logfont): Reverse pixel and point height logic.
12741 Don't set width here. Set quality to default.
12742
12743 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
12744 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
12745
12746 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12747 Remove redundant loop and allocation.
12748
12749 * makefile.w32-in (font.o, w32font.o): New objects.
12750 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
12751 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
12752
12753 * xdisp.c (fill_composite_glyph_string): Make the first arg to
12754 STORE_XCHARB a valid l-value.
12755
12756 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
12757 calculations for non-Truetype fonts.
12758 (x_draw_glyph_string): Sync with xterm.c.
12759 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
12760 Remove redundant code.
12761 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
12762
12763 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
12764 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
12765
12766 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
12767 (x_to_w32_charset, w32_to_x_charset): Expose externally.
12768
12769 * w32font.c: New file for w32 font backend.
12770
127712008-02-01 Kenichi Handa <handa@m17n.org>
12772
12773 * term.c: Don't include "buffer.h" twice.
12774
127752008-02-01 Kenichi Handa <handa@m17n.org>
12776
12777 * character.c (Funibyte_string): New function.
12778 (syms_of_character): Defsubr it.
12779
127802008-02-01 Jason Rumney <jasonr@gnu.org>
12781
12782 * w32term.c [USE_FONT_BACKEND]:
12783 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
12784 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
12785 (x_draw_glyph_string, x_draw_glyph_string_foreground)
12786 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
12787 (x_free_frame_resources): Sync with xterm.c.
12788
127892008-02-01 Andreas Schwab <schwab@suse.de>
12790
12791 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
12792 char-table size.
12793
127942008-02-01 Kenichi Handa <handa@m17n.org>
12795
12796 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
12797
127982008-02-01 Kenichi Handa <handa@m17n.org>
12799
12800 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
12801 font_otf_gpos, add font_drive_otf.
12802
12803 * fontset.c (fontset_find_font): Pay attention to font size
12804 specified for a font.
12805 (reorder_font_vector): Check contents of font_def.
12806
12807 * font.c (struct otf_list): Delete it.
12808 (otf_list): Make it a lisp variable.
12809 (otf_open): Use lispy otf_list.
12810 (generate_otf_features): Rename from parse_gsub_gpos_spec.
12811 (check_otf_features): New function.
12812 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12813 New functions.
12814 (font_drive_otf): New function merging font_otf_gsub and
12815 font_otf_gpos.
12816 (font_open_for_lface): New arg spec. Change argument order.
12817 (font_load_for_face): Adjust for the change of font_open_for_lface.
12818 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
12819 Ffont_otf_gpos.
12820 (syms_of_font): Staticpro otf_list. Delete defsubr of
12821 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
12822
12823 * xfaces.c (set_font_frame_param): Adjust for the change of
12824 font_open_for_lface.
12825
12826 * font.h (font_open_for_lface): Adjust prototype.
12827 (struct font_driver): Delete members otf_gsub and otf_gpos, add
12828 member otf_drive.
12829 (font_otf_gsub, font_otf_gpos): Delete externs.
12830 (font_drive_otf): Extern it.
12831
128322008-02-01 Kenichi Handa <handa@m17n.org>
12833
12834 * font.c (font_at): If the window W is not on a window system,
12835 return Qnil.
12836
12837 * coding.c (produce_chars, encode_coding): Don't call
12838 insert_from_gap if no characters to produce.
12839
128402008-02-01 Kenichi Handa <handa@m17n.org>
12841
12842 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
12843 Fclear_face_cache.
12844
12845 * xfaces.c (face_for_font): Check also face->font==font->font.font.
12846
128472008-02-01 Miles Bader <miles@gnu.org>
12848
12849 * emacs.c (main): Change default value of `enable_font_backend' to 1.
12850 Parse "--disable-font-backend" option.
12851 (standard_args): Add "--disable-font-backend" option.
12852
128532008-02-01 Kenichi Handa <handa@m17n.org>
12854
12855 * fontset.c (fontset_find_font): New function.
12856 (fontset_font): Use fontset_find_font.
12857 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
12858 Register the specified font for all Latin characters.
12859 (new_fontset_from_font): Register the specified font for all Latin
12860 characters.
12861 (dump_fontset): For a realized fontset, include the base fontset
12862 name in the returned vector.
12863
128642008-02-01 Kenichi Handa <handa@m17n.org>
12865
12866 * character.h (CHAR_STRING): Cast C to unsigned on calling
12867 char_string.
12868
12869 * character.c (char_string): Type of arg C changed to unsigned.
12870 Signal an error if C is an invalid character code.
12871
12872 * editfns.c (general_insert_function, Fchar_to_string):
12873 Use CHARACTERP, not INTEGERP.
12874
128752008-02-01 Kenichi Handa <handa@m17n.org>
12876
12877 * character.h (MIN_MULTIBYTE_LEADING_CODE)
12878 (MAX_MULTIBYTE_LEADING_CODE): New macros.
12879
12880 * regex.c (analyse_first): Fix for multibyte characters in "case
12881 charset:" and "case categoryspec:".
12882
128832008-02-01 Andreas Schwab <schwab@suse.de>
12884
12885 * Makefile.in (LIBES): Move standard libraries to the end.
12886
128872008-02-01 Kenichi Handa <handa@m17n.org>
12888
12889 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
12890 nonzero, don't shrink the buffer nextb.
12891
12892 * buffer.h (struct buffer_text): New member inhibit_shrinking.
12893
12894 * coding.c (coding_alloc_by_making_gap): New arg offset.
12895 (alloc_destination): Call coding_alloc_by_making_gap with the arg
12896 offset.
12897 (decode_coding_iso_2022): Update coding->safe_charsets.
12898 (decode_coding_gap): Temporarily set
12899 current_buffer->text->inhibit_shrinking to 1.
12900
129012008-02-01 Kenichi Handa <handa@m17n.org>
12902
12903 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
12904 indexing into elements of s->cmp and s->char2b.
12905
129062008-02-01 Juanma Barranquero <lekktu@gmail.com>
12907
12908 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
12909
129102008-02-01 Kenichi Handa <handa@m17n.org>
12911
12912 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
12913 target_multibyte instead of multibyte.
12914 (re_match_2_internal): Call bcmp_translate with target_multibyte.
12915 (bcmp_translate): Change the argument name from multibyte to
12916 target_multibyte.
12917
129182008-02-01 Kenichi Handa <handa@m17n.org>
12919
12920 These changes are to compile a regexp into a pattern that can be
12921 used both for multibyte and unibyte targets.
12922
12923 * Makefile.in (search.o): Depend on charset.h.
12924
12925 * character.c (multibyte_char_to_unibyte_safe): New function.
12926
12927 * search.c: Include "charset.h".
12928 (compile_pattern_1): Delete argument multibyte. Don't set
12929 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
12930 (compile_pattern): Don't compare cp->buf.target_multibyte.
12931 Compare cp->buf.charset_unibyte.
12932 (compile_pattern): Set cp->buf.target_multibyte.
12933
12934 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
12935
12936 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
12937
12938 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
12939 multibyte. Change callers.
12940 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
12941 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
12942 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
12943 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
12944 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
12945 (regex_compile): Make the compiled pattern usable both for
12946 multibyte and unibyte targets.
12947 (analyse_first): Make the fastmap usable both for multibyte and
12948 unibyte targets.
12949 (TRANSLATE_VIA_MULTIBYTE): Delete.
12950 (re_match_2_internal): Pay attention to the case that the
12951 multibyteness of bufp and target may be different.
12952
129532008-02-01 Kenichi Handa <handa@m17n.org>
12954
12955 * xdisp.c (x_produce_glyphs): When a font is not found, make the
12956 empty box occupy at least one column width.
12957
129582008-02-01 Miles Bader <miles@gnu.org>
12959
12960 * Makefile.in: Remove redundant HAVE_XFT clause.
12961
129622008-02-01 Kenichi Handa <handa@m17n.org>
12963
12964 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
12965
129662008-02-01 Kenichi Handa <handa@m17n.org>
12967
12968 * fontset.c (Finternal_char_font): Fix for the case of POSITION
12969 being nil.
12970
129712008-02-01 Kenichi Handa <handa@m17n.org>
12972
12973 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
12978
129792008-02-01 Kenichi Handa <handa@m17n.org>
12980
12981 * search.c (simple_search): Fix previous change.
12982
129832008-02-01 Kenichi Handa <handa@m17n.org>
12984
12985 * xftfont.c (ftfont_font_format): Extern declaration.
12986
12987 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
12988
12989 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
12990 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
12991
12992 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
12993 (ftfont_font_format): Fix previous change.
12994
12995 * font.h (Ffont_xlfd_name): EXFUN it.
12996
12997 * font.c (font_parse_xlfd): Fix the array size of `f'.
12998 (register_font_driver): Use EQ to compare driver->type.
12999
13000 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13001 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13002 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13003
130042008-02-01 Kenichi Handa <handa@m17n.org>
13005
13006 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13007 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13008
130092008-02-01 Kenichi Handa <handa@m17n.org>
13010
13011 * xfont.c (xfont_open): Set font->format.
13012
13013 * xftfont.c (xftfont_open): Set font->format.
13014
13015 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13016 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13017 (ftfont_open): Set font->format.
13018 (ftfont_font_format): New function.
13019
13020 * font.h (struct font): New member format.
13021
13022 * font.c (Qopentype): New variable.
13023 (syms_of_font): Defsym it.
13024 (Fquery_font): Change the format of the last element of the return
13025 value.
13026
130272008-02-01 Kenichi Handa <handa@m17n.org>
13028
13029 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13030 last resort.
13031
130322008-02-01 Kenichi Handa <handa@m17n.org>
13033
13034 * coding.c (detect_coding_charset): Fix detection of multi-byte
13035 charset.
13036
130372008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13038
13039 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13040
130412008-02-01 Kenichi Handa <handa@m17n.org>
13042
13043 * xdisp.c (get_next_display_element): Set it->face_id for the
13044 first component of a composition.
13045 (x_produce_glyphs): Check if the font is changed or not for composition.
13046
130472008-02-01 Kenichi Handa <handa@m17n.org>
13048
13049 * fontset.c (Qlatin): New variable.
13050 (syms_of_fontset): Define it as a lisp symbol.
13051 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13052
130532008-02-01 Kenichi Handa <handa@m17n.org>
13054
13055 * font.c (font_unparse_fcname): Pay attention to the case that
13056 some of font property is a null string.
13057
130582008-02-01 Kenichi Handa <handa@m17n.org>
13059
13060 * term.c: Include "composite.h".
13061 (encode_terminal_code): Output all components of composition.
13062 Check the size of encode_terminal_src.
13063 (produce_glyphs): For composition, call produce_composite_glyph.
13064 (append_composite_glyph, produce_composite_glyph): New functions.
13065
13066 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13067 is not found, get font_info from the current ascii face.
13068
130692008-02-01 Kenichi Handa <handa@m17n.org>
13070
13071 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13072 buffer-file-name to Qnil before calling insert_from_buffer.
13073
13074 * font.c (font_unparse_fcname): Pay attention to the case that
13075 foundry is a null string.
13076
130772008-02-01 Kenichi Handa <handa@m17n.org>
13078
13079 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13080
13081 * font.c (Qunicode_sip): New variable.
13082 (syms_of_font): Declare it as a Lisp symbol.
13083
13084 * font.h (Qunicode_sip): Extern it.
13085
130862008-02-01 Kenichi Handa <handa@m17n.org>
13087
13088 * composite.c (get_composition_id): Pay attention to TAB component.
13089
13090 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13091 TAB. Adjust for the change of s->char2b which always points to
13092 the first element of allocated memory.
13093
13094 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13095
13096 * xdisp.c (handle_composition_prop): Set it->c to the first
13097 non-TAB component.
13098 (fill_composite_glyph_string): Change argument.
13099 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13100 (x_produce_glyphs): Fix handling of left/right padding.
13101
131022008-02-01 Kenichi Handa <handa@m17n.org>
13103
13104 * coding.c (detect_coding_system): Fix for handling off
13105 inhibit_iso_escape_detection. Fix for the case that no coding
13106 system is defined for a specific coding category.
13107
131082008-02-01 Kenichi Handa <handa@m17n.org>
13109
13110 * font.c (font_matching_entity): Delete unused local var.
13111
13112 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13113 opening a font.
13114
13115 * fileio.c (Finsert_file_contents): On recovering a file, assume
13116 Unix-like eol.
13117 (choose_write_coding_system): On auto-saving a file, force
13118 Unix-like eol.
13119
13120 * coding.c (setup_coding_system): Fix setting of
13121 coding->common_flags based on eol_type.
13122 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13123 inherit from it.
13124
131252008-02-01 Kenichi Handa <handa@m17n.org>
13126
13127 * alloc.c (NSTATICS): Increas to 0x600.
13128
131292008-02-01 Kenichi Handa <handa@m17n.org>
13130
13131 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13132 (ftfont_list): Don't check :name property.
13133 (ftfont_match): New function.
13134 (ftfont_pattern_entity): If the pattern doesn't contain
13135 FC_SPACING, don't assume FC_MONO.
13136
13137 * font.h (struct font_driver): New member `match'.
13138 (font_update_drivers): Adjust prototype.
13139
13140 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13141 property of FONT.
13142 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13143 them unconditionally.
13144 (font_matching_entity): New function.
13145 (font_open_by_name): Try font_matching_entity if exact match is
13146 not found.
13147 (font_update_drivers): Delete the arg FONT. Return a list of
13148 actually used backends. Don't free faces, font caches here.
13149 Don't store data in frame parameters. Don't call x_set_font.
13150 (Ffont_spec): Store :name property as is.
13151 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13152 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13153 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13154 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13155 Call font->driver->otf_gsub instead of font_otf_gsub.
13156
13157 * frame.c (x_set_font_backend): Do more works that were done in
13158 font_update_drivers before.
13159
13160 * xfont.c (xfont_match): New function.
13161 (xfont_driver): Set xfont_driver.match to xfont_match.
13162 (xfont_draw): Set font in GC if necessary.
13163
13164 * ftxfont.c (ftxfont_match): New function.
13165 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13166
13167 * xftfont.c (xftfont_match): New function.
13168 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13169
131702008-02-01 Kenichi Handa <handa@m17n.org>
13171
13172 * font.h (struct font): New member scalable.
13173 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13174 (font_otf_gsub): Adjust prototype.
13175
13176 * font.c (font_otf_capability): Fix handling of the default langsys.
13177 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13178 Check the contents of SPEC.
13179 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13180 (check_gstring): New function.
13181 (REPLACEMENT_CHARACTER): New macro.
13182 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13183 glyph codes of GSTRING.
13184 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13185 (font_prepare_composition): Set cmp->glyph_len.
13186 (font_open_entity): Set font->scalable.
13187 (Ffont_get): Handle :otf property.
13188 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13189 functions.
13190 (Fquery_font): Use font->font.full_name.
13191 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13192 Sfont_otf_alternates.
13193
13194 * ftfont.c (ftfont_open): Set font->font.full_name and
13195 font->font.name properly. Fix calculation of font->font.height
13196 and font->min_width.
13197
13198 * ftxfont.c (ftxfont_create_gcs): New function.
13199 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13200 (ftxfont_draw_backgrond): Fix filling region.
13201 (ftxfont_default_fid): New function.
13202 (ftxfont_open): Set xfont->fid to the return value of
13203 ftxfont_default_fid.
13204 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13205 (ftxfont_done_face): Free only GCs that are created by
13206 ftxfont_create_gcs.
13207 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13208
13209 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13210 Clip to src->width, etc (not src->clip_XXX).
13211
13212 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13213 FontBackend frame parameter.
13214
132152008-02-01 Kenichi Handa <handa@m17n.org>
13216
13217 * font.h (struct font_driver_list): New member `on'.
13218 (Fclear_font_cache): EXFUN it.
13219 (font_update_drivers): Extern it.
13220
13221 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13222 (font_list_entities): Check driver_list->on.
13223 (register_font_driver): Initalize `on' member to 0.
13224 (font_update_drivers): New function.
13225 (Fclear_font_cache): Check driver_list->on.
13226
13227 * frame.h (Qfont_backend): Extern it.
13228 (x_set_font_backend): Extern it.
13229
13230 * frame.c (Qfont_backend): New variable.
13231 (frame_parms): New element for font-backend.
13232 (x_set_font_backend): New function.
13233
13234 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13235 FontBackend frame parameter.
13236 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13237 x_set_font_backend.
13238
13239 * xfont.c (xfont_list): Don't try listing by :name property if the
13240 name is not for XLFD.
13241
132422008-02-01 Kenichi Handa <handa@m17n.org>
13243
13244 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13245 (LGLYPH_SET_TO): New macros.
13246 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13247 element of G is vector or not.
13248 (font_at): Extern it.
13249
13250 * font.c: Include window.h.
13251 (font_lispy_object): New function.
13252 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13253 end of valid glyph.
13254 (font_close_object): Fix getting (struct font *).
13255 (font_at): New function.
13256 (Ffont_get): If FONT is a font-object, get entity from it.
13257 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13258 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13259 range check.
13260 (Ffont_at): New function.
13261 (syms_of_font): Defsubr Sfont_at.
13262
13263 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13264 before the entry for Qcomposition.
13265 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13266 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13267 the font in gstring.
13268 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13269 LGLYPH_FORM (g) to detect the end of valid glyph.
13270 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13271 we are composing with gstring.
13272
13273 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13274 Check if adjustment is vector or not.
13275
13276 * Makefile.in (font.o): Make it depends on window.h.
13277
132782008-02-01 Kenichi Handa <handa@m17n.org>
13279
13280 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13281 adjustment is vector or not.
13282
132832008-02-01 Miles Bader <miles@gnu.org>
13284
13285 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13286
132872008-02-01 Kenichi Handa <handa@m17n.org>
13288
13289 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13290 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13291 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13292
13293 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13294 (DEVICE_DELTA): Fix typo.
13295 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13296 LGLYPH format.
13297
13298 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13299 the change of LGLYPH format.
13300
133012008-02-01 Kenichi Handa <handa@m17n.org>
13302
13303 * ftfont.c (ftfont_list): Fix typo.
13304 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13305
133062008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13307
13308 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13309
13310 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13311 xftface_info is non-NULL.
13312
133132008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13314
13315 * ftfont.c (ftfont_list): Move misplaced #endif.
13316
133172008-02-01 Kenichi Handa <handa@m17n.org>
13318
13319 * ftfont.c (ftfont_list): Pay attention to the case that
13320 FC_CAPABILITY is not defined.
13321
133222008-02-01 Kenichi Handa <handa@m17n.org>
13323
13324 * xftfont.c (xftfont_open): Set charset related members to -1.
13325
13326 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13327 QCname.
13328 (ftfont_open): Set charset related members to -1.
13329
13330 * fontset.c (Votf_script_alist): New variable.
13331 (syms_of_fontset): Initialize it.
13332 (fontset_font): Delete unused variable.
13333
13334 * fontset.h (Votf_script_alist): Extern it.
13335
13336 * font.c (font_find_for_lface): Optimize code.
13337
13338 * font.h (font_close_object, font_merge_old_spec): Extern them.
13339
133402008-02-01 Kenichi Handa <handa@m17n.org>
13341
13342 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13343 (syms_of_font): Initialize them.
13344 (font_pixel_size): Allow float value in dpi.
13345 (font_prop_validate_type): Delete.
13346 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13347 Change caller.
13348 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13349 (font_prop_validate_extra): Delete.
13350 (font_prop_validate_spacing): New function.
13351 (font_property_table): Add elements for all known properties.
13352 (get_font_prop_index): Rename from check_font_prop_name. New
13353 argument FROM. Change caller.
13354 (font_prop_validate): Validate all known properties.
13355 (font_put_extra): Delete argument force. Change caller.
13356 (font_expand_wildcards): Make it static. Fix the way of shrinking
13357 the possible range.
13358 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13359 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13360 Change caller.
13361 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13362 (font_parse_fcname): Delete argument merge. Fix parsing of point
13363 size. Don't validate properties values here. Change caller.
13364 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13365 (font_open_by_name): Delete unused variable.
13366 (Ffont_spec): Likewise. Validate property values.
13367 (Ffont_match_p): New function.
13368
13369 * font.h (QCscalable): Extern it.
13370 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13371
13372 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13373
13374 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13375 (xfont_list_pattern): New function.
13376 (xfont_list): Use xfont_list_pattern.
13377
133782008-02-01 Kenichi Handa <handa@m17n.org>
13379
13380 * font.h (Flist_fonts): EXFUN it.
13381
133822008-02-01 Jason Rumney <jasonr@gnu.org>
13383
13384 * w32term.c (w32_initialize): Add back smoothing_type and
13385 smoothing_enabled definitions.
13386
133872008-02-01 Kenichi Handa <handa@m17n.org>
13388
13389 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13390 s->face->font on determining underline position.
13391
133922008-02-01 Kenichi Handa <handa@m17n.org>
13393
13394 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13395 (font_has_char): Accept font-object too.
13396 (font_find_for_lface): Try at first with a size specified in face.
13397
133982008-02-01 Kenichi Handa <handa@m17n.org>
13399
13400 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13401 font_open_by_name.
13402
134032008-02-01 Kenichi Handa <handa@m17n.org>
13404
13405 * font.h (QCspacing, QCdpi): Extern them.
13406 (enum font_spacing): New enum.
13407 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13408
13409 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
13410 (QCspacing, QCdpi): New variables.
13411 (syms_of_font): Initialize them.
13412 (font_pixel_size): New function.
13413 (font_put_extra): New function.
13414 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
13415 in FONT_EXTRA.
13416 (font_parse_fcname): Handle enumerated values (e.g. bold).
13417 Fix handling font size. Add QCname property that contains only
13418 unknown properties.
13419 (font_score): Change argument. Change caller. Pay attention to
13420 FONT_PIXEL_SIZE_QUANTUM.
13421 (font_sort_entites, font_list_entities, font_find_for_lface)
13422 (font_open_for_lface, font_open_by_name): Fix handling of font size.
13423 (Ffont_spec): Add QCname property that contains only unknown properties.
13424
13425 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
13426 include weight in listing pattern, instead check weight of each
13427 listed font. Don't include scalable in pattern. Pay attention to
13428 FONT_PIXEL_SIZE_QUANTUM.
13429
134302008-02-01 Kenichi Handa <handa@m17n.org>
13431
13432 * font.c (font_parse_fcname): Fix parsing of point-size.
13433 (font_unparse_fcname): Produce symbolic names for style properties.
13434 (font_list_entities): Handle float size correctly.
13435 (font_open_by_name): Prefer `normal' property values if the name
13436 doesn't specify them.
13437
13438 * fontset.c (Finternal_char_font): Use font_get_name, not
13439 Ffont_xlfd_name.
13440
13441 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
13442 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
13443 pattern. Don't force scalable.
13444
13445 * xftfont.c (xftfont_open): For generating a name, start from
13446 96-byte buffer.
13447
134482008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13449
13450 * frame.h (x_new_fontset2): Fix prototype.
13451
134522008-02-01 Kenichi Handa <handa@m17n.org>
13453
13454 * font.h (struct font_driver): Delete member parse_name.
13455 (font_match_p, font_get_spec, font_parse_fcname)
13456 (font_unparse_fcname): Extern them.
13457 (font_get_name): Adjust prototype.
13458
13459 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
13460 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
13461 (font_expand_wildcards): Fix handling ENCODING field. Avoid
13462 unnecessary checks for weight, slant, and swidth.
13463 (font_parse_fcname): New function.
13464 (font_unparse_fcname): New function.
13465 (font_parse_name): New function.
13466 (font_match_p): New function.
13467 (font_get_name): Change return value to Lisp string.
13468 (font_get_spec): New function.
13469 (Qunspecified, Qignore_defface): Don't extern them.
13470 (font_find_for_lface): Assume that LFACE is fully specified.
13471 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
13472 object, use it for FACE.
13473 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
13474 driver->parse_name.
13475 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
13476
13477 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
13478 prototype.
13479
13480 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
13481 argument F. Don't call Fnew_fontset. Instead, directly call
13482 make_fontset.
13483
13484 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
13485
13486 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
13487 of x_new_fontset2.
13488
13489 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
13490 (Qsans__serif): New variables.
13491 (ftfont_generic_family_list): New variable.
13492 (syms_of_ftfont): Initialize the above variables.
13493 (ftfont_pattern_entity): Delete argument NAME.
13494 (ftfont_list_generic_family): New function.
13495 (ftfont_parse_name): Delete this function.
13496 (ftfont_list): Try generic family only when FcFontList found no font.
13497 (ftfont_list_family): Fix args to FcObjectSetBuild.
13498
13499 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
13500 object in attrs[LFACE_FONT_INDEX].
13501 (set_lface_from_font_name): Cancel all changes for font-backend.
13502 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
13503 function.
13504 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
13505 font object in QCfont attribute.
13506 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
13507 (realize_default_face) [USE_FONT_BACKEND]: Call
13508 set_lface_from_font_and_fontset.
13509
13510 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
13511 "fixed", and signal error here if no suitable font was found.
13512
13513 * xfont.c (xfont_parse_name): Delete this function.
13514
13515 * xftfont.c (xftfont_open): Change coding style of error
13516 handling. Generate fontconfig's fontname pattern.
13517
13518 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
13519 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
13520
13521 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
13522 Both args FONTSET and FONT_OBJECT must be existing ones.
13523
135242008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13525
13526 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
13527
135282008-02-01 Kenichi Handa <handa@m17n.org>
13529
13530 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
13531
13532 * font.h (struct font): Fix typo.
13533
13534 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
13535 XLFD_XXX_INDEX.
13536 (enum xlfd_field_mask): New enum.
13537 (intern_font_field): Changed argument. Change caller. If digits
13538 are followed by non-digits, return a symbol.
13539 (font_expand_wildcards): New function.
13540 (font_parse_xlfd): Fix wildcard handling.
13541 (Ffont_spec): If :name is specified, reflect the info in the other
13542 properties.
13543
13544 * ftfont.c (ftfont_pattern_entity): Fix typo.
13545 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
13546 locale.
13547
135482008-02-01 Kenichi Handa <handa@m17n.org>
13549
13550 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
13551
13552 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
13553 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
13554 registry doesn't specify encoding part.
13555 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
13556 (font_open_by_name): At first try parsing the name.
13557 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
13558 as Lisp symbols.
13559
13560 * fontset.c (reorder_font_vector): Pay attention to the case that
13561 the 3rd element of font_def is nil.
13562 (fontset_font): For the default fontset, append one more fontset
13563 elements for a script-based font specification. Don't add script
13564 attribute on finding a font.
13565 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
13566 font name.
13567 (fontset_ascii_font): If a font can't be opened, return nil.
13568
13569 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
13570 (ftfont_pattern_entity): New function.
13571 (ftfont_get_cache): Assume that freetype_font_cache is already
13572 initialized.
13573 (ftfont_list): Handle the case that a file is specified in font
13574 name. Use ftfont_pattern_entity to generate entities.
13575 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
13576 (syms_of_ftfont): Initialize freetype_font_cache.
13577
13578 * xftfont.c (xftfont_open): Make the font name fontconfig's
13579 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
13580 (xftfont_close): Free font->font.name if not NULL.
13581
13582 * xfont.c (xfont_list): If script is specified for a font, return
13583 null_vector.
13584 (xfont_list_family): Declare argument type.
13585
13586 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
13587 name, set LFACE_FONT (lface) to nil.
13588
13589 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
13590 return Qnil.
13591
135922008-02-01 Kenichi Handa <handa@m17n.org>
13593
13594 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
13595 (standard_args): Add "-enable-font-backend".
13596
135972008-02-01 Kenichi Handa <handa@m17n.org>
13598
13599 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
13600 (struct xftdraw_list, xftdraw_list): Delete them.
13601 (register_xftdraw, check_xftdraw): Delete them.
13602 (xftfont_prepare_face): Don't call register_xftdraw.
13603 (xftfont_done_face): Don't call check_xftdraw.
13604 (xftfont_draw): Get background color only when with_background is
13605 nonzero.
13606
13607 * xfont.c (xfont_encode_char): Fix calculation of char2b.
13608
136092008-02-01 Kenichi Handa <handa@m17n.org>
13610
13611 These changes are for the new font handling codes.
13612
13613 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
13614 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
13615 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
13616 (FONTSRC, FONTOBJ): New variables.
13617 (obj): Add $(FONTOBJ).
13618 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
13619 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
13620 @LIBOTF_LIBS@.
13621 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
13622 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
13623
13624 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
13625
13626 * character.h (Vscript_representative_chars): Extern it.
13627
13628 * character.c (Vscript_representative_chars): New variable.
13629 (syms_of_character): Declare it as a Lisp variable.
13630
13631 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
13632 enable_font_backend is nonzero, accept the composition method
13633 COMPOSITION_WITH_GLYPH_STRING.
13634
13635 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
13636 enumeration COMPOSITION_WITH_GLYPH_STRING.
13637
13638 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
13639 members clip_x, clip_y, clip_width, and clip_height.
13640 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
13641
13642 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
13643 --enable-font-backend. Call syms_of_font.
13644
13645 * fns.c (assoc_no_quit): New function.
13646
13647 * fontset.h (FONT_INFO_FROM_FACE): New macro.
13648 (face_for_font, new_fontset_from_font)
13649 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
13650
13651 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
13652 (fontset_font, fontset_ascii, face_for_char)
13653 (make_fontset_for_ascii_face, Ffont_info)
13654 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
13655 is nonzero, use font-backend mechanism.
13656 (find_font_encoding): Make it non-static.
13657 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
13658 New functions.
13659
13660 * frame.h (struct frame): New members resx and resy.
13661 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
13662 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
13663
13664 * frame.c [USE_FONT_BACKEND]: Include "font.h".
13665 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
13666
13667 * lisp.h (assoc_no_quit): Extern it.
13668
13669 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
13670 Through out the file, use FONT_INFO_FROM_FACE instead of
13671 FONT_INFO_FROM_ID, use get_per_char_metric instead of
13672 rif->per_char_metric.
13673 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
13674 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
13675 (get_glyph_face_and_encoding, fill_composite_glyph_string)
13676 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13677 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
13678 nonzero, use font-backend mechanism.
13679 (get_per_char_metric): New function.
13680
13681 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
13682 (set_lface_from_font_name)
13683 (set_font_frame_param, free_realized_face)
13684 (prepare_face_for_display, clear_face_gcs)
13685 (Finternal_set_font_selection_order, realize_x_face)
13686 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
13687 font-backend mechanism.
13688 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
13689 (load_face_font) [USE_FONT_BACKEND]: Abort.
13690 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
13691 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
13692
13693 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
13694 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
13695 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
13696 nonzero, register all available font drivers. Call
13697 x_default_font_parameter for deciding a font.
13698 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
13699
13700 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
13701 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
13702 (x_set_glyph_string_clipping_exactly)
13703 (x_compute_glyph_string_overhangs)
13704 (x_draw_glyph_string_foreground)
13705 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
13706 (x_free_frame_resources) [USE_FONT_BACKEND]: If
13707 enable_font_backend is nonzero, use font-backend mechanism.
13708 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
13709
137102008-02-01 Kenichi Handa <handa@m17n.org>
13711
13712 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
13713 system_eol_type.
13714 (syms_of_coding): Initialize system_eol_type.
13715
13716 * process.c (Fset_process_coding_system): Inherit system's eol
13717 format if necessary.
13718
137192008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13720
13721 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
13722
137232008-02-01 Kenichi Handa <handa@m17n.org>
13724
13725 * coding.c (decode_eol): Pay attention to buffer relocation in
13726 del_range_2.
13727 (decode_coding): Call decode_eol before restoring undo_list.
13728
137292008-02-01 Kenichi Handa <handa@m17n.org>
13730
13731 * charset.c (Fdefine_charset_internal): Fix setting of
13732 emacs_mule_bytes.
13733
137342008-02-01 Kenichi Handa <handa@m17n.org>
13735
13736 * keyboard.c (read_char): Check if C is a character or not before
13737 looking up Vkeyboard_translate_table.
13738
137392008-02-01 Kenichi Handa <handa@m17n.org>
13740
13741 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
13742 condition to terminate the loop.
13743
137442008-02-01 Kenichi Handa <handa@m17n.org>
13745
13746 * coding.c (produce_composition): Compare charbuf[i] instead of
13747 args[i] against 0.
13748 (Fterminal_coding_system): Use EQ to compare Lisp objects.
13749
137502008-02-01 Kenichi Handa <handa@m17n.org>
13751
13752 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
13753 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
13754 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
13755 detect_coding.
13756 (emacs_mule_char): Handle old style (Emacs 20) component character
13757 of a composition.
13758 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
13759 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
13760 composition rule.
13761 (decode_coding_emacs_mule): Handle invalid bytes correctly.
13762
137632008-02-01 Kenichi Handa <handa@m17n.org>
13764
13765 * coding.c (encode_coding_ccl): Allocate destination dynamically
13766 when necessary.
13767
137682008-02-01 Kenichi Handa <handa@m17n.org>
13769
13770 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
13771 the loop. When quitted, show a proper error message.
13772
137732008-02-01 Kenichi Handa <handa@m17n.org>
13774
13775 * xterm.c (x_set_glyph_string_clipping_exactly): Set
13776 src->clip_head and src->clip_tail temporarily instead of src->hl.
13777
13778 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
13779 character sequence.
13780 (Fccl_execute_on_string): Use ASET, not XSET.
13781
137822008-02-01 Kenichi Handa <handa@m17n.org>
13783
13784 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
13785
137862008-02-01 Kenichi Handa <handa@m17n.org>
13787
13788 * coding.c (decode_coding): Fix the condition of terminating the
13789 decoding loop.
13790
137912008-02-01 Kenichi Handa <handa@m17n.org>
13792
13793 * data.c (Faset): On setting a character bigger than 255 in a
13794 unibyte string, signal an error instead of make the string multibyte.
13795
137962008-02-01 Kenichi Handa <handa@m17n.org>
13797
13798 * charset.c (map_charset_chars): Fix for ascii-compatible charset
13799 made by a mapping table.
13800
138012008-02-01 Kenichi Handa <handa@m17n.org>
13802
13803 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
13804 not.
13805 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
13806 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
13807
13808 * xterm.c (x_draw_composite_glyph_string_foreground): Check
13809 s->face is NULL or not.
13810
138112008-02-01 Kenichi Handa <handa@m17n.org>
13812
13813 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
13814 (x_draw_glyph_string): Fix drawing of right_overhang and
13815 left_overhang around/on cursor.
13816
13817 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
13818
138192008-02-01 Kenichi Handa <handa@m17n.org>
13820
13821 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
13822
138232008-02-01 Kenichi Handa <handa@m17n.org>
13824
13825 * coding.c (Fdefine_coding_system_internal)
13826 (Fdefine_coding_system_alias): Avoid a duplicated element in
13827 Vcoding_system_alist.
13828
138292008-02-01 Kenichi Handa <handa@m17n.org>
13830
13831 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
13832
13833 * coding.c (Qcoding_system_define_form): New variable.
13834 (syms_of_coding): Intern and staticpro it.
13835 (Fcoding_system_p): Check Qcoding_system_define_form.
13836 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
13837
13838 * coding.h (CODING_SYSTEM_P): If ID is not available, call
13839 Fcoding_system_p.
13840 (CHECK_CODING_SYSTEM): If ID is not available, call
13841 Fcheck_coding_system.
13842 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
13843 Try also Fcheck_coding_system.
13844
138452008-02-01 Kenichi Handa <handa@m17n.org>
13846
13847 * coding.c (code_conversion_restore): GCPRO arg.
13848
138492008-02-01 Kenichi Handa <handa@m17n.org>
13850
13851 * character.c (lisp_string_width): Check multibyteness of STRING.
13852
138532008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13854
13855 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
13856 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
13857 (decode_mac_font_name): Use decode_coding_c_string instead of
13858 decode_coding.
13859 (x_load_font): Initialize fontp->fontset to -1. Set
13860 fontp->encoding_type.
13861
138622008-02-01 Kenichi Handa <handa@m17n.org>
13863
13864 * search.c (search_buffer): Give up BM search on case-fold-search
13865 if one of a target character has a case-equivalence of different
13866 byte length even if that target charcter is an ASCII.
13867 (simple_search): Fix calculation of byte length of matched text.
13868 (boyer_moore): Fix handling of case-equivalent multibyte characters.
13869
138702008-02-01 Kenichi Handa <handa@m17n.org>
13871
13872 * coding.c (decode_coding): Fix handling of invalid bytes.
13873
138742008-02-01 Kenichi Handa <handa@m17n.org>
13875
13876 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
13877 Unicode characters.
13878
138792008-02-01 Kenichi Handa <handa@m17n.org>
13880
13881 * coding.c (encode_coding_object): If a pre-write-conversion
13882 function makes a new buffer, kill it.
13883
138842008-02-01 Kenichi Handa <handa@m17n.org>
13885
13886 * coding.c (QCascii_compatible_p): New variable.
13887 (syms_of_coding): Initialize it.
13888 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
13889 calling string_char.
13890 (record_conversion_result): Add `default:' case.
13891 (coding_charset_list): Delete unused variable `coding_type'.
13892 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
13893 property in the plist of the coding system.
13894 (Fcoding_system_put): Check QCascii_compatible_p.
13895
138962008-02-01 Miles Bader <miles@gnu.org>
13897
13898 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
13899 removed calculation of frame `f', as it's now used.
13900
139012008-02-01 Kenichi Handa <handa@m17n.org>
13902
13903 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
13904 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
13905 (UNIDATA): New variable.
13906 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
13907 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
13908 $(RUN_TEMACS) unconditionally.
13909
139102008-02-01 Kenichi Handa <handa@m17n.org>
13911
13912 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
13913 (admindir): New variable.
13914 ($(lispsource)international/charprop.el): New target.
13915
139162008-02-01 Miles Bader <miles@gnu.org>
13917
13918 * character.c (chars-in-region): Remove obsolete function.
13919 (syms_of_character): Remove its initialization.
13920
139212008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
13922
13923 * w32select.c (validate_coding_system)
13924 (setup_windows_coding_system): New functions.
13925 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
13926 setup_windows_coding_system.
13927 (setup_config, Fw32_get_clipboard_data): Use
13928 validate_coding_system.
13929 (Fx_selection_exists): Move call to setup_config to a place
13930 where signals are allowed.
13931
13932 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
13933 (Fcheck_coding_system): Add declarations.
13934
139352008-02-01 Kenichi Handa <handa@m17n.org>
13936
13937 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
13938
139392008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13940
13941 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
13942 string as the second argument for x_new_fontset.
13943
139442008-02-01 Kenichi Handa <handa@m17n.org>
13945
13946 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
13947 (encode_coding_object): Use safe_call instead of call2.
13948
139492008-02-01 Kenichi Handa <handa@m17n.org>
13950
13951 * fontset.c (Fset_fontset_font): Check family element of a given vector.
13952
13953 * Makefile.in (lisp): Include charprop.el.
13954
139552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13956
13957 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
13958 Not sure if it's unnecessary.
13959
139602008-02-01 Steven Tamm <steventamm@mac.com>
13961
13962 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
13963 some possibly unnecessary fontset checking code that crashed
13964 when creating a new frame.
13965
139662008-02-01 Kenichi Handa <handa@m17n.org>
13967
13968 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
13969 lookup_face.
13970
13971 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
13972
13973 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
13974
139752008-02-01 Kenichi Handa <handa@m17n.org>
13976
13977 * coding.c: Cancel the change done in HEAD on 2008-02-01.
13978 (coding_charset_list): New function.
13979
13980 * coding.h (coding_charset_list): Extern it.
13981
139822008-02-01 Kenichi Handa <handa@m17n.org>
13983
13984 * fontset.c (Fset_fontset_font): Call find_font_encoding with
13985 concatenation of family and registry.
13986
139872008-02-01 Kenichi Handa <handa@m17n.org>
13988
13989 * character.h (BYTE8_STRING): Fix typo.
13990
13991 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
13992 string to multibyte (sync to HEAD).
13993
13994 * casefiddle.c (casify_region): Handle changes in byte-length
13995 using replace_range_2 (sync to HEAD).
13996
139972008-02-01 Andreas Schwab <schwab@suse.de>
13998
13999 * chartab.c (map_char_table): GCPRO table and arg.
14000
140012008-02-01 Kenichi Handa <handa@m17n.org>
14002
14003 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14004 already at limit.
14005
140062008-02-01 Kenichi Handa <handa@m17n.org>
14007
14008 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14009 instead of fast_c_string_match_ignore_case.
14010 (find_font_encoding): Change argument to Lisp_Object. Use
14011 fast_string_match_ignore_case instead of
14012 fast_c_string_match_ignore_case. Change caller.
14013
140142008-02-01 Kenichi Handa <handa@m17n.org>
14015
14016 * xdisp.c (get_next_display_element): In unibyte case, decide to
14017 display in octal form by checking a character by
14018 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14019
14020 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14021
14022 * character.c (unibyte_has_multibyte_table): New variable.
14023
14024 * character.h (unibyte_has_multibyte_table): Extern it.
14025 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14026
140272008-02-01 Kenichi Handa <handa@m17n.org>
14028
14029 * coding.c (encode_coding_iso_2022): Fix handling of charset
14030 annotation.
14031
140322008-02-01 Kenichi Handa <handa@m17n.org>
14033
14034 * coding.c (setup_coding_system): If coding_system is nil, use
14035 Qundecided.
14036 (Fterminal_coding_system): Return nil if terminal coding system is
14037 `undecided'.
14038 (syms_of_coding): Define coding-system `undecided' here. Setup
14039 terminal_coding as `undecided'.
14040
140412008-02-01 Kenichi Handa <handa@m17n.org>
14042
14043 * xdisp.c (message_dolog, set_message_1): Call
14044 unibyte_char_to_multibyte with arg type int.
14045
14046 * lread.c (read1): Fix reading of a char-table.
14047
14048 * print.c (print_object): Include sub char-table in circularities
14049 detection.
14050
140512008-02-01 Kenichi Handa <handa@m17n.org>
14052
14053 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14054 Append the found sequences in car of ARGS instead of prepending.
14055
140562008-02-01 Kenichi Handa <handa@m17n.org>
14057
14058 * fileio.c (report_file_error): Make a unibyte string from
14059 strerror (errorno).
14060 (Fsubstitute_in_file_name): Fix the arg to
14061 unibyte_char_to_multibyte. It is evaluated twice.
14062
140632008-02-01 Kenichi Handa <handa@m17n.org>
14064
14065 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14066
140672008-02-01 Kenichi Handa <handa@m17n.org>
14068
14069 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14070 BOM is not found.
14071 (detect_coding, detect_coding_system): Optimization for ISO-2022
14072 when no 8-bit data is found.
14073
140742008-02-01 Jason Rumney <jasonr@gnu.org>
14075
14076 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14077
140782008-02-01 Kenichi Handa <handa@m17n.org>
14079
14080 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14081 CHARS.
14082
140832008-02-01 Steven Tamm <steventamm@mac.com>
14084
14085 * macterm.c (mac_encode_char): Add charset argument and update
14086 to use encoding_type.
14087 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14088 switch to pure fontset.
14089 (decode_mac_font_name): Temporarily remove decoding.
14090 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14091 (x_load_font): Temporarily remove encoding.
14092
140932008-02-01 Kenichi Handa <handa@m17n.org>
14094
14095 * xfaces.c (Fface_font): If frame is not on a window system,
14096 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14097 refer to face->font.
14098 (split_font_name_into_vector, build_font_name_from_vector)
14099 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14100 when HAVE_WINDOW_SYSTEM is defined.
14101
141022008-02-01 Kenichi Handa <handa@m17n.org>
14103
14104 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14105 (x_produce_glyphs): Fix setting of members of cmp in case
14106 cmp->glyph_len is zero.
14107
14108 * fontset.c (Fset_fontset_font): Fix docstring.
14109 (Ffontset_info): Make it backward compatible. New arg ALL.
14110
141112008-02-01 Kim F. Storm <storm@cua.dk>
14112
14113 * process.c (read_process_output): Grow decoding_buf when needed;
14114 this could cause a crash in allocate_string and compact_small_strings.
14115
141162008-02-01 Kenichi Handa <handa@m17n.org>
14117
14118 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14119
141202008-02-01 Kenichi Handa <handa@m17n.org>
14121
14122 * coding.c (setup_coding_system): Set coding->common_flags
14123 correctly for raw-text.
14124 (consume_chars): On encoding unibyte text by raw-text, don't check
14125 multibyte form.
14126 (encode_coding): On encoding by raw-text, never use translation tables.
14127
14128 * fileio.c (e_write): Short cut for the case of no encoding.
14129
141302008-02-01 Kenichi Handa <handa@m17n.org>
14131
14132 * coding.c (detect_coding, detect_coding_system): Delete unused
14133 variables.
14134
141352008-02-01 Kenichi Handa <handa@m17n.org>
14136
14137 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14138 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14139
141402008-02-01 Kenichi Handa <handa@m17n.org>
14141
14142 * coding.c (Ffind_coding_systems_region_internal): Include
14143 raw-text and no-conversion in the result.
14144
141452008-02-01 Kenichi Handa <handa@m17n.org>
14146
14147 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14148 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14149 FONT_DEF.
14150 (font_def_arg, add_arg, from_arg, to_arg): New args.
14151 (set_fontset_font): Change argument.
14152 (Fset_fontset_font): Fix for the case that TARGET is a script
14153 name and charset name.
14154 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * fontset.c (fontset_font): Rename from fontset_face. Change return
14159 value.
14160 (face_suitable_for_char_p, face_for_char): Adjust for the change
14161 of fontset_font.
14162 (make_fontset_for_ascii_face): Fix setting of the fontset element
14163 for ASCII.
14164 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14165 to get a font name.
14166 (Ffontset_info): Adjust for the change of fontset_font.
14167
14168 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14169
14170 * character.h (LEADING_CODE_LATIN_1_MIN)
14171 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14172
141732008-02-01 Kenichi Handa <handa@m17n.org>
14174
14175 * editfns.c (check_translation): New function.
14176 (Ftranslate_region_internal): Handle M:N mapping.
14177
141782008-02-01 Kenichi Handa <handa@m17n.org>
14179
14180 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14181
141822008-02-01 Kenichi Handa <handa@m17n.org>
14183
14184 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14185 goto invalid_code.
14186 (decode_coding_iso_2022): Fix handling of invalid designation.
14187
14188 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14189 after calling code_conversion_save.
14190
141912008-02-01 Kenichi Handa <handa@m17n.org>
14192
14193 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14194
14195 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14196
14197 * fontset.c: Include "intervals.h".
14198 (fontset_face): Fix comparing of Lisp_Objects.
14199 (free_face_fontset, new_fontset_from_font_name): Fix
14200 Lisp_Object/int mixup.
14201
14202 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14203
14204 * coding.c: Add many prototypes for static functions.
14205 (get_translation_table): Allow max_lookup to be NULL.
14206 (decode_coding, Ffind_coding_systems_region_internal)
14207 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14208 get_translation_table with max_lookup NULL.
14209
142102008-02-01 Kenichi Handa <handa@m17n.org>
14211
14212 * coding.c (get_translation_table): Declare it as Lisp_Object.
14213 (LOOKUP_TRANSLATION_TABLE): New macro.
14214 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14215 instead of CHAR_TABLE_REF.
14216
142172008-02-01 Kenichi Handa <handa@m17n.org>
14218
14219 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14220 annotation data format.
14221 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14222 Change arguments FROM and TO to single argument NCHARS. Change caller.
14223 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14224 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14225 (decode_coding_ccl, decode_coding_charset): Pay attention to
14226 coding->charbuf_used.
14227 (get_translation): New function.
14228 (produce_chars): New arguments translation_table and last_block.
14229 Translate characters here. Return number of carryover chars.
14230 Change caller.
14231 (produce_composition): New argument pos. Change caller.
14232 Adjust for the change of annotation data format.
14233 (produce_charset, produce_annotation): Likewise.
14234 (decode_coding, encode_coding): Don't call translate_chars.
14235 (consume_chars): New arg translation_table. Change caller.
14236 (translate_chars): Delete.
14237 (syms_of_coding): Make translation-table's number of extra slots 2.
14238
142392008-02-01 Kenichi Handa <handa@m17n.org>
14240
14241 * search.c (simple_search): Fix setting this_pos_byte in backward
14242 search.
14243
14244 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14245 byte sequence.
14246 (detect_coding_ccl): Fix setting of the variable valids.
14247
142482008-02-01 Kenichi Handa <handa@m17n.org>
14249
14250 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14251
14252 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14253
14254 * editfns.c (Ftranslate_region_internal): Rename from
14255 Ftranslate_region. Accept a char-table in TABLE.
14256 (syms_of_editfns): Defsubr Stranslate_region_internal.
14257
14258 * xfaces.c (set_lface_from_font_name): If a font is specified for
14259 a frame, generate a fontset from the font.
14260 (build_scalable_font_name): If the scalable font is requested for
14261 a specific size, don't change that size.
14262 (try_font_list): Try a scalable font also in the case that a
14263 pattern string is specified.
14264
142652008-02-01 Kenichi Handa <handa@m17n.org>
14266
14267 * xfaces.c (Fface_font): New optional arg CHARACTER.
14268
142692008-02-01 Kenichi Handa <handa@m17n.org>
14270
14271 * charset.h (CHARSET_OFFSET): New macro.
14272
142732008-02-01 Kenichi Handa <handa@m17n.org>
14274
14275 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14276
14277 * fontset.c (fontset_face): Handle the case that repertory is a
14278 char-table.
14279 (find_font_encoding): Return nil for unknown encoding.
14280 (Fset_fontset_font): Ignore a font of unknown encoding.
14281
142822008-02-01 Kenichi Handa <handa@m17n.org>
14283
14284 * keymap.c (describe_vector): Handle default value of a char table.
14285
14286 * fontset.c (fontset_face): Handle fallback fonts correctly.
14287 (Ffontset_info): Return infomation about fallback fonts.
14288
142892008-02-01 Kenichi Handa <handa@m17n.org>
14290
14291 * fontset.c (FONTSET_DEFAULT): New macro.
14292 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14293 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14294 the case that it is nil.
14295 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14296 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14297
14298 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14299 subset or superset.
14300
143012008-02-01 Kenichi Handa <handa@m17n.org>
14302
14303 * emacs.c (main): Call init_charset after syms_of_XXX.
14304
14305 * charset.c (Vcharset_map_directory): Delete.
14306 (Vcharset_map_path): New variable.
14307 (load_charset_map_from_file): Use Vcharset_map_path instead.
14308 (init_charset): Initialize Vcharset_map_path.
14309 (syms_of_charset): Delete declaration of "charset-map-directory",
14310 add declaration of "charset-map-path".
14311
143122008-02-01 Kenichi Handa <handa@m17n.org>
14313
14314 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14315 ASCII only string.
14316
14317 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14318
14319 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14320 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14321
143222008-02-01 Kenichi Handa <handa@m17n.org>
14323
14324 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14325
14326 * coding.c (QCmnemonic, QCdefalut_char)
14327 (QCdecode_translation_table, QCencode_translation_table)
14328 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14329 (get_translation_table): Return a list of translation tables if
14330 necessary.
14331 (decode_coding): Call get_translation_table with ENCODEP 0.
14332 (char_encodable_p): If translation_table is non-nil, always call
14333 translate_char.
14334 (Fdefine_coding_system_internal): Accept list of translation
14335 tables as :encode-translation-table and :decode-translation-table.
14336 (Fcoding_system_put): New function.
14337 (syms_of_coding): Declare new symbols. Defsubr
14338 Scoding_system_put.
14339 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14340 typically JISX0212.
14341
14342 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14343 when the charset is superset type.
14344
14345 * character.c (translate_char): Accept list of translation tables.
14346
143472008-02-01 Kenichi Handa <handa@m17n.org>
14348
14349 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14350 (CODING_ATTR_TRANS_TBL): New macro.
14351
14352 * coding.c (get_translation_table): New function.
14353 (translate_chars): Fix the bug of skipping annotation data.
14354 (decode_coding, encode_coding): Utilize get_translation_table.
14355 (char_encodable_p, Funencodable_char_position): Translate char if
14356 necessary.
14357 (Ffind_coding_systems_region_internal)
14358 (Fcheck_coding_systems_region): Setup translation table for encode
14359 in a coding system attribute vector in advance.
14360 (Fdefine_coding_system_internal): Allow a symbol as translation
14361 table. For shift-jis type coding system, allow 4th charset.
14362
143632008-02-01 Kenichi Handa <handa@m17n.org>
14364
14365 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14366
14367 * xdisp.c (get_next_display_element): Pass -1 as POS to
14368 FACE_FOR_CHAR if displaying a C-string.
14369
143702008-02-01 Kenichi Handa <handa@m17n.org>
14371
14372 * composite.c (get_composition_id): Handle xoff and yoff in a
14373 composition rule.
14374
14375 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14376 (struct composition): New member lbearing and rbearing.
14377
14378 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14379 (x_get_glyph_overhangs): Handle a composition glyph.
14380 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14381
14382 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14383 composition glyph.
14384
143852008-02-01 Kenichi Handa <handa@m17n.org>
14386
14387 * print.c: Include charset.h.
14388 (Vprint_charset_text_property): New variable.
14389 (Qdefault): Extern it.
14390 (PRINT_STRING_NON_CHARSET_FOUND)
14391 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14392 (print_check_string_result): New variable.
14393 (print_check_string_charset_prop): New function.
14394 (print_prune_charset_plist): New variable.
14395 (print_prune_string_charset): New function.
14396 (print_object): Call print_prune_string_charset if
14397 Vprint_charset_text_property is not t.
14398 (print_interval): Print nothing if interval->plist is nil.
14399 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14400 variable. Init and staticpro print_prune_charset_plist.
14401
144022008-02-01 Kenichi Handa <handa@m17n.org>
14403
14404 * fontset.c (new_fontset_from_font_name): Use the specified font
14405 for all characters in the new fontset.
14406
14407 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14408 OBJECT args.
14409
14410 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
14411 OBJECT args for composition too.
14412
14413 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14414 OBJECT args.
14415
144162008-02-01 Kenichi Handa <handa@m17n.org>
14417
14418 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
14419
14420 * fontset.c (reorder_font_vector): Adjust for the change of
14421 FONT_DEF format.
14422 (fontset_face): New arg id. Change caller.
14423 (face_for_char): New args pos and object.
14424 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
14425 (fs_query_fontset): Check NAME by Fassoc too.
14426 (Fset_fontset_font): Allow non-XLFD font name.
14427 (Ffontset_info): Adjust for the change of FONT_DEF format.
14428
14429 * fontset.h (face_for_char): Adjust prototype.
14430
14431 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
14432 (append_space, extend_face_to_end_of_line)
14433 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14434 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
14435
14436 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
14437 POS and OBJECT args.
14438
14439 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
14440 POS and OBJECT args.
14441
144422008-02-01 Jason Rumney <jasonr@gnu.org>
14443
14444 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
14445 of GlobalAlloc'ed memory.
14446
144472008-02-01 Kenichi Handa <handa@m17n.org>
14448
14449 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
14450
14451 * charset.h (charset_table_used): Delete extern.
14452
14453 * charset.c (charset_table_used): Make it static.
14454 (map_charset_chars): Fix args to c_function with.
14455
14456 * chartab.c (map_sub_char_table_for_charset): Fix args to
14457 c_function with.
14458
14459 * coding.h (enum coding_result_code): Delete
14460 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
14461
14462 * coding.c (Qinsufficient_source, Qinconsistent_eol)
14463 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
14464 (Vlast_code_conversion_error): New variables.
14465 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
14466 (ONE_MORE_BYTE): Record error if any instead of signaling an
14467 error. If non-ASCII multibyte char is found, return the negative
14468 value of the code. All callers changed to check it.
14469 (ONE_MORE_BYTE_NO_CHECK): Likewise.
14470 (record_conversion_result): New function. Change all codes setting
14471 coding->result to call this function.
14472 (detect_coding_utf_8, decode_coding_utf_8)
14473 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
14474 Don't use the local variable incomplete.
14475 (emacs_mule_char): Change the second arg to `const'.
14476 (decode_coding): Fix of flushing out unprocessed data.
14477 (make_conversion_work_buffer): Fix making of a work buffer.
14478 (decode_coding_object): Return coding->dst_object.
14479
14480 * fontset.c (set_fontset_font): Fix args.
14481
14482 * lisp.h (CHARACTERBITS): Define as 22.
14483
14484 * process.c (send_process): Be sure to set coding->src_multibyte.
14485
14486 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
14487
144882008-02-01 Kenichi Handa <handa@m17n.org>
14489
14490 * xdisp.c (handle_auto_composed_prop): Give limit to
14491 Fnext_single_char_property_change.
14492
144932008-02-01 Kenichi Handa <handa@m17n.org>
14494
14495 * composite.c (syms_of_composite): Don't make the composition hash
14496 table weak.
14497
14498 * fontset.c (Fset_fontset_font): Fix docstring.
14499
14500 * lisp.h (detect_coding_system): Adjust prototype.
14501
14502 * fileio.c (kill_workbuf_unwind): Delete this function.
14503 (Finsert_file_contents): Adjust the call of detect_coding_system.
14504 Get conversion_buffer by code_conversion_save. Use the macro
14505 CODING_MAY_REQUIRE_DECODING. After decoding, update
14506 coding_system.
14507
14508 * coding.h (make_conversion_work_buffer): Delete extern.
14509 (code_conversion_save): Extern it.
14510
14511 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
14512 (CODING_GET_INFO): Delete argument eol_type. Change callers.
14513 (decode_coding_utf_8): Don't do eol converion.
14514 (detect_coding_utf_16): Check coding->src_chars, not
14515 coding->src_bytes. Add heuristics for those that have no signature.
14516 (decode_coding_emacs_mule, decode_coding_iso_2022)
14517 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14518 Don't do eol converion.
14519 (adjust_coding_eol_type): Return a new coding system.
14520 (detect_coding): Don't detect eol. Fix for utf-16 detection.
14521 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
14522 each change.
14523 (decode_coding): Pay attention to undo_list. Do eol conversion for
14524 all types of coding-systems (if necessary).
14525 (Vcode_conversion_work_buf_list): Delete it.
14526 (Vcode_conversion_reused_workbuf): Rename from
14527 Vcode_conversion_reused_work_buf.
14528 (Vcode_conversion_workbuf_name): New variable.
14529 (reused_workbuf_in_use): New variable.
14530 (make_conversion_work_buffer): Delete the arg DEPTH.
14531 (code_conversion_restore): Change argument to cons.
14532 (code_conversion_save): Delete the argument BUFFER. Change callers.
14533 (detect_coding_system): New argument src_chars. Change callers.
14534 Fix for utf-16 detection.
14535 (init_coding_once): Don't use ISO_carriage_return.
14536 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
14537 reused_workbuf_in_use.
14538
145392008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * keymap.c (store_in_keymap): Pay attention to the case that idx
14542 is a cons specifying a character range.
14543
145442008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
14547 HANDLED_RECOMPUTE_PROPS.
14548
14549 * coding.c (Fdefine_coding_system_internal): Fix checking of
14550 ascii compatibility.
14551
145522008-02-01 Kenichi Handa <handa@m17n.org>
14553
14554 * charset.c (find_charsets_in_text): Delete unused locale variable.
14555 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
14556
14557 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
14558 Resync charset_list to Vemacs_mule_charset_list.
14559
14560 * keymap.c (store_in_keymap): Pay attention to the case that idx
14561 is a cons specifying a character range.
14562
145632008-02-01 Kenichi Handa <handa@m17n.org>
14564
14565 * composite.c (update_compositions): Bind inhibit-read-only, etc
14566 to t before calling remove-list-of-text-properties.
14567
14568 * print.c (print_object): Always print ASCII chars as is.
14569
145702008-02-01 Kenichi Handa <handa@m17n.org>
14571
14572 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
14573
14574 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
14575 is a char table.
14576
145772008-02-01 Kenichi Handa <handa@m17n.org>
14578
14579 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
14580
145812008-02-01 Kenichi Handa <handa@m17n.org>
14582
14583 * xfaces.c (set_lface_from_font_name): Fix for the case that
14584 FONTNAME is not fontset name.
14585
145862008-02-01 Kenichi Handa <handa@m17n.org>
14587
14588 * fns.c (base64_encode_1): Fix previous change.
14589
145902008-02-01 Kenichi Handa <handa@m17n.org>
14591
14592 * fontset.c (set_fontset_font): New function.
14593 (Fset_fontset_font): If a font is specified for a charset, use
14594 map_charset_chars to store the font spec in a fontset.
14595
145962008-02-01 Kenichi Handa <handa@m17n.org>
14597
14598 * fontset.c (fontset_face): Create a fallback fontset on demand.
14599 (make_fontset): Don't create a fallback fontset here.
14600 (free_face_fontset): Free a fallback fontset (if any) too.
14601 (n_auto_fontsets): Delete this variable.
14602 (auto_fontset_alist): New variable.
14603 (new_fontset_from_font_name): Check auto_fontset_alist.
14604 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
14605 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
14606 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
14607 Defsubr Sfontset_list_all.
14608
146092008-02-01 Kenichi Handa <handa@m17n.org>
14610
14611 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14612
146132008-02-01 Kenichi Handa <handa@m17n.org>
14614
14615 * fontset.c (Fnew_fontset): Check NAME more rigidly.
14616
146172008-02-01 Kenichi Handa <handa@m17n.org>
14618
14619 * editfns.c (Fgoto_char): Fix docstring.
14620
146212008-02-01 Kenichi Handa <handa@m17n.org>
14622
14623 * insdel.c (insert_from_gap): Adjust intervals correctly.
14624
146252008-02-01 Jason Rumney <jasonr@gnu.org>
14626
14627 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
14628 (pfnGetFontUnicodeRanges): New dynamically loaded function.
14629 (w32_initialize): Try to load it.
14630 (x_get_font_repertory): Use it if available.
14631 (w32_encode_char): Add shortcut for unicode output.
14632
14633 * w32fns.c (w32_load_system_font): Default charset to -1.
14634 (x_to_w32_charset): Match all fonts for unicode.
14635 (w32_to_x_charset): New parameter matching. Don't return partial
14636 or wildcard charsets.
14637 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
14638 (w32_codepage_for_font): Return CP_UNICODE for unicode.
14639 (w32_to_x_font): Match charset to real charset.
14640 (enum_font_cb2): Always list unicode versions.
14641
14642 * makefile.w32-in (temacs): Increase EMHEAP.
14643
146442008-02-01 Jason Rumney <jasonr@gnu.org>
14645
14646 * w32term.c (w32_encode_char): New charset parameter.
14647 font_info.encoding becomes encoding_type.
14648 (x_get_font_repertory): New function. Warning: stub only!
14649 (x_new_font): Return quickly if font already set.
14650 (x_new_fontset): fontsetname parameter is Lisp_Object.
14651 Use new fs_query_fontset. Try new_fontset_from_font_name.
14652 Use fontset_name for return value.
14653
14654 * w32term.h: Declare x_get_font_repertory.
14655
14656 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
14657 place of find_charset_in_text. Use encode_coding_object in place
14658 of encode_coding.
14659 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
14660 decode_coding.
14661
14662 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
14663 of x_new_fontset.
14664 (w32_load_system_font): Initialize charset as unicode.
14665 font_info.encoding becomes encoding_type.
14666 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
14667 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
14668 (syms_of_w32fns): Set get_font_repertory_func.
14669
14670 * w32console.c: Include character.h. Use terminal_encode_buffer
14671 from term.c.
14672 (write_glyphs): Use new version of encode_terminal_code. Use
14673 encode_coding_object in place of encode_coding.
14674
14675 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
14676 encoding becomes encoding_type.
14677
14678 * term.c (terminal_encode_buffer): Make externally visible.
14679
14680 * makefile.w32-in: Add character.h dependancies.
14681 (character.o, chartab.o): New targets.
14682
146832008-02-01 Kenichi Handa <handa@m17n.org>
14684
14685 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
14686 CODING_ID_EOL_TYPE.
14687
146882008-02-01 Andreas Schwab <schwab@suse.de>
14689
14690 * coding.c (produce_chars): Revert last change.
14691
146922008-02-01 Kenichi Handa <handa@m17n.org>
14693
14694 * charset.h (charset_unicode): Extern it.
14695
14696 * charset.c (string_xstring_p): Check by (C >= 0x100).
14697 (find_charsets_in_text): Change format of the arc CHARSETS. New
14698 arg MULTIBYTE.
14699 (Ffind_charset_region, Ffind_charset_string): Adjust for the
14700 change of find_charsets_in_text.
14701 (Fsplit_char): Fix doc. Never return unknown.
14702
14703 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
14704
14705 * coding.c (Fdefine_coding_system_alias): Update
14706 Vcoding_system_list.
14707
14708 * fontset.c (load_font_get_repertory): Pay attention to the case
14709 that ENCODING of a font is specified by a char-table.
14710
14711 * xterm.c (x_get_font_repertory): Handle the case that the
14712 encoding of font is other than Unicode.
14713
147142008-02-01 Kenichi Handa <handa@m17n.org>
14715
14716 * term.c (encode_terminal_code): Don't handle glyph-table. Check
14717 if a character is encodable by the terminal coding system. If
14718 not, produces proper number of `?'s. Update
14719 terminal_encode_buffer and terminal_encode_buf_size if necessary.
14720 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
14721
147222008-02-01 Kenichi Handa <handa@m17n.org>
14723
14724 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
14725 variables.
14726 (encode_terminal_code): Change argument. Encode multiple
14727 characters at once. Store the result of encoding in
14728 terminal_encode_buffer.
14729 (write_glyphs, insert_glyphs): Adjust for the change of
14730 encode_terminal_code.
14731 (term_init): Initialize terminal_encode_buffer and
14732 terminal_encode_buf_size.
14733
14734 * coding.c (consume_chars): If coding->src_object is nil, don't
14735 check annotation.
14736
147372008-02-01 Kenichi Handa <handa@m17n.org>
14738
14739 * character.c (char_string): Use ASCII_CHAR_P instead of
14740 SINGLE_BYTE_CHAR_P.
14741
147422008-02-01 Kenichi Handa <handa@m17n.org>
14743
14744 * xdisp.c (handle_auto_composed_prop): Check if the last
14745 characters of auto-composed region is newly composed with the
14746 following characters.
14747 (handle_composition_prop): Fix checking of point being inside
14748 composition.
14749
147502008-02-01 Kenichi Handa <handa@m17n.org>
14751
14752 * fns.c (concat): Don't change multibyteness of the result by
14753 concatenating an 8-bit character.
14754
14755 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
14756 multibyteness of the result when newelt is an 8-bit character.
14757
147582008-02-01 Dave Love <fx@gnu.org>
14759
14760 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
14761 EMACS_INT.
14762
14763 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
14764
14765 * xfaces.c (face_numeric_value): Declare dim size_t.
14766 (Finternal_lisp_face_equal_p): Remove unused f.
14767
14768 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
14769 (MATRIX_ROW): Remove unused vars.
14770 (draw_glyphs, x_insert_glyphs, fast_find_position)
14771 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
14772 byte/char counts.
14773
14774 * regex.c (regex_compile): Remove unused var.
14775
14776 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14777
14778 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14779 (Faccessible_keymaps, where_is_internal): Remove unused vars.
14780
14781 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
14782
14783 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
14784
14785 * fileio.c (Fwrite_region): Remove unused var.
14786
14787 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
14788 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
14789
14790 * composite.c (Fremove_list_of_text_properties): Declare.
14791
14792 * coding.c (inhibit_pre_post_conversion): Remove (unused).
14793 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
14794 (coding_inherit_eol_type): Remove unused attrs.
14795 (detect_coding): Cast arg of detect_eol.
14796
14797 * charset.c (syms_of_charset): Remove unused var p.
14798 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
14799 byte/char counts.
14800
14801 * casetab.c (set_case_table): Remove unused var.
14802
14803 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
14804 unused vars.
14805
148062008-02-01 Dave Love <fx@gnu.org>
14807
14808 * xterm.c (x_bitmap_mask): Declare.
14809
148102008-02-01 Dave Love <fx@gnu.org>
14811
14812 * xterm.c (x_term_init): Fix type error.
14813
14814 * lisp.h: Add Funibyte_char_to_multibyte.
14815
14816 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
14817 (Fset_coding_system_priority): Doc fix.
14818
14819 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
14820
14821 * indent.c (check_composition): Make start and end EMACS_INT.
14822
14823 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
14824
14825 * xdisp.c (handle_composition_prop, check_point_in_composition):
14826 Make buffer positions EMACS_INT.
14827
14828 * composite.c (find_composition, run_composition_function)
14829 (update_compositions, Ffind_composition_internal): Make buffer
14830 positions EMACS_INT.
14831
14832 * composite.h (find_composition, update_compositions): Make
14833 position args EMACS_INT.
14834
14835 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
14836
14837 * intervals.c (get_property_and_range):
14838 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
14839
14840 * unexalpha.c: Don't include varargs.h.
14841
148422008-02-01 Dave Love <fx@gnu.org>
14843
14844 * coding.h (ENCODE_UTF_8): New.
14845
14846 * Makefile.in (gtkutil.o): Depend on coding.h.
14847
14848 * coding.c (Fset_coding_system_priority): Doc fix.
14849
148502008-02-01 Kenichi Handa <handa@m17n.org>
14851
14852 * fileio.c (Finsert_file_contents): Call setup_coding_system in
14853 the case of auto saving.
14854
148552008-02-01 Andreas Schwab <schwab@suse.de>
14856
14857 * chartab.c (map_char_table, map_char_table_for_charset): Protect
14858 `range' from GC.
14859
148602008-02-01 Kenichi Handa <handa@m17n.org>
14861
14862 * coding.c (decode_coding_sjis): Check bytes more rigidly.
14863
148642008-02-01 Kenichi Handa <handa@m17n.org>
14865
14866 * fileio.c (choose_write_coding_system): Return a decided coding system.
14867 (Fwrite_region): Set Vlast_coding_system_used to the return value
14868 of choose_write_coding_system.
14869
148702008-02-01 Kenichi Handa <handa@m17n.org>
14871
14872 * charset.c (Fset_charset_priority): Pay attention to duplicated
14873 arguments.
14874
14875 * coding.c (QCcategory): New variable.
14876 (syms_of_coding): Defsym it. Set all elements of
14877 Vcoding_category_table and their symbol values.
14878 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
14879 coding-category-XXX, and coding-category-list.
14880 (Fdefine_coding_system_internal): Add category in the plist.
14881
148822008-02-01 Kenichi Handa <handa@m17n.org>
14883
14884 * callproc.c (Fcall_process): Handle carryover correctly.
14885
14886 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
14887 (raw_text_coding_system): Check NILP (coding_system).
14888 (coding_inherit_eol_type): Check NILP (coding_system) and
14889 NILP (parent).
14890 (consume_chars): Fix for the case of raw-text.
14891
14892 * process.c (read_process_output): Handle carryover correctly.
14893
148942008-02-01 Dave Love <fx@gnu.org>
14895
14896 * regex.c (re_search_2): Fix last change.
14897
148982008-02-01 Kenichi Handa <handa@m17n.org>
14899
14900 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
14901 target_multibyte. Even in a unibyte case, return a converted
14902 multibyte char.
14903 (GET_CHAR_AFTER): New macro.
14904 (PATFETCH): Translate via multibyte char.
14905 (HANDLE_UNIBYTE_RANGE): Delete this macro.
14906 (SETUP_MULTIBYTE_RANGE): New macro.
14907 (regex_compile): Setup compiled code so that its multibyteness
14908 matches that of a target. Fix the handling of "[X-YZ]" using
14909 SETUP_MULTIBYTE_RANGE.
14910 (analyse_first) <charset>: For filling fastmap for all multibyte
14911 characters, don't check by BASE_LEADING_CODE_P.
14912 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
14913 the same as RE_MULTIBYTE_P (bufp) now.
14914 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
14915 (TARGET_CHAR_AND_LENGTH): Delete this macro.
14916 (TRANSLATE_VIA_MULTIBYTE): New macro.
14917 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
14918 It is the same as RE_MULTIBYTE_P (bufp) now.
14919 <exactn>: Translate via multibyte.
14920 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
14921 translate it.
14922 <charset, charset_not>: Fetch a character by
14923 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
14924 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
14925 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
14926 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
14927 by GET_CHAR_AFTER.
14928 (bcmp_translate): Likewise.
14929
14930 * search.c (compile_pattern): Check the member target_multibyte,
14931 not the member multibyte of buf.
14932
14933 * lread.c (read1): While reading a string, set force_singlebyte
14934 and force_multibyte correctly.
14935
14936 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
14937 up of unibyte_to_multibyte_table.
14938
149392008-02-01 Kenichi Handa <handa@m17n.org>
14940
14941 * coding.c (setup_coding_system): If coding has
14942 post-read-conversion or pre-write-conversion, set
14943 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
14944 respectively.
14945 (decode_coding_gap): Run post-read-conversion if any.
14946
14947 * fileio.c (Finsert_file_contents): Even if we read into a
14948 unibyte buffer, check if we must decode the result or not.
14949
149502008-02-01 Kenichi Handa <handa@m17n.org>
14951
14952 * coding.c (make_conversion_work_buffer): Change the work buffer
14953 name to the same one as that of Emacs 21.
14954
149552008-02-01 Kenichi Handa <handa@m17n.org>
14956
14957 * coding.h (make_conversion_work_buffer): Adjust prototype.
14958 (code_conversion_restore): Don't extern it.
14959
14960 * coding.c (detected_mask): Delete unused variable.
14961 (decode_coding_iso_2022): Pay attention to the byte sequence of
14962 CTEXT extended segment, and retain those bytes as is.
14963 (decode_coding_ccl): Delete unused variable `valids'.
14964 (setup_coding_system): Delete unused variable `category'.
14965 (consume_chars): Delete unused variable `category'. Make it work
14966 for non-multibyte case.
14967 (make_conversion_work_buffer): Change argument.
14968 (saved_coding): Delete unused variable.
14969 (code_conversion_restore): Don't check saved_coding->destination.
14970 (code_conversion_save): New function.
14971 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
14972 instead of record_unwind_protect.
14973 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
14974 (detect_coding_system): Delete unused variable `mask'.
14975 (Fdefine_coding_system_internal): Delete unused variable id.
14976
14977 * fileio.c (kill_workbuf_unwind): New function.
14978 (Finsert_file_contents): On replacing, call
14979 make_conversion_work_buffer with correct args, and call
14980 record_unwind_protect with the first arg kill_workbuf_unwind.
14981
14982 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
14983
149842008-02-01 Kenichi Handa <handa@m17n.org>
14985
14986 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
14987 (fontset_add): Fix for the case that TO is less than TO1.
14988 (Ffontset_info): Don't use fallback fontset on checking the
14989 default fontset.
14990 (dump_fontset): New function for debugging.
14991
14992 * coding.c (Fdefine_coding_system_internal): Fix for the case that
14993 coding_type is Qcharset.
14994
149952008-02-01 Kenichi Handa <handa@m17n.org>
14996
14997 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
14998 (map_char_table): Don't inherit the value from the parent on
14999 initializing VAL. Adjust for the above change.
15000
150012008-02-01 Kenichi Handa <handa@m17n.org>
15002
15003 * coding.c (Qsignature, Qendian): Delete these variables.
15004 (syms_of_coding): Don't initialize them.
15005 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15006 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15007 detect_info->found.
15008 (decode_coding_utf_16): Don't detect BOM here.
15009 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15010 is NOT utf_16_without_bom.
15011 (setup_coding_system): For a coding system of type utf-16, check
15012 if the attribute :endian is Qbig or not (not nil or not), and set
15013 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15014 (detect_coding): If coding type is utf-16 and BOM detection is
15015 required, detect it.
15016 (Fdefine_coding_system_internal): For a coding system of type
15017 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15018
150192008-02-01 Kenichi Handa <handa@m17n.org>
15020
15021 * coding.c (coding_set_source): Fix for the case that the current
15022 buffer is different from coding->src_object.
15023 (decode_coding_object): Don't use the conversion work buffer if
15024 DST_OBJECT is a buffer.
15025
150262008-02-01 Dave Love <fx@gnu.org>
15027
15028 * lread.c (read_emacs_mule_char) [len==2]: Index
15029 emacs_mule_charset correctly.
15030
150312008-02-01 Dave Love <fx@gnu.org>
15032
15033 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15034 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15035 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15036 treated specially.)
15037 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15038 (detected_mask): Remove Big5 bits.
15039
150402008-02-01 Kenichi Handa <handa@m17n.org>
15041
15042 The following changes are to make the font rescaling facility
15043 compatible with Emacs 21.
15044
15045 * xfaces.c (Vface_font_rescale_alist): Rename from
15046 Vface_resizing_fonts.
15047 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15048 (font_rescale_ratio): Rename from font_resizing_ratio.
15049 (split_font_name): Set font->rescale_ratio.
15050 (better_font_p): Pay attention to font->rescale_ratio.
15051 (build_scalable_font_name): Likewise. Change RESX, and RESY
15052 fields.
15053 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15054
150552008-02-01 Kenichi Handa <handa@m17n.org>
15056
15057 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15058 (Qutf_16_le): Remove these variables.
15059 (syms_of_coding): Don't DEFSYM them.
15060 (decode_coding_utf_16): Fix handling of BOM.
15061 (encode_coding_utf_16): Fix handling of BOM.
15062
150632008-02-01 Kenichi Handa <handa@m17n.org>
15064
15065 * fileio.c (Finsert_file_contents): On replacing, before decoding
15066 the file into the work buffer, set point of the work buffer to the end.
15067
150682008-02-01 Dave Love <fx@gnu.org>
15069
15070 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15071
150722008-02-01 Dave Love <fx@gnu.org>
15073
15074 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15075 and fix C types.
15076
150772008-02-01 Kenichi Handa <handa@m17n.org>
15078
15079 * xdisp.c (SKIP_GLYPHS): New macro.
15080 (set_cursor_from_row): Pay attention to string display properties.
15081
15082 * category.c (copy_category_entry): Fix for the case that RANGE
15083 is an integer.
15084
15085 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15086
15087 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15088
150892008-02-01 Kenichi Handa <handa@m17n.org>
15090
15091 * charset.c (Fcharset_id_internal): New function.
15092 (syms_of_charset): Defsubr it.
15093
15094 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15095 with the last arg charset_list acquired from coding.
15096 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15097 the attribute coding_attr_ccl_valids.
15098
15099 * coding.h (enum define_coding_ccl_arg_index): Set the first
15100 member coding_arg_ccl_decoder to coding_arg_max.
15101
15102 * ccl.h (ccl_driver): Adjust prototype.
15103
15104 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15105 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15106 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15107 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15108 last arg Qnil.
15109
151102008-02-01 Kenichi Handa <handa@m17n.org>
15111
15112 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15113 call encode_char.
15114
15115 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15116
151172008-02-01 Dave Love <fx@gnu.org>
15118
15119 * composite.c (syms_of_composite): Make composition_hash_table weak.
15120
151212008-02-01 Kenichi Handa <handa@m17n.org>
15122
15123 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15124 (font_name_registry): Don't extern them.
15125 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15126
15127 * fontset.h (Qfontset): Don't extern it.
15128 (new_fontset_from_font_name): Extern it.
15129
15130 * fontset.c: Give 8 extra slots to fontset objects.
15131 (Qfontset_info): New variable.
15132 (syms_of_fontset): Defsym it.
15133 (FONTSET_FALLBACK): New macro.
15134 (fontset_face): Try also the default fontset.
15135 (make_fontset): Realize a fallback fontset from the default fontset.
15136 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15137 using split_font_name_into_vector and build_font_name_from_vector.
15138 (Fset_fontset_font): Access the elements of font_spec by enum
15139 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15140 name by using split_font_name_into_vector.
15141 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15142 generate a proper font name from the fontset name. Update
15143 Vfontset_alias_alist.
15144 (n_auto_fontsets): New variable.
15145 (new_fontset_from_font_name): New function.
15146 (Ffont_info): Store the information about fonts generated from the
15147 default fontset in the first extra slot of the returned char-table.
15148
15149 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15150 (font_name_registry): Delete function.
15151 (split_font_name_into_vector): New function.
15152 (build_font_name_from_vector): New function.
15153 (font_list): The argument REGISTRY is now a list of registry names.
15154 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15155 specifies an explicit font name, return the name as is. Make a
15156 list of registy names.
15157
15158 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15159 of x_new_fontset.
15160 (Fx_create_frame): Don't call x_new_fontset here. Just use
15161 x_list_fonts to check the existence of fonts.
15162
15163 * xterm.h (x_new_fontset): Adjust prototype.
15164
15165 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15166 string. Use new_fontset_from_font_name to create a fontset from a
15167 font name.
15168
151692008-02-01 Kenichi Handa <handa@m17n.org>
15170
15171 * syntax.c (Vfind_word_boundary_function_table): New name for
15172 Vnext_word_boundary_function_table.
15173 (find-word-boundary-function-table): New name for
15174 next-word-boundary-function-table.
15175
151762008-02-01 Dave Love <fx@gnu.org>
15177
15178 * Makefile.in: Fix some dependencies.
15179
15180 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15181 set it to nil before returning.
15182
15183 * composite.c (update_compositions): Fix type error.
15184
15185 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15186
151872008-02-01 Kenichi Handa <handa@m17n.org>
15188
15189 * xterm.c (x_new_font): Optimize for the case that the font is
15190 already set for the frame.
15191
151922008-02-01 Kenichi Handa <handa@m17n.org>
15193
15194 * chartab.c (char_table_ascii): Check if the char table contents
15195 is sub-char-table or not.
15196 (char_table_set, char_table_set_range): Fix argument to
15197 char_table_ascii.
15198
15199 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15200 (detect_coding_utf_8, detect_coding_utf_16)
15201 (detect_coding_emacs_mule, detect_coding_iso_2022)
15202 (detect_coding_sjis, detect_coding_big5)
15203 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15204 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15205 sequence is valid in this coding system. Change callers.
15206 (MAX_ANNOTATION_LENGTH): New macro.
15207 (ADD_ANNOTATION_DATA): New macro.
15208 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15209 ADD_ANNOTATION_DATA. Change the format of annotation data.
15210 (ADD_CHARSET_DATA): New macro.
15211 (emacs_mule_char): New argument ID. Change callers.
15212 (decode_coding_emacs_mule, decode_coding_iso_2022)
15213 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15214 Produce charset annotation data in coding->charbuf.
15215 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15216 to charset annotation data in coding->charbuf.
15217 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15218 coding->common_flags if the coding system is iso-2022 based and
15219 uses designation.
15220 (produce_composition): Adjust for the new annotation data format.
15221 (produce_charset): New function.
15222 (produce_annotation): Handle charset annotation.
15223 (handle_composition_annotation, handle_charset_annotation): New
15224 functions.
15225 (consume_chars): Handle charset annotation. Utilize the above two
15226 functions.
15227 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15228 buffer, get the deleted text as a string and set
15229 coding->src_object to that string.
15230 (detect_coding, detect_coding_system): Use the new struct
15231 coding_detection_info.
15232
15233 * coding.h (struct coding_detection_info): New structure.
15234 (struct coding_system): Adjust prototype of the member `detector'.
15235 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15236
152372008-02-01 Kenichi Handa <handa@m17n.org>
15238
15239 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15240
152412008-02-01 Dave Love <fx@gnu.org>
15242
15243 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15244 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15245 to new local and nullify apropos_accumulate before returning.
15246 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15247
152482008-02-01 Kenichi Handa <handa@m17n.org>
15249
15250 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15251 correctly.
e3eea1fc 15252
aac0c6e3
MR
152532008-02-01 Dave Love <fx@gnu.org>
15254
15255 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15256
152572008-02-01 Kenichi Handa <handa@m17n.org>
15258
15259 The following changes are to make character composition happen
15260 automatically on displaying.
15261
15262 * Makefile.in (lisp, shortlisp): Add composite.elc.
15263
15264 * composite.h (Qauto_composed, Vauto_composition_function)
15265 (Qauto_composition_function): Extern them.
15266
15267 * composite.c (Vcomposition_function_table)
15268 (Qcomposition_function_table): Delete variables.
15269 (Qauto_composed, Vauto_composition_function)
15270 (Qauto_composition_function): New variables.
15271 (run_composition_function): Don't call
15272 compose-chars-after-function.
15273 (update_compositions): Clear `auto-composed' text property.
15274 (compose_chars_in_text): Delete this function.
15275 (syms_of_composite): Staticpro Qauto_composed and
15276 Qauto_composition_function. Declare Vauto_composition_function as
15277 a Lisp variable.
15278
15279 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15280
15281 * xdisp.c (it_props): Add an entry for Qauto_composed.
15282 (handle_auto_composed_prop): New function.
15283
15284 * xselect.c (selection_data_to_lisp_data): Don't call
15285 compose_chars_in_text.
15286
152872008-02-01 Dave Love <fx@gnu.org>
15288
15289 * keyboard.c (read_char): Modify checking around use of
15290 Vkeyboard_translate_table.
15291
15292 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15293 and fix C types.
15294
152952008-02-01 Kenichi Handa <handa@m17n.org>
15296
15297 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15298 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15299 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15300 the case that the last byte is '\r' correctly.
15301 (decode_coding): Flush out the unprocessed data correctly.
15302 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15303
153042008-02-01 Dave Love <fx@gnu.org>
15305
15306 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15307 Add XK_ISO... case.
15308 (xaw_scroll_callback): Revert last change.
15309
153102008-02-01 Kenichi Handa <handa@m17n.org>
15311
15312 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15313
153142008-02-01 Kenichi Handa <handa@m17n.org>
15315
15316 * xfaces.c (Vface_resizing_fonts): New variable.
15317 (struct font_name): New member `resizing_ratio'.
15318 (font_resizing_ratio): New function.
15319 (split_font_name): Set font->resizing_ratio.
15320 (better_font_p): Pay attention to font->resizing_ratio.
15321 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15322 RESX, and RESY fields.
15323 (try_alternative_families): Try scalable fonts if
15324 Vscalable_fonts_allowed is not Qt.
15325 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15326
153272008-02-01 Dave Love <fx@gnu.org>
15328
15329 * xterm.c (xaw_scroll_callback): Cast correctly.
15330
153312008-02-01 Dave Love <fx@gnu.org>
15332
15333 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15334 (lispy_kana_keys): Comment out.
15335 (make_lispy_event) [XK_kana_A]: Comment out.
15336
15337 * xterm.c (xaw_scroll_callback): Cast call_data.
15338 (XTread_socket): Deal with ASCII keysyms.
15339 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15340
153412008-02-01 Dave Love <fx@gnu.org>
15342
15343 * xterm.c (Vx_keysym_table): New.
15344 (syms_of_xterm): Initialize it.
15345 (XTread_socket): Use it.
15346 From head: Eliminate incorrect optimization that tried to avoid
15347 decoding the output of X*LookupString.
15348 (x_get_font_repertory): Delete charset declaration.
15349
153502008-02-01 Kenichi Handa <handa@m17n.org>
15351
15352 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15353 return 0.
15354 (Fdefine_coding_system_internal): Setup
15355 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15356
153572008-02-01 Dave Love <fx@gnu.org>
15358
15359 * coding.c (Fcheck_coding_system): Doc fix.
15360
15361 * editfns.c (Finsert_byte): Return a proper value.
15362
153632008-02-01 Kenichi Handa <handa@m17n.org>
15364
15365 * coding.c (decode_coding): Fix args to translate_chars. Pay
15366 attention to Vstandard_translation_table_for_decode.
15367 (encode_coding): Fix args to translate_chars. Pay attention to
15368 Vstandard_translation_table_for_encode.
15369
15370 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15371 SINGLE_BYTE_CHAR_P.
15372
15373 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15374 not by SINGLE_BYTE_CHAR_P.
15375
15376 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15377 SINGLE_BYTE_CHAR_P.
15378
15379 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15380 SINGLE_BYTE_CHAR_P.
15381
15382 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15383 by SINGLE_BYTE_CHAR_P.
15384
15385 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15386 SINGLE_BYTE_CHAR_P.
15387
153882008-02-01 Dave Love <fx@gnu.org>
15389
15390 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15391
153922008-02-01 Dave Love <fx@gnu.org>
15393
15394 * fns.c (Flanginfo): Fix typo.
15395
15396 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15397
153982008-02-01 Kenichi Handa <handa@m17n.org>
15399
15400 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15401 (detect_coding_emacs_mule, detect_coding_iso_2022)
15402 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15403 incomplete byte sequence. Don't update *mask when correctly detected.
15404 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15405 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15406 (detect_coding, detect_coding_system): Adjust for the changes above.
15407
154082008-02-01 Kenichi Handa <handa@m17n.org>
15409
15410 * character.c (char_string): Rename from
15411 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
15412 (string_char): Rename from string_char.
15413
15414 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
15415 if C is greater than MAX_3_BYTE_CHAR.
15416 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
15417 string_char instead of string_char_with_unification.
15418
154192008-02-01 Dave Love <fx@gnu.org>
15420
15421 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
15422
154232008-02-01 Kenichi Handa <handa@m17n.org>
15424
15425 * keymap.c (push_key_description): Pay attention to force_multibyte.
15426
15427 * regex.c (re_search_2): Fix for the case of unibyte buffer.
15428
154292008-02-01 Dave Love <fx@gnu.org>
15430
15431 * charset.c (define_charset_internal): Rename `supprementary'.
15432
15433 * Makefile.in (lisp, shortlisp): Remove latin-N.
15434
154352008-02-01 Dave Love <fx@gnu.org>
15436
15437 * xfns.c (x_window, x_window): Use use_xim.
15438
15439 * xterm.c (use_xim): Initialize.
15440 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15441 (x_term_init): Maybe set use_xim.
15442
15443 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15444
154452008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * search.c (search_buffer): Fix case-fold-search of multibyte
15448 characters.
15449 (boyer_moore): Rename the last argument to char_high_bits.
15450
154512008-02-01 Kenichi Handa <handa@m17n.org>
15452
15453 * xdisp.c (display_string): Fix for the case of zero width glyph.
15454
15455 * xfns.c (x_set_font): Change the error message of the case that
15456 x_new_fontset returns Qt.
15457
15458 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
15459 (Finternal_set_lisp_face_attribute): Use signal_error for the
15460 error of invalid fontset.
15461
15462 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
15463 fontset, return Qt.
15464
154652008-02-01 Dave Love <fx@gnu.org>
15466
15467 * unexelf.c (unexec): Make .got handling not SGI-specific.
15468
15469 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
15470
15471 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
15472
15473 * keyboard.c (read_key_sequence): Fix type error.
15474
15475 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
15476 type error.
15477
15478 * fontset.c (fontset_add): Return Lisp_Object.
15479
154802008-02-01 Dave Love <fx@gnu.org>
15481
15482 * charset.h (charset_ordered_list_tick): Declare extern.
15483
154842008-02-01 Kenichi Handa <handa@m17n.org>
15485
15486 The following changes (and some of 2008-02-01 changes of mine) are
15487 for handling syntax, category, and case conversion for unibyte
15488 characters by converting them to multibyte on the fly. With these
15489 changes, we don't have to setup syntax and case tables for unibyte
15490 characters in each language environment.
15491
15492 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
15493 multibyte if necessary.
15494
15495 * bytecode.c (Fbyte_code): Likewise.
15496
15497 * character.h (LEADING_CODE_LATIN_1_MIN)
15498 (LEADING_CODE_LATIN_1_MAX): New macros.
15499 (unibyte_to_multibyte_table): Extern it.
15500 (unibyte_char_to_multibyte): New macro.
15501 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
15502 (CHAR_LEADING_CODE): New macro.
15503 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
15504
15505 * character.c (unibyte_to_multibyte_table): New variable.
15506 (unibyte_char_to_multibyte): Move to character.h and define as macro.
15507 (multibyte_char_to_unibyte): If C is an eight-bit character,
15508 convert it to the corresponding byte value.
15509
15510 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
15511 not 1, signals an error. Update the elements of
15512 unibyte_to_multibyte_table.
15513 (init_charset_once): Initialize unibyte_to_multibyte_table.
15514 (syms_of_charset): Define the charset `iso-8859-1'.
15515
15516 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
15517 as is without converting it to unibyte. In a unibyte buffer,
15518 convert C to multibyte before checking the syntax.
15519
15520 * lisp.h (unibyte_char_to_multibyte): Delete extern.
15521
15522 * minibuf.c (Fminibuffer_complete_word): Use the macro
15523 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
15524
15525 * regex.h (struct re_pattern_buffer): New member target_multibyte.
15526
15527 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
15528 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
15529 that is zero, convert an eight-bit char to multibyte.
15530 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
15531 non-emacs case.
15532 (PATFETCH): Convert an eight-bit char to multibyte.
15533 (HANDLE_UNIBYTE_RANGE): New macro.
15534 (regex_compile): Setup the compiled pattern for multibyte chars
15535 even if the given regex string is unibyte. Use PATFETCH_RAW
15536 instead of PATFETCH in many places. To handle `charset'
15537 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
15538 only for ASCII chars.
15539 (analyse_first) <exactn>: Simplify because the compiled pattern
15540 is multibyte.
15541 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
15542 <charset>: Use CHAR_LEADING_CODE to get leading codes.
15543 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
15544 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
15545 multibyte always 1.
15546 (re_search_2): In emacs, set the locale variable multibyte to 1,
15547 otherwise to 0. New local variable target_multibyte. Check it
15548 to decide the multibyteness of STR1 and STR2. If
15549 target_multibyte is zero, convert unibyte chars to multibyte
15550 before translating and checking fastmap.
15551 (TARGET_CHAR_AND_LENGTH): New macro.
15552 (re_match_2_internal): In emacs, set the locale variable multibyte
15553 to 1, otherwise to 0. New local variable target_multibyte. Check
15554 it to decide the multibyteness of STR1 and STR2. Use
15555 TARGET_CHAR_AND_LENGTH to fetch a character from D.
15556 <charset, charset_not>: If multibyte is nonzero, check fastmap
15557 only for ASCII chars. Call bcmp_translate with
15558 target_multibyte, not with multibyte.
15559 <begline>: Declare the local variable C as `unsigned'.
15560 (bcmp_translate): Change the last arg name to target_multibyte.
15561
15562 * search.c (compile_pattern_1): Don't adjust the multibyteness of
15563 the regexp pattern and the matching target. Set cp->buf.multibyte
15564 to the multibyteness of the regexp pattern. Set
15565 cp->but.target_multibyte to the multibyteness of the matching target.
15566 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
15567 FETCH_STRING_CHAR_ADVANCE.
15568 (Freplace_match): Convert unibyte chars to multibyte.
15569
15570 * syntax.c (char_quoted, back_comment, scan_words)
15571 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
15572 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
15573 unibyte chars to multibyte.
15574 (skip_chars): Delete the arg syntaxp, and move the code for
15575 handling syntaxes to skip_syntaxes. Change callers.
15576 Fix the case that the multibyteness of STRING and the current
15577 buffer doesn't match.
15578 (skip_syntaxes): New function.
15579 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
15580 SINGLE_BYTE_CHAR_P.
15581
155822008-02-01 Kenichi Handa <handa@m17n.org>
15583
15584 * xfaces.c (QCfontset): New variable.
15585 (LFACE_FONTSET): New macro.
15586 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
15587 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
15588 (Finternal_set_lisp_face_attribute)
15589 (Finternal_get_lisp_face_attribute): Handle QCfontset.
15590 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
15591 check also LFACE_FONTSET_INDEX.
15592 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
15593 attrs[LFACE_FONT_INDEX].
15594 (syms_of_xfaces): Intern and staticpro QCfontset.
15595
15596 * dispextern.h (enum lface_attribute_index): New member
15597 LFACE_FONTSET_INDEX.
15598
15599 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
15600
156012008-02-01 Kenichi Handa <handa@m17n.org>
15602
15603 * coding.c (coding_set_destination): Fix coding->destination for
15604 the case converting a region.
15605 (encode_coding_utf_8): Encode eight-bit chars as single byte.
15606 (encode_coding_object): Fix coding->dst_pos and
15607 coding->dst_pos_byte for the case converting a region.
15608
15609 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
15610
15611 * character.h (BYTE8_STRING): New macro.
15612
15613 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
15614
156152008-02-01 Kenichi Handa <handa@m17n.org>
15616
15617 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
15618 characters by octal form.
15619
15620 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
15621
15622 * buffer.h (_fetch_multibyte_char_len): Delete extern.
15623 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
15624 _fetch_multibyte_char_len.
15625 (FETCH_CHAR_AS_MULTIBYTE): New macro.
15626
15627 * casetab.c (set_canon, set_identity, shuffle): Simplify.
15628
15629 * casefiddle.c (casify_object): Simplify. Handle the case that
15630 the case conversion change the byte length.
15631 (casify_region): Likewise.
15632
15633 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
15634
15635 * character.c (_fetch_multibyte_char_len): Delete this variable.
15636 (syms_of_character): Setup Vprintable_chars.
15637
15638 * editfns.c (Fchar_equal): Fix for the unibyte case.
15639 (Finsert_byte): New function.
15640 (syms_of_editfns): Defsubr it.
15641
15642 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
15643 of direct code 0x3ffff.
15644
15645 * search.c (Freplace_match): Fix for the unibyte case.
15646
156472008-02-01 Kenichi Handa <handa@m17n.org>
15648
15649 * lread.c (safe_to_load_p): Fix the logic.
15650
15651 * syntax.c (scan_words): Don't treat characters belonging to
15652 different scripts as constituting a word.
15653
15654 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15655
15656 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
15657
15658 * emacs.c (main): In the case of --unibyte, instead of aborting on
15659 finding non-empty buffer, make it unibyte.
15660
156612008-02-01 Kenichi Handa <handa@m17n.org>
15662
15663 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
15664 to create a fontset.
15665
156662008-02-01 Dave Love <fx@gnu.org>
15667
15668 * character.c (Funibyte_char_to_multibyte): Doc fix.
15669
15670 * xfns.c [HAVE_STDLIB_H]: Fix last change.
15671
156722008-02-01 Kenichi Handa <handa@m17n.org>
15673
15674 * fontset.c (fontset_add): Make the type `int'.
15675 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
15676
15677 * character.c (unibyte_char_to_multibyte)
15678 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
15679 charset_unibyte, not charset_primary.
15680
15681 * charset.h (charset_unibyte): Extern it instead of charset_primary.
15682
15683 * charset.c (charset_unibyte): Rename from charset_primary.
15684 (Funibyte_charset): Rename from Fprimary_charset.
15685 (Fset_unibyte_charset): Rename from Fset_primary_charset.
15686 (syms_of_charset): Adjust for the above changes.
15687
15688 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15689 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15690 it->multibyte_p is zero.
15691
15692 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
15693 Delete extern.
15694
156952008-02-01 Kenichi Handa <handa@m17n.org>
15696
15697 * coding.c (Fdefine_coding_system_internal): Fix category setting
15698 for a coding system of type iso-2022.
15699
157002008-02-01 Kenichi Handa <handa@m17n.org>
15701
15702 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
15703
157042008-02-01 Kenichi Handa <handa@m17n.org>
15705
15706 * syntax.c (Vnext_word_boundary_function_table): New variable.
15707 (next-word-boundary-function-table): Declare it as a Lisp variable
15708 in syms_of_syntax.
15709 (scan_words): Call functions in Vnext_word_boundary_function_table
15710 if any.
15711
15712 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
15713
15714 * fontset.c (fs_load_font): If fontp->charset is not negative,
15715 return fontp without setting its members.
15716
157172008-02-01 Dave Love <fx@gnu.org>
15718
15719 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
15720
15721 * m/sparc.h (HAVE_ALLOCA): Delete.
15722
15723 * s/irix6-5.h: Don't include strings.h.
15724 (bcopy, bzero, bcmp): Don't undef.
15725
15726 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
15727
15728 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
15729 (TIOCSIGSEND): Don't test IRIX6.
15730 (bcopy, bzero, bcmp): Define conditionally.
15731
157322008-02-01 Kenichi Handa <handa@m17n.org>
15733
15734 * buffer.c (Qas, Qmake, Qto): New variables.
15735 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
15736 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
15737
15738 * callproc.c (Fcall_process): Don't call insert_1_both directly if
15739 we are inserting a process output into a multibyte buffer.
15740
15741 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
15742 multibyte_char_to_unibyte.
15743
15744 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
15745 by the primary charset, make it eight-bit char.
15746 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
15747
15748 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
15749 (charset_8_bit__control, charset_8_bit_graphic)
15750 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
15751 (define_charset_internal): New function.
15752 (syms_of_charset): Call define_charset_internal for pre-defined
15753 charsets.
15754
15755 * charset.h (charset_8_bit): Extern it.
15756
15757 * coding.c (make_conversion_work_buffer): Adjust for the change
15758 of Fset_buffer_multibyte.
15759 (encode_coding_raw_text): Increment p0 in the loop.
15760
15761 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
15762
15763 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
15764 for the change of Fset_buffer_multibyte.
15765
15766 * fns.c (Fstring_to_multibyte): New function.
15767 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
15768
157692008-02-01 Dave Love <fx@gnu.org>
15770
15771 * xfns.c (x_put_x_image): Declare args.
15772
15773 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
15774 (try_font_list): Declare an arg.
15775
15776 * xdisp.c (message2_nolog, set_message): Declare an arg.
15777
15778 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
15779
15780 * syntax.c (scan_sexps_forward): Declare an arg.
15781
15782 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15783 Declare an arg.
15784
15785 * lisp.h (Fnew_fontset): Declare.
15786
15787 * keymap.c (push_key_description): Call CHARACTERP correctly.
15788
15789 * fontset.c (fontset_add): Declare args. Call make_number correctly.
15790 (face_for_char): Delete unused vars.
15791 (Fset_fontset_font): Doc fix. Delete unused vars.
15792
15793 * doc.c (Fsubstitute_command_keys): Delete unused vars.
15794
15795 * composite.c (update_compositions): Declare arg.
15796
15797 * cm.c (calccost, cmgoto): Declare args.
15798
15799 * charset.c: Remove `emacs' conditional. Doc fixes.
15800 (map_char_table_for_charset): Declare.
15801
15802 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
15803
15804 * ccl.c: Remove `emacs' conditional.
15805
158062008-02-01 Kenichi Handa <handa@m17n.org>
15807
15808 The following changes are to allow specifying multiple font
15809 patterns for a character range (specified by script or charset).
15810
15811 * Makefile.in (abbrev.o): Depend on syntax.h.
15812 (xfaces.o): Depend on charset.h.
15813
15814 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
15815 SINGLE_BYTE_CHAR_P.
15816
15817 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
15818
15819 * character.h (Vchar_script_table): Extern it.
15820
15821 * character.c (Vscript_alist): Delete.
15822 (Vchar_script_table, Qchar_script_table): New variable.
15823 (syms_of_character): Declare Vchar_script_table as a lisp variable
15824 and initialize it.
15825
15826 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
15827 have property char-table-extra-slots, make no extra slot.
15828
15829 * dispextern.h (struct face): Delete member `charset'.
15830 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
15831 SINGLE_BYTE_CHAR_P.
15832 (choose_face_font, lookup_non_ascii_face, font_name_registry):
15833 Add prototypes.
15834 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
15835 (generate_ascii_font_name): Rename from generate_ascii_font.
15836
15837 * fontset.h (get_font_repertory_func): New prototype.
15838 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
15839 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
15840
15841 * fontset.c (Qprepend, Qappend): New variables.
15842 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
15843 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
15844 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
15845 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
15846 (fontset_ref_and_range, fontset_add, reorder_font_vector)
15847 (load_font_get_repertory): New functions.
15848 (fontset_set): Delete.
15849 (fontset_face): New arg FACE. Return face ID, not face.
15850 Complete re-write to handle new fontset structure. Change caller.
15851 (free_face_fontset): Use ASET istead of AREF (X) = Y.
15852 (face_for_char): Don't call lookup_face.
15853 (make_fontset_for_ascii_face): New arg FACE.
15854 (fs_load_font): New arg CHARSET_ID. Don't check
15855 Vfont_encoding_alist here.
15856 (find_font_encoding): New function.
15857 (list_fontsets): Use STRINGP, not ! NILP.
15858 (accumulate_script_ranges): New function.
15859 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
15860 re-written to handle new fontset structure.
15861 (Ffontset_font): Return a copy of element.
15862 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
15863 docstring of font-encoding-alist.
15864
15865 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
15866 (Fset_fotset_font): Fix arguments to 5.
15867
15868 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
15869
15870 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
15871 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15872 (highlight_trailing_whitespace): Adjust for the change of
15873 lookup_named_face.
15874
15875 * xfaces.c: Include charset.h.
15876 (load_face_font): Delete argument C. Change caller.
15877 (generate_ascii_font_name): Rename from generate_ascii_font.
15878 (font_name_registry): New function.
15879 (cache_face): Store ascii faces before non-ascii faces in buckets.
15880 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
15881 Lookup only ascii faces.
15882 (lookup_non_ascii_face): New function.
15883 (lookup_named_face): Delete argument C. Change caller.
15884 (lookup_derived_face): Delete argument C. Change caller.
15885 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
15886 a string, just call font_list with it.
15887 (choose_face_font): Delete arguments FACE and C. New arg
15888 FONT_SPEC. Change caller.
15889 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
15890 Change caller.
15891 (realize_non_ascii_face): New function.
15892 (realize_x_face): Call load_face_font here.
15893 (realize_tty_face): Delete argument C. Change caller.
15894 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
15895 get a face ID.
15896 (dump_realized_face): Don't print charset of FACE.
15897
15898 * xfns.c (x_set_font): Always call x_new_fontset and
15899 store_frame_parameter.
15900 (Fx_create_frame): Call x_new_fontset, not x_new_font.
15901 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
15902
15903 * xterm.h (x_get_font_repertory): Extern it.
15904
15905 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
15906 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
15907 it->multibyte_p is zero.
15908 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
15909 (x_new_fontset): If FONTSETNAME doesn't match any existing
15910 fontsets, create a new one.
15911 (x_get_font_repertory): New function.
15912
159132008-02-01 Kenichi Handa <handa@m17n.org>
15914
15915 * coding.c (Ffind_coding_systems_region_internal): Detect an
15916 ASCII only string correctly.
15917
15918 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
15919 version is 0.
15920
159212008-02-01 Kenichi Handa <handa@m17n.org>
15922
15923 * lread.c: Include "coding.h".
15924 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
15925 (load_each_byte, unread_char): New variables.
15926 (readchar_backlog): Delete.
15927 (readchar): Return a character unless load_each_byte is nonzero.
15928 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
15929 cons. If unread_char is not -1, simply return it.
15930 (unreadchar): Handle the case that readcharfun is
15931 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
15932 (read_multibyte): Delete.
15933 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
15934 (read_emacs_mule_char): New functions.
15935 (Fload): Even if the file doesn't have the extension ".elc", if
15936 safe_to_load_p returns a positive version number, assume that the
15937 file contains bytecompiled code. If the version is less than 22,
15938 load the file while decoding multibyte sequences by emacs-mule.
15939 (readevalloop): Don't use readchar_backlog.
15940 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
15941 (Fread_from_string): Pay attention to the case that STREAM is a cons.
15942 (read_escape): Delete the arg BYTEREP.
15943 (read1): Set load_each_byte to 1 temporarily while handling
15944 #@NUMBER. Don't call read_multibyte.
15945 (read_vector): Call Fread with a cons. If readcharfun is
15946 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
15947 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
15948 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
15949 and Qload_force_doc_strings.
15950
159512008-02-01 Kenichi Handa <handa@m17n.org>
15952
15953 * xdisp.c (face_before_or_after_it_pos): Call
15954 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
15955
159562008-02-01 Kenichi Handa <handa@m17n.org>
15957
15958 * character.h (TRAILING_CODE_P): New macro.
15959 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
15960 (string_char_with_unification): Fix prototype.
15961 (Vscript_alist): Extern it.
15962
15963 * character.c (Vscript_alist): New variable.
15964 (string_char_with_unification, str_as_unibyte)
15965 (string_escape_byte8): Add `const' to local variables.
15966 (syms_of_character): Declare script-alist as a Lisp variable.
15967
15968 * charset.h (Vcharset_ordered_list): Extern it.
15969 (charset_ordered_list_tick): Extern it.
15970 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
15971 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
15972 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
15973 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
15974 (Funify_charset): Adjust for the change of Funify_charset.
15975
15976 * charset.c (charset_ordered_list_tick): New variable.
15977 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
15978 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
15979 deunify intead of unify a charset.
15980 (string_xstring_p): Add `const' to local variables.
15981 (find_charsets_in_text): Add `const' to arguments and local variables.
15982 (encode_char): Adjust for the change of Funify_charset. Fix
15983 detecting of invalid code.
15984 (Fset_charset_priority): Increment charset_ordered_list_tick.
15985 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
15986 and TO_CODE.
15987
15988 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
15989 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
15990 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
15991 (decode_coding_ccl, consume_chars)
15992 (Ffind_coding_systems_region_internal)
15993 (Fcheck_coding_systems_region): Add `const' to local variables.
15994
15995 * print.c (print_object): Use octal form for printing the
15996 contents of a bool vector.
15997
159982008-02-01 Dave Love <fx@gnu.org>
15999
16000 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16001 <version == 20>: Refuse to load.
16002
160032008-02-01 Dave Love <fx@gnu.org>
16004
16005 * fns.c: Move coding.h.
16006 (Qcodeset, Qdays, Qmonths): New.
16007 (concat): Use CHARACTERP instead of INTEGERP.
16008 (Flocale_codeset): Delete.
16009 (Flanginfo): New function.
16010 (syms_of_fns): Change accordingly.
16011
16012 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16013
160142008-02-01 Dave Love <fx@gnu.org>
16015
16016 * casetab.c (init_casetab_once, init_casetab_once): Fix
16017 CHAR_TABLE_SET call.
16018
16019 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16020
16021 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16022
16023 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16024 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16025 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16026
16027 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16028
16029 * coding.c (ENCODE_DESIGNATION, decode_eol)
16030 (make_conversion_work_buffer, code_conversion_restore)
16031 (Fdefine_coding_system_internal): Convert Lisp types.
16032 (code_conversion_restore): Use EQ, not ==.
16033 (Fencode_coding_string): Fix code_convert_string call.
16034
16035 * coding.h (code_convert_region): Fix prototype.
16036
16037 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16038
16039 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16040 (Ffontset_info): Convert Lisp types.
16041
16042 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16043
16044 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16045
16046 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16047
16048 * chartab.c: Include "...h", not <...h> in some cases.
16049
16050 * callproc.c (Fcall_process): Remove unused variables.
16051
160522008-02-01 Dave Love <fx@gnu.org>
16053
16054 * coding.c (Fset_coding_system_priority): Allow null arg list.
16055
160562008-02-01 Dave Love <fx@gnu.org>
16057
16058 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16059 (Fself_insert_and_exit): Use CHARACTERP.
16060
16061 * callproc.c (Fcall_process): Remove unused vars.
16062
16063 * xterm.c (XTread_socket): Add extra dead keysyms.
16064
16065 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16066
16067 * dispextern.h: Remove prototypes for redraw_frame,
16068 redraw_garbaged_frames.
16069
16070 * cmds.c (Fself_insert_command): Use CHARACTERP.
16071
16072 * chartab.c (make_sub_char_table): Remove unused var.
16073 (Fset_char_table_default, Fmap_char_table): Doc fix.
16074
16075 * keymap.c (access_keymap): Remove generic char code.
16076 (push_key_description): Use CHARACTERP.
16077
160782008-02-01 Dave Love <fx@gnu.org>
16079
16080 * charset.c: Doc fixes.
16081 (Funify_charset): Extra checking.
16082
160832008-02-01 Dave Love <fx@gnu.org>
16084
16085 * lread.c: Remove some unused variables.
16086 (safe_to_load_p): If safe, return the magic number version byte.
16087 (Fload): Maybe use load-with-code-conversion.
16088
160892008-02-01 Kenichi Handa <handa@m17n.org>
16090
16091 * category.c (Fmodify_category_entry): Don't modify the contents
16092 of category_set for characters out of the range. Avoid
16093 unnecessary modification.
16094
16095 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16096 Vchar_unify_table. The default value of the table is now nil.
16097
16098 * character.c (syms_of_character): Setup Vchar_width_table for
16099 eight-bit-control and raw-byte chars.
16100
16101 * charset.h (enum define_charset_arg_index): Delete
16102 charset_arg_parents and add charset_arg_subset and
16103 charset_arg_superset.
16104 (enum charset_attr_index): Delete charset_parents and add
16105 charset_subset and charset_superset.
16106 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16107 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16108 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16109 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16110 (CHARSET_SUPERSET): New macros.
16111 (charset_work): Extern it.
16112 (ENCODE_CHAR): Use charset_work.
16113 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16114 (map_charset_chars): Extern it.
16115
16116 * charset.c (load_charset_map): Set the default value of encoder
16117 and deunifier char-tables to nil.
16118 (map_charset_chars): Change argument. Change callers. Use
16119 map_char_table_for_charset instead of map_char_table.
16120 (Fmap_charset_chars): New optional args from_code and to_code.
16121 (Fdefine_charset_internal): Adjust for the change of
16122 `define-charset' (:parents -> :subset or :superset).
16123 (charset_work): New variable.
16124 (encode_char, syms_of_charset): Adjust for the change of
16125 Fdefine_charset_internal.
16126 (Ffind_charset_string): Setup the vector `charsets' correctly.
16127
16128 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16129 the previous change.
16130 (char_table_ref_and_range): Adjust for the above change.
16131 (map_sub_char_table_for_charset): New function.
16132 (map_char_table_for_charset): New function.
16133
16134 * keymap.c (describe_vector): Handle a char-table directly here.
16135 (describe_char_table): Delete.
16136
16137 * lisp.h (map_charset_chars): Delete.
16138
161392008-02-01 Dave Love <fx@gnu.org>
16140
16141 * fns.c (count_combining): Comment out (unused).
16142 (Flocale_codeset): New.
16143 (syms_of_fns): Defsubr it.
16144
16145 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16146 (size_t): Remove.
16147
161482008-02-01 Dave Love <fx@gnu.org>
16149
16150 * Makefile.in (chartab.o): Depend on charset.h.
16151
161522008-02-01 Kenichi Handa <handa@m17n.org>
16153
16154 * character.c (syms_of_character): Set the default value of
16155 Vprintable_chars to Qnil.
16156
161572008-02-01 Dave Love <fx@gnu.org>
16158
16159 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16160
161612008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * charset.c (load_charset_map): Handle the case that from < to
16164 correctly.
16165
16166 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16167 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16168 Pay attention to raw-8-bit chars.
16169
161702008-02-01 Kenichi Handa <handa@m17n.org>
16171
16172 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16173 It is not bytecompiled now.
16174
16175 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16176 (charset_jisx0208): New variables.
16177 (Fdefine_charset_internal): Setup them if appropriate.
16178 (init_charset_once): Initialize them to -1.
16179
16180 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16181 (charset_jisx0208): Extern them.
16182
16183 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16184 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16185 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16186 (setup_iso_safe_charsets): Fix arguments to Fassq.
16187 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16188 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16189 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16190 (encode_coding_iso_2022): Change the 1st arg to
16191 ENCODE_ISO_CHARACTER to a variable.
16192
161932008-02-01 Kenichi Handa <handa@m17n.org>
16194
16195 * charset.h (enum define_charset_arg_index): New enums
16196 charset_arg_min_code and charset_arg_max_code.
16197 (struct charset): New member char_index_offset.
16198
16199 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16200 Take charset->char_index_offset into account.
16201 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16202 args[charset_arg_max_code]. Setup charset.char_index_offset.
16203 (syms_of_charset): Fix args to Fdefine_charset_internal.
16204
162052008-02-01 Dave Love <fx@gnu.org>
16206
16207 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16208
162092008-02-01 Dave Love <fx@gnu.org>
16210
16211 * coding.c: Doc fixes.
16212 (Fcoding_system_aliases): Fix return value.
16213 (Qmac): Remove (duplicated) definition.
16214
162152008-02-01 Dave Love <fx@gnu.org>
16216
362654a6
JB
16217 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16218 New functions.
aac0c6e3
MR
16219
16220 * character.c (Fstring): Doc fix.
16221
16222 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16223
362654a6 16224 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16225 (font-encoding-alist): Doc fix.
16226
162272008-02-01 Dave Love <fx@gnu.org>
16228
16229 * term.c (costs_set): Declare static, non-initialized for pcc.
16230 (encode_terminal_code): Remove unused var.
16231
16232 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16233 for K&R.
16234
16235 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16236
16237 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16238 (suffixes): Move out of make_subsidiaries for K&R.
16239
16240 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16241
16242 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16243
162442008-02-01 Dave Love <fx@gnu.org>
16245
16246 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16247
16248 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16249
162502008-02-01 Yong Lu <lyongu@asia-infonet.com>
16251
16252 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16253
16254 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16255
162562008-02-01 Kenichi Handa <handa@m17n.org>
16257
16258 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16259 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16260
162612008-02-01 Kenichi Handa <handa@m17n.org>
16262
16263 * coding.c (decode_coding_charset): Adjust for the change of
16264 Fdefine_coding_system_internal.
16265 (Fdefine_coding_system_internal): For a coding system of
16266 `charset' type, store a list of charset IDs in
16267 `charset_attr_charset_valids' element of coding attributes.
16268
162692008-02-01 Kenichi Handa <handa@m17n.org>
16270
16271 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16272 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16273 caller. Handle 2-byte and 3-byte charsets correctly.
16274 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16275 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16276 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16277 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16278 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16279 sequence.
16280 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16281 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16282 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16283 and alt&rule composition.
16284 (decode_coding_iso_2022): Handle composition correctly.
16285 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16286
16287 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16288 re-defining a charset. If the charset has :emacs-mule-id, setup
16289 emacs_mule_bytes.
16290 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16291
162922008-02-01 Kenichi Handa <handa@m17n.org>
16293
16294 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16295 (encode_coding_big5, encode_coding_charset): If coding requires safe
16296 encoding, produce a character specified by
16297 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16298
162992008-02-01 Dave Love <fx@gnu.org>
16300
16301 * xterm.c (XSetIMValues): Declare.
16302
16303 * process.c: Conditionally include sys/wait.h, pty.h.
16304
16305 * print.c (print_object): Fix print format for 64-bit systems.
16306
16307 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16308
16309 * buffer.c (emacs_strerror): Declare.
16310
16311 * fontset.c (Fclear_face_cache): Declare.
16312 (accumulate_font_info): Comment-out (unused).
16313 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16314 variables.
16315
16316 * character.h (string_escape_byte8): Declare.
16317
16318 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16319 unused vars.
16320 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16321 (Fmap_charset_chars): Doc fix.
16322
16323 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16324 (Fset_coding_system_priority, Fset_coding_system_priority)
16325 (Fdefine_coding_system_internal): Doc fix.
16326
163272008-02-01 Dave Love <fx@gnu.org>
16328
16329 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16330
163312008-02-01 Kenichi Handa <handa@m17n.org>
16332
16333 * character.c (string_escape_byte8): Make multibyte string with
16334 correct size.
16335
16336 * charset.c (Fmake_char): Delete unnecessary code.
16337
163382008-02-01 Kenichi Handa <handa@m17n.org>
16339
16340 * xfns.c (x_encode_text): Allocate coding.destination here, and
16341 call encode_coding_object with dst_object Qnil.
16342
16343 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16344 multibyte form correctly.
16345
16346 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16347 against Vfont_encoding_alist.
16348
16349 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16350 handling of charset list.
16351 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16352 (decode_coding_object): Move point to coding->dst_pos before
16353 calling post-read-conversion function.
16354 (encode_coding_object): Give correct arguments to
16355 pre-write-conversion. Ignore the return value of
16356 pre-write-conversion function. Pay attention to the case that
16357 pre-write-conversion changes the current buffer. If dst_object is
16358 Qt, even if coding->src_bytes is zero, allocate at least one byte
16359 to coding->destination.
16360
16361 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16362
16363 * charset.c (Fmake_char): Make it more backward compatible.
16364 (Fmap_charset_chars): Fix docstring.
16365
163662008-02-01 Dave Love <fx@gnu.org>
16367
16368 * coding.c: Doc fixes.
16369 (Fdefine_coding_system_alias): Use names, not symbols, in
16370 coding-system-alist.
16371
163722008-02-01 Kenichi Handa <handa@m17n.org>
16373
16374 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16375 of calling free_realized_face.
16376
163772008-02-01 Yong Lu <lyongu@asia-infonet.com>
16378
16379 * charset.c (read_hex): Don't treat SPC as a comment starter.
16380 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16381 (Fdecode_char): Fix typo.
16382
163832008-02-01 Kenichi Handa <handa@m17n.org>
16384
16385 * charset.h (struct charset): New member `code_space_mask'.
16386
16387 * coding.c (coding_set_source): Delete the local variable beg_byte.
16388 (encode_coding_charset, Fdefine_coding_system_internal):
16389 Delete the local variable charset.
16390 (Fdefine_coding_system_internal): Setup
16391 attrs[coding_attr_charset_valids] correctly.
16392
16393 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16394 member to check if CODE is valid or not.
16395 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16396 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16397 is within the range of charset->min_code and carset->max_code.
16398
163992008-02-01 Dave Love <fx@gnu.org>
16400
16401 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16402
16403 * dispextern.h (generate_ascii_font): Fix return type.
16404
16405 * xfaces.c (generate_ascii_font): Fix arg declaration.
16406
16407 * coding.c (coding_inherit_eol_type)
16408 (Fset_terminal_coding_system_internal)
16409 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
16410
164112008-02-01 Kenichi Handa <handa@m17n.org>
16412
16413 * coding.c (decode_coding_charset, encode_coding_charset): Handle
16414 multiple charsets correctly.
16415
164162008-02-01 Kenichi Handa <handa@m17n.org>
16417
16418 * search.c (boyer_moore): Fix handling of multibyte character
16419 translation.
16420
16421 * xdisp.c (display_mode_element): When the variable `elt' is
16422 changed, update `this' and `lisp_string'.
16423
164242008-02-01 Kenichi Handa <handa@m17n.org>
16425
16426 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
16427
16428 * callproc.c (Fcall_process): Be sure to give the current buffer
16429 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
16430
16431 * charset.c (struct charset_map_entries): New struct.
16432 (load_charset_map): Rename from parse_charset_map. New args
16433 entries and n_entries. Change caller.
16434 (load_charset_map_from_file): Rename from load_charset_map.
16435 Change caller. New arg control_flag. Call load_charset_map at
16436 the tail.
16437 (load_charset_map_from_vector): New function.
16438 (Fdefine_charset_internal): Setup charset.compact_codes_p.
16439 (encode_char): If the charset is compact, change a character index
16440 to a code point.
16441
16442 * coding.c (coding_alloc_by_making_gap): Check the case that the
16443 source and destination are the same correctly.
16444 (decode_coding_raw_text): Set coding->consumed_char and
16445 coding->consumed to 0.
16446 (produce_chars): If coding->chars_at_source is nonzero, update
16447 coding->consumed_char and coding->consumed before calling
16448 alloc_destination.
16449 (Fdefine_coding_system_alias): Register ALIAS in
16450 Vcoding_system_alist.
16451 (syms_of_coding): Define `no-conversion' coding system at the tail.
16452
16453 * fileio.c (Finsert_file_contents): Set coding_system instead of
16454 val. If the current buffer is multibyte, always call
16455 decode_coding_gap.
16456
16457 * xfaces.c (try_font_list): Give higher priority to fontset's
16458 family than face's family.
16459
164602008-02-01 Kenichi Handa <handa@m17n.org>
16461
16462 * callproc.c (Fcall_process): Be sure to give the current buffer
16463 to decode_coding_c_string.
16464
16465 * xfaces.c (try_font_list): Give a family specified in a fontset
16466 higher priority than a family specified in a face.
16467
164682008-02-01 Kenichi Handa <handa@m17n.org>
16469
16470 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
16471 Fix arguments to insert_from_buffer.
16472
16473 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
16474
164752008-02-01 Kenichi Handa <handa@m17n.org>
16476
16477 * coding.c (produce_chars): Set the variable `multibytep' correctly.
16478 (decode_coding_gap): Set coding->dst_multibyte correctly.
16479
164802008-02-01 Kenichi Handa <handa@m17n.org>
16481
16482 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
16483 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
16484 (encode_coding_utf_16): Substitute coding->default_char for
16485 non-Unicode characters.
16486 (decode_coding): Don't call record_insert here.
16487 (setup_coding_system): Initialize `surrogate' of
16488 coding->spec.utf_16 to 0.
16489 (EMIT_ONE_BYTE): Fix for multibyte case.
16490
16491 * insdel.c (insert_from_gap): Call record_insert.
16492
164932008-02-01 Kenichi Handa <handa@m17n.org>
16494
16495 * casefiddle.c (casify_region): Fix multibyte case.
16496
16497 * character.c (c_string_width): Add return type `int'.
16498 (char_string_with_unification): Delete arg ADVANCED.
16499
16500 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
16501 (CHAR_STRING): Adjust for the change of char_string_with_unification.
16502 (CHAR_STRING_ADVANCE): Make it do-while statement.
16503
16504 * chartab.c (sub_char_table_set_range): Optimize for the case
16505 DEPTH == 3. Add workaround code for a GCC optimization bug.
16506
16507 * charset.c (parse_charset_map): Remove an unused variable.
16508
16509 * coding.c: Delete unused variables.
16510
16511 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
16512 earlier. If inserted is zero and the coding system doesn't
16513 require flushing, don't call decode_coding_gap.
16514
16515 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
16516
165172008-02-01 Kenichi Handa <handa@m17n.org>
16518
16519 The following changes are for using Unicode as an internal
16520 character model, and use UTF-8 format for buffer/string
16521 representation.
16522
16523 * .gdbinit (xchartable): Adjust for the change of char table structure.
16524 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
16525
16526 * Makefile.in (obj): Add character.o and chartab.o.
16527 (lisp, shortlisp): Remove utf-8.elc.
16528 (*.o): For many files, change dependency on charset.h to
16529 character.h, and add dependency on character.h.
16530 (character.o, chartab.o): New targets.
16531
16532 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
16533 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
16534 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
16535 of "charset.h".
16536
16537 * dired.c, filelock.c: Include "character.h".
16538
16539 * alloc.c: Include "character.h" instead of "charset.h".
16540 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
16541 (syms_of_alloc): Remove defsubr for Smake_char_table.
16542
16543 * buffer.c: Include "character.h" instead of "charset.h", don't
16544 include "coding.h".
16545 (Fset_buffer_multibyte): Adjust for UTF-8.
16546
16547 * buffer.h: EXFUN Fbuffer_live_p.
16548
16549 * callproc.c: Include "character.h" instead of "charset.h".
16550 (Fcall_process): Big change for the new code-conversion APIs.
16551
16552 * casetab.c: Include "character.h" instead of "charset.h".
16553 (set_canon, set_identity, shuffle): Adjust for the new
16554 map_char_table spec.
16555 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
16556 accessing the char table structure.
16557
16558 * chartab.c: New file that implements char table.
16559
16560 * category.c: Include "character.h".
16561 (copy_category_entry): New function.
16562 (copy_category_table): Call map_char_table and copy_category_entry.
16563 (Fmake_category_table): Initialize all top-level slots.
16564 (char_category_set): New function.
16565 (modify_lower_category_set): Delete.
16566 (Fmodify_category_entry): Call char_table_ref_and_range.
16567
16568 * category.h (CATEGORY_SET): Just call char_category_set.
16569
16570 * ccl.c: Include "character.h".
16571 (Qccl, Qcclp): New variables.
16572 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
16573 it's less than 256.
16574 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
16575 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
16576 and DST type.
16577 (ccl_driver): Change types of argument, adjust code accordingly.
16578 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
16579 ccl_driver.
16580 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
16581
16582 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
16583 New members src_multibyte, dst_multibyte, consumed, and produced.
16584 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
16585 (CODING_SPEC_CCL_PROGRAM): New macro.
16586 (ccl_driver): Update prototype.
16587 (Qccl, Qcclp, Fccl_program_p): Extern them.
16588 (CHECK_CCL_PROGRAM): New macro.
16589
16590 * character.c, character.h, chartab.c: New files.
16591
16592 * charset.c: Mostly re-written. Move character and multibyte sequence
16593 handling codes to character.c.
16594
16595 * charset.h: Mostly re-written. Move character and multibyte sequence
16596 handling codes to character.h.
16597
16598 * coding.c, coding.h: Mostly re-written.
16599
16600 * composite.c: Include "character.h" instead of "charset.h".
16601 (CHAR_WIDTH): Move to character.h.
16602 (HASH_KEY, HASH_VALUE): Delete.
16603
16604 * composite.h (enum composition_method): Change order of enumeration
16605 symbols.
16606
16607 * data.c: Include "character.h" instead of "charset.h".
16608 (Faref): Call CHAR_TABLE_REF for a char table.
16609 (Faset): Call CHAR_TABLE_SET for a char table.
16610
16611 * dispextern.h (free_realized_face, check_face_attribytes)
16612 (generate_ascii_font): Extern them.
16613 (free_realized_multibyte_face): Delete extern.
16614
16615 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
16616 table structure.
16617
16618 * editfns.c: Include "character.h" instead of "charset.h".
16619 (Fchar_to_string): Always call CHAR_STRING.
16620
16621 * emacs.c (main): Call init_charset_once, init_charset,
16622 syms_of_chartab, and syms_of_character.
16623
16624 * fileio.c: Include "character.h" instead of "charset.h".
16625 (Finsert_file_contents): Big change for the new code-conversion API.
16626 (choose_write_coding_system, Fwrite_region): Likewise.
16627 (build_annotations_2): Delete.
16628 (e_write): Big change for the new code-conversion API.
16629
16630 * fns.c: Include "character.h" instead of "charset.h".
16631 (copy_sub_char_table): Move to chartab.c.
16632 (Fcopy_sequence): Call copy_char_table for a char table.
16633 (concat): Delete codes calling count_multibyte.
16634 (string_char_to_byte, string_byte_to_char): Adjust for the new
16635 multibyte form.
16636 (internal_equal): Adjust for the change of char table structure.
16637 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
16638 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
16639 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
16640 (char_table_translate, optimize_sub_char_table)
16641 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
16642 chartab.c.
16643 (char_table_ref_and_index): Delete.
16644 (HASH_KEY, HASH_VALUE): Move to lisp.h.
16645 (Fmd5): Call preferred_coding_system instead of accessing
16646 Vcoding_category_list. Adjust for the new code-conversion API.
16647 (syms_of_fns): Move defsubr for char table related functions to
16648 chartab.c.
16649
16650 * fontset.c: Mostly re-written.
16651
16652 * fontset.h (struct font_info): Change type of the member encoding_type.
16653 (enum FONT_SPEC_INDEX): New enum.
16654 (fontset_font_pattern, fs_load_font): Update prototype.
16655 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
16656
16657 * indent.c: Include "character.h" instead of "charset.h".
16658 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
16659
16660 * insdel.c: Include "character.h" instead of "charset.h".
16661 (copy_text): Don't refer to Vnonascii_translation_table.
16662 (insert_from_gap): New function.
16663
16664 * keyboard.c: Include "character.h" instead of "charset.h".
16665 (command_loop_1): Never call direct_output_forward_char before
16666 a non-ASCII character.
16667 (read_char): If Vkeyboard_translate_table is a char table, always
16668 translate a character.
16669
16670 * keymap.c: Include "character.h".
16671 (store_in_keymap): Handle the case that IDX is a cons.
16672 (Fdefine_key): Handle the case that KEY is a cons and the car part
16673 is also a cons (range).
16674 (push_key_description): Adjust for the new character code.
16675 (describe_vector): Call describe_char_table for a char table.
16676 (describe_char_table): New function.
16677
16678 * keymap.h (describe_char_table): Extern it.
16679
16680 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
16681 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
16682 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
16683 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
16684 Delete.
16685 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
16686 structure.
16687 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
16688 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
16689 (CHARTAB_SIZE_BITS_3): New macros.
16690 (chartab_size): Extern it.
16691 (struct Lisp_Char_Table): Re-design.
16692 (struct Lisp_Sub_Char_Table): New structure.
16693 (HASH_KEY, HASH_VALUE): Move from fns.c.
16694 (CHARACTERBITS): Define as 22.
16695 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
16696 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
16697 (GC_SUB_CHAR_TABLE_P): New macro.
16698 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
16699 (code_convert_string_norecord): Deleted extern.
16700 (init_character_once, syms_of_character, init_charset)
16701 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
16702
16703 * lread.c: Include "character.h".
16704 (read_multibyte): New arg NBYTES.
16705 (read_escape): Change the meaning of returned *BYTEREP.
16706 (to_multibyte): Delete.
16707 (read1): Adjust the handling of char table and string.
16708
16709 * print.c: Include "character.h" instead of "charset.h".
16710 (print_string): Convert 8-bit raw bytes to octal form by
16711 string_escape_byte8.
16712 (print_object): Adjust for the new multibyte form. Print 8-bit
16713 raw bytes always in octal form. Handle sub char table correctly.
16714
16715 * process.c: Include "character.h" instead of "charset.h".
16716 (read_process_output, send_process): Adjust for the new
16717 code-conversion API.
16718
16719 * puresize.h (BASE_PURESIZE): Increase.
16720
16721 * regex.c: Include "character.h" instead of "charset.h".
16722 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
16723 (regex_compile): Accept a range whose starting and ending
16724 character have different leading bytes.
16725 (analyse_first): Adjust for the above change.
16726
16727 * search.c: Include "character.h" instead of "charset.h".
16728 (search_buffer, boyer_moore): Adjust for the new multibyte form.
16729 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
16730
16731 * syntax.c: Include "character.h" instead of "charset.h".
16732 (syntax_parent_lookup): Delete.
16733 (Fmodify_syntax_entry): Accept a cons as CHAR.
16734 (skip_chars): Adjust for the new multibyte form.
16735 (init_syntax_once): Call char_table_set_range instead of directly
16736 accessing the structure of a char table.
16737
16738 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
16739 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
16740 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
16741 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
16742
16743 * term.c: Include "buffer.h" and "character.h".
16744 (encode_terminal_code, write_glyphs): Adjust for the new
16745 code-conversion API.
16746 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
16747
16748 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
16749
16750 * xdisp.c: Include "character.h".
16751 (get_next_display_element): Adjust for the new multibyte form.
16752 (disp_char_vector): Adjust for the new char table structure.
16753 (decode_mode_spec_coding): Adjust for the new structure of
16754 coding system.
16755 (decode_mode_spec): Adjust for the new code-conversion API.
16756
16757 * xfaces.c: Include "character.h" instead of "charset.h".
16758 (load_face_font): Adjust for the change of choose_face_font and
16759 FS_LOAD_FONT.
16760 (generate_ascii_font): New function.
16761 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
16762 (set_font_frame_param): Adjust for the change of choose_face_font.
16763 (free_realized_face): Make it public.
16764 (free_realized_faces_for_fontset): Rename from
16765 free_realized_multibyte_face. Free also faces realized for ASCII.
16766 (choose_face_font): Change arguments. Adjust for the change of
16767 fontset_font_pattern and FS_LOAD_FONT.
16768
16769 * xfns.c: Include "character.h".
16770 (x_encode_text): Adjust for the new code-conversion API.
16771
16772 * xselect.c: Don't include "charset.h".
16773 (selection_data_to_lisp_data): Adjust for the new code conversion API.
16774
16775 * xterm.c: Include "character.h".
16776 (x_encode_char): New argument CHARSET. Change caller.
16777 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
16778 Call ENCODE_CHAR instead of SPLIT_CHAR.
16779 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
16780 CHAR_WIDTH instead of CHARSET_WIDTH.
16781 (XTread_socket): Adjust for the new code-conversion API.
16782 (x_new_font): Adjust for the change of FS_LOAD_FONT.
16783 (x_load_font): Adjust for the change of struct font.
16784
167852008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16786
16787 * xfaces.c (face_at_buffer_position): Remove unused vars.
16788
167892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16790
16791 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
16792 Fix overflow checking.
16793
167942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
16795
16796 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
16797 Cancel previous change.
16798
167992008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16800
16801 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
16802 ccl->eight_bit_control. Fix check for buffer overflow.
16803 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
16804 (ccl_driver): Initialize extra_bytes to 0.
16805
168062008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
16807
16808 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
16809 return it ORed with ctrl_modifier.
16810
168112008-01-29 Miles Bader <miles@gnu.org>
16812
16813 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
16814
168152008-01-28 Jason Rumney <jasonr@gnu.org>
16816
16817 * w32.c (stat): Don't double check for networked drive.
16818
168192008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
16820
16821 * window.c (run_window_configuration_change_hook): New function.
16822 Code extracted from set_window_buffer. Set the selected frame.
16823 (set_window_buffer): Use it.
16824 * window.h (run_window_configuration_change_hook): Declare.
16825 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
16826
16827 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
16828
168292008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
16830
16831 * Makefile.in: Remove references to unused macros.
16832
168332008-01-26 Eli Zaretskii <eliz@gnu.org>
16834
16835 * w32.c (g_b_init_get_sid_sub_authority)
16836 (g_b_init_get_sid_sub_authority_count): New static variables.
16837 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
16838 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
16839 (init_user_info): Use them to retrieve uid and gid.
16840 Use 500/513, the Windows defaults, as Administrator's uid/gid.
16841 (fstat): Use pw_uid and pw_gid from the_passwd structure for
16842 st_uid and st_gid of the file.
16843
168442008-01-26 Jason Rumney <jasonr@gnu.org>
16845
16846 * w32.c (logon_network_drive): New function.
16847 (stat): Use it.
16848
168492008-01-26 Chong Yidong <cyd@stupidchicken.com>
16850
16851 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
16852 invisible text covered with an ellipsis.
16853
168542008-01-25 Richard Stallman <rms@gnu.org>
16855
16856 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
16857 jump back to beginning. Move some other initializations after that.
16858 (Qwindow_text_change_functions, Vwindow_text_change_functions):
16859 New variables.
16860 (syms_of_xdisp): Init them.
16861
16862 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
16863
16864 * buffer.c (reset_buffer_local_variables):
16865 Implement `permanent-local-hook'.
16866 (Qpermanent_local_hook): New variable.
16867 (syms_of_buffer): Init and staticpro it.
16868
168692008-01-25 Michael Albinus <michael.albinus@gmx.de>
16870
16871 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
16872
168732008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
16874
16875 * fns.c (Fclrhash): Return TABLE.
16876
168772008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16878
16879 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
16880 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
16881 is set even without positional changes.
16882 (x_scroll_bar_clear): Set bar->redraw_needed_p.
16883
16884 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
16885
168862008-01-23 Jason Rumney <jasonr@gnu.org>
16887
16888 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
16889
16890 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
16891 the unicode range available in MULE by locale-coding-system.
16892 Improve dbcs lead byte detection. Set event timestamp and modifiers
16893 earlier.
16894
168952008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16896
16897 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
16898 [MAC_OSX] (init_mac_osx_environment): Initialize it.
16899 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
16900 when used on child processes.
16901
169022008-01-21 Michael Albinus <michael.albinus@gmx.de>
16903
16904 * dbusbind.c (Fdbus_method_return_internal): Rename from
16905 Fdbus_method_return.
16906 (Fdbus_unregister_object): Move to dbus.el.
16907 (Fdbus_call_method, Fdbus_method_return_internal)
16908 (Fdbus_send_signal): Improve debug messages.
16909
169102008-01-20 Martin Rudalics <rudalics@gmx.at>
16911
16912 * undo.c (undo_inhibit_record_point): New variable.
16913 (syms_of_undo): Initialize it.
16914 (record_point): Don't record point when undo_inhibit_record_point
16915 is set.
16916
169172008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
16918
16919 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
16920
16921 * xdisp.c (Qauto_hscroll_mode): New var.
16922 (syms_of_xdisp): Initialize it.
16923 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
16924 window's buffer.
16925 (hscroll_windows): Don't check automatic_hscrolling_p here.
16926
16927 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
16928 vscroll if we're setting window-buffer to the value it already has.
16929
169302008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
16931
16932 * m/intel386.h: Remove references to XENIX.
16933
169342008-01-17 Andreas Schwab <schwab@suse.de>
16935
16936 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
16937 instead of HAVE_X86_64_LIB64_DIR.
16938 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
16939
169402008-01-17 Glenn Morris <rgm@gnu.org>
16941
16942 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
16943 to HAVE_X86_64_LIB64_DIR.
16944
169452008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
16946
16947 * s/irix3-3.h:
16948 * s/irix4-0.h:
16949 * s/386-ix.h:
16950 * s/domain.h:
16951 * s/hpux9-x11r4.h:
16952 * s/hpux9shxr4.h: Remove files for systems no longer supported.
16953
16954 * sysdep.c: Remove code containing references to symbols defined
16955 by unsupported systems.
16956
169572008-01-16 Glenn Morris <rgm@gnu.org>
16958
16959 * coding.c (select-safe-coding-system-function): Doc fix.
16960
169612008-01-15 Glenn Morris <rgm@gnu.org>
16962
16963 * config.in: Revert 2008-01-13 change: this is a generated file.
16964
169652008-01-13 Tom Tromey <tromey@redhat.com>
16966
16967 * lisp.h: Fix typo.
16968
169692008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16970
16971 * m/sequent-ptx.h:
16972 * m/sequent.h:
16973 * s/ptx.h:
16974 * s/ptx4-2.h:
16975 * s/ptx4.h: Remove files for systems no longer supported.
16976
16977 * callproc.c (Fcall_process): Fix previous change.
16978
169792008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
16980
16981 * unexsunos4.c: Remove file, system not supported anymore.
16982
16983 * m/mips.h:
16984 * m/intel386.h:
16985 * callproc.c:
16986 * config.in:
16987 * ecrt0.c:
16988 * emacs.c:
16989 * fileio.c:
16990 * frame.c:
16991 * getpagesize.h:
16992 * keyboard.c:
16993 * lread.c:
16994 * process.c:
16995 * puresize.h:
16996 * sysdep.c:
16997 * systty.h:
16998 * syswait.h:
16999 * unexec.c:
17000 * xdisp.c:
17001 * alloc.c: Remove code containing references to symbols defined by
17002 unsupported systems.
17003
170042008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17005
17006 * coding.c (detect_coding_mask): Fix previous change.
17007
170082008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17009
17010 * coding.c (detect_coding_iso2022): New arg
17011 latin_extra_code_state. Allow Latin extra codes only
17012 when *latin_extra_code_state is nonzero.
17013 (detect_coding_mask): If there is a NULL byte, detect the encoding
17014 as UTF-16 or binary. If Latin extra codes exist, detect the
17015 encoding as ISO-2022 only when there's no other proper encoding is
17016 found.
17017
170182008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17019
17020 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17021 #ifdef MAC_OS.
17022
170232008-01-08 Richard Stallman <rms@gnu.org>
17024
17025 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17026
170272008-01-06 Nick Roberts <nickrob@snap.net.nz>
17028
17029 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17030 menu bar in parentheses.
17031
170322008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17033
17034 * m/7300.h:
17035 * m/acorn.h:
17036 * m/alliant-2800.h:
17037 * m/alliant.h:
17038 * m/alliant1.h:
17039 * m/alliant4.h:
17040 * m/altos.h:
17041 * m/amdahl.h:
17042 * m/apollo.h:
17043 * m/att3b.h:
17044 * m/aviion-intel.h:
17045 * m/aviion.h:
17046 * m/celerity.h:
17047 * m/clipper.h:
17048 * m/cnvrgnt.h:
17049 * m/convex.h:
17050 * m/cydra5.h:
17051 * m/delta88k.h:
17052 * m/dpx2.h:
17053 * m/dual.h:
17054 * m/elxsi.h:
17055 * m/f301.h:
17056 * m/gould-np1.h:
17057 * m/gould.h:
17058 * m/i860.h:
17059 * m/ibmps2-aix.h:
17060 * m/ibmrt-aix.h:
17061 * m/ibmrt.h:
17062 * m/irist.h:
17063 * m/is386.h:
17064 * m/isi-ov.h:
17065 * m/mega68.h:
17066 * m/mg1.h:
17067 * m/news-r6.h:
17068 * m/news-risc.h:
17069 * m/news.h:
17070 * m/nh3000.h:
17071 * m/nh4000.h:
17072 * m/ns16000.h:
17073 * m/ns32000.h:
17074 * m/nu.h:
17075 * m/orion.h:
17076 * m/orion105.h:
17077 * m/paragon.h:
17078 * m/pfa50.h:
17079 * m/plexus.h:
17080 * m/pyramid.h:
17081 * m/pyrmips.h:
17082 * m/sh3el.h:
17083 * m/sps7.h:
17084 * m/sr2k.h:
17085 * m/stride.h:
17086 * m/sun1.h:
17087 * m/sun2.h:
17088 * m/sun3-68881.h:
17089 * m/sun3-fpa.h:
17090 * m/sun3-soft.h:
17091 * m/sun3.h:
17092 * m/sun386.h:
17093 * m/symmetry.h:
17094 * m/tad68k.h:
17095 * m/tahoe.h:
17096 * m/targon31.h:
17097 * m/tek4300.h:
17098 * m/tekxd88.h:
17099 * m/tower32.h:
17100 * m/tower32v3.h:
17101 * m/ustation.h:
17102 * m/wicat.h:
17103 * m/xps100.h:
17104 * s/cxux.h:
17105 * s/cxux7.h:
17106 * s/dgux.h:
17107 * s/dgux4.h:
17108 * s/dgux5-4-3.h:
17109 * s/dgux5-4r2.h:
17110 * s/esix.h:
17111 * s/esix5r4.h:
17112 * s/hiuxmpp.h:
17113 * s/hiuxwe2.h:
17114 * s/iris3-5.h:
17115 * s/iris3-6.h:
17116 * s/isc2-2.h:
17117 * s/isc3-0.h:
17118 * s/isc4-0.h:
17119 * s/isc4-1.h:
17120 * s/newsos5.h:
17121 * s/newsos6.h:
17122 * s/osf1.h:
17123 * s/osf5-0.h:
17124 * s/riscix1-1.h:
17125 * s/riscix12.h:
17126 * s/sco4.h:
17127 * s/sco5.h:
17128 * s/sunos4-0.h:
17129 * s/sunos4-1.h:
17130 * s/sunos413.h:
17131 * s/sunos4shr.h:
17132 * s/umax.h:
17133 * s/unipl5-2.h:
17134 * s/xenix.h:
17135 * cxux-crt0.s:
17136 * unexapollo.c:
17137 * unexconvex.c:
17138 * unexenix.c:
17139 * unexsni.c: Remove files for systems no longer supported.
17140
17141 * m/intel386.h: Remove references to unsupported systems.
17142
17143 * w32.c (get_emacs_configuration): Remove reference to i860.
17144
17145 * sysdep.c: Remove dead code.
17146
171472008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17148
17149 * s/rtu.h:
17150 * m/masscomp.h: Remove files. Platform is obsolete.
17151
171522008-01-04 Michael Albinus <michael.albinus@gmx.de>
17153
17154 * dbusbind.c (Fdbus_method_return): New function.
17155 (xd_read_message): Add the serial number to the event.
17156 (Fdbus_register_method): Activate the function.
17157
171582008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17159
17160 * keyboard.c (read_key_sequence): Fix typo.
17161
171622008-01-03 Michael Albinus <michael.albinus@gmx.de>
17163
17164 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17165 (xd_signature, xd_append_arg): Handle element type detection for
17166 empty arrays.
17167 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17168 SDATA () calls; this must be solved more general.
17169 (Fdbus_register_signal): Use SBYTES instead of strlen.
17170
171712008-01-03 Magnus Henoch <magnus@zemdatav>
17172
17173 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17174 unsigned int for byte values (necessary for big-endian platform).
17175 (Fdbus_call_method): Handle the case of no returned arguments.
17176
171772007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17178
17179 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17180
171812007-12-31 Magnus Henoch <mange@freemail.hu>
17182
17183 * dbusbind.c (xd_signature): Signature of variant is just "v".
17184
171852007-12-30 Michael Albinus <michael.albinus@gmx.de>
17186
17187 * dbusbind.c: Fix several errors and compiler warnings.
17188 Reported by Tom Tromey <tromey@redhat.com>.
17189 (XD_ERROR, XD_DEBUG_MESSAGE)
17190 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17191 (xd_append_arg): Part for basic D-Bus types rewritten.
17192 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17193 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17194 appropriate.
17195 (xd_read_message): Return Qnil. Don't signal an error; it is not
17196 useful during event reading.
17197 (Fdbus_register_signal): Signal an error if the check for
17198 FUNCTIONP fails.
17199 (Fdbus_register_method): New function. The implementation is not
17200 complete, the call of the function signals an error therefore.
17201 (Fdbus_unregister_object): New function, renamed from
17202 Fdbus_unregister_signal. The initial check signals an error, if
17203 the object is not well formed.
17204
172052007-12-30 Richard Stallman <rms@gnu.org>
17206
17207 * textprop.c (get_char_property_and_overlay):
17208 Signal error if POSITION is out of range in a buffer.
17209
172102007-12-29 Martin Rudalics <rudalics@gmx.at>
17211
17212 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17213 because the original parameters are in pure storage now.
17214
172152007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17216
17217 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17218
172192007-12-22 Eli Zaretskii <eliz@gnu.org>
17220
17221 * callint.c (syms_of_callint) <command-history>: Add reference to
17222 history-length in the doc string.
17223
172242007-12-17 Jason Rumney <jasonr@gnu.org>
17225
17226 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17227 before passing as wParam.
17228
172292007-12-22 Michael Albinus <michael.albinus@gmx.de>
17230
17231 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17232 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17233 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17234 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17235 as number.
17236 (Fdbus_call_method): Fix docstring.
17237
172382007-12-21 Michael Albinus <michael.albinus@gmx.de>
17239
17240 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17241 New macros.
17242 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17243 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17244 Simplify.
17245 (xd_signature): New function.
17246 (xd_append_arg): Compute also signatures. Major rewrite.
17247 (xd_retrieve_arg): Make debug messages friendly.
17248 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17249 Check for signatures of arguments.
17250
172512007-12-19 Michael Albinus <michael.albinus@gmx.de>
17252
17253 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17254 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17255 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17256 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17257 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17258 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17259 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17260 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17261 (xd_retrieve_value): Remove. Functionality included in ...
17262 (xd_append_arg): New function.
17263 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17264
172652007-12-16 Michael Albinus <michael.albinus@gmx.de>
17266
17267 * dbusbind.c (top): Include <stdio.h>.
17268 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17269 dbus_message_new_method_call and dbus_message_new_signal.
17270 (Fdbus_register_signal): Rename unique_name to uname.
17271 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17272 non-existing unique name. Fix typos in matching rule. Return an
17273 object which is useful in Fdbus_unregister_signal.
17274 (Fdbus_unregister_signal): Reimplementation, in order to remove
17275 only the corresponding entry.
17276 (Vdbus_registered_functions_table): Change the order of entries.
17277 Apply these changes in xd_read_message and Fdbus_register_signal.
17278
172792007-12-16 Andreas Schwab <schwab@suse.de>
17280
17281 * fileio.c (Finsert_file_contents): Fix overflow check to not
17282 depend on undefined integer overflow.
17283
172842007-12-14 Jason Rumney <jasonr@gnu.org>
17285
17286 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17287 for characters above 127.
17288
172892007-12-13 Jason Rumney <jasonr@gnu.org>
17290
17291 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17292 before dereferencing array.
17293 (lookup_vk_code): Remove zero comparison.
17294
172952007-12-14 Michael Albinus <michael.albinus@gmx.de>
17296
17297 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17298 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17299 Use `unsigned int' instead of `uint'.
17300 (xd_read_message, Fdbus_register_signal): Split expressions into
17301 multiple lines before operators "&&" and "||", according to the
17302 GNU Coding Standards.
17303
173042007-12-14 Eli Zaretskii <eliz@gnu.org>
17305
17306 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17307
173082007-12-12 Juri Linkov <juri@jurta.org>
17309
17310 * buffer.c (Frename_buffer): In interactive spec replace
17311 `read-buffer' with `read-string' that uses `buffer-name-history'
17312 as history, and the current buffer's name as default.
17313
173142007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17315
17316 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17317 manipulating the backtrace manually.
17318 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17319 (struct backtrace, backtrace_list): Remove.
17320 (command_loop_1): Remove dead var `no_direct'.
17321
17322 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17323 preserve non-built-in buffer-local variables.
17324 (Fkill_all_local_variables): Don't re-create&re-set permanent
17325 buffer-local variables.
17326
173272007-12-09 Juri Linkov <juri@jurta.org>
17328
17329 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17330 Lisp code that uses `read-buffer' with current buffer as default.
17331
173322007-12-08 Michael Albinus <michael.albinus@gmx.de>
17333
17334 * dbusbind.c (xd_read_message): Generate an event for every
17335 registered handler. There might be several handlers registered
17336 for the same signal.
17337 (Fdbus_register_signal): Don't overwrite a registration for the
17338 same signal. Add a new registration if handlers are different.
17339 (Vdbus_registered_functions_table): Rework doc string.
17340
173412007-12-07 Michael Albinus <michael.albinus@gmx.de>
17342
17343 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17344 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17345 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17346 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17347 Unify argument lists.
17348 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17349 arguments and hash table keys. Use unique name for service.
17350 (Fdbus_unregister_signal): Remove checks.
17351 (Vdbus_registered_functions_table): Fix doc string.
17352
173532007-12-05 Magnus Henoch <mange@freemail.hu>
17354
17355 * process.c (make_process): Initialize pty_flag to 0.
17356
173572007-12-05 Jason Rumney <jasonr@gnu.org>
17358
17359 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17360 specified XBMs.
17361
173622007-12-05 Richard Stallman <rms@gnu.org>
17363
17364 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17365
173662007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17367
17368 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17369 New variable.
17370 (mac_try_close_socket) [MAC_OSX]: New function.
17371 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17372 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17373
17374 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17375 Use mac_try_close_socket.
17376
173772007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17378
17379 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17380 reloc_base.
17381 (copy_dysymtab): Compute relocation base here.
17382 (rebase_reloc_address) [__ppc64__]: New function.
17383 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17384 changed.
17385
173862007-12-05 Jason Rumney <jasonr@gnu.org>
17387
17388 * w32proc.c (sys_spawnve): Quote args with wildcards.
17389
173902007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17391
17392 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17393 __objc_* sections.
17394 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17395
173962007-12-05 Michael Albinus <michael.albinus@gmx.de>
17397
17398 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17399 Move check for Vdbus_registered_functions_table to
17400 xd_read_queued_messages.
17401 (xd_read_queued_messages): Protect xd_read_message calls by
17402 internal_condition_case_1.
17403
174042007-12-04 Michael Albinus <michael.albinus@gmx.de>
17405
17406 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17407 Qdbus_system_bus and Qdbus_session_bus, respectively.
17408 (Vdbus_intern_symbols): Remove.
17409 (Vdbus_registered_functions_table): New hash table.
17410 (XD_SYMBOL_INTERN_SYMBOL): Remove.
17411 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
17412 Rewrite in order to manage registered functions by hash table
17413 Vdbus_registered_functions_table.
17414
174152007-12-03 Jan Djärv <jan.h.d@swipnet.se>
17416
17417 * xterm.c: Update URL to Window Manager Specification in comment.
17418
174192007-12-02 Michael Albinus <michael.albinus@gmx.de>
17420
17421 * config.in (HAVE_DBUS): Add.
17422
17423 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
17424 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
17425 (obj): Add $(DBUS_OBJ).
17426 (LIBES): Add $(DBUS_LIBS).
17427 (dbusbind.o): New target.
17428
17429 * dbusbind.c: New file.
17430
17431 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
17432
17433 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
17434 (Qdbus_event): New Lisp symbol.
17435 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
17436 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 17437 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
17438
17439 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
17440
174412007-12-01 Richard Stallman <rms@gnu.org>
17442
17443 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
17444
174452007-11-30 Jason Rumney <jasonr@gnu.org>
17446
17447 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
17448 (w32con_reset_terminal_modes): Clear screen buffer.
17449 (w32_face_attributes): Don't use color indexes that are out of range.
17450 Only reverse the default colors.
17451
17452 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
17453 WINDOWSNT.
17454
17455 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
17456
174572007-11-29 Jason Rumney <jasonr@gnu.org>
17458
17459 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
17460 (w32_face_attributes): Use Vtty_defined_color_alist to determine
17461 if the terminal colors are initialized.
17462 (unspecified_fg, unspecified_bg): Remove unused declarations.
17463
174642007-11-29 Andreas Schwab <schwab@suse.de>
17465
17466 * keyboard.c (apply_modifiers): Fix typo.
17467
174682007-11-29 Richard Stallman <rms@gnu.org>
17469
17470 * keymap.c (Fcurrent_local_map): Doc fix.
17471
174722007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
17473
17474 * s/gnu-kfreebsd.h: New file.
17475
174762007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
17477
17478 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
17479 Don't cast redundantly.
17480
17481 * keyboard.c (KEY_TO_CHAR): New macro.
17482 (parse_modifiers, apply_modifiers): Accept integer arguments.
17483 (read_key_sequence): Use them to unify the "shift->unshift" mapping
17484 for chars and symbol keys.
17485 After doing such remapping, apply function-key-map again.
17486
174872007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
17488
17489 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
17490 compiled anymore.
17491
174922007-11-26 Andreas Schwab <schwab@suse.de>
17493
17494 * process.c (list_processes_1): Fix indentation level of the
17495 command column.
17496
174972007-11-23 Andreas Schwab <schwab@suse.de>
17498
17499 * editfns.c (Fformat): Handle %c specially since it requires the
17500 argument to be of type int.
17501
175022007-11-23 Markus Triska <markus.triska@gmx.at>
17503
17504 * emacs.c (main): Call init_editfns before init_process, since
17505 init_process sets Vprocess_connection_type depending on OS release.
17506
175072007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
17508
17509 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
17510 (find_symbol_value): Use do_symval_forwarding.
17511
17512 * data.c (set_internal): Set the value in the `cons-cell' (for
17513 Buffer_Local_values) not only for frame-local variables.
17514
175152007-11-22 Andreas Schwab <schwab@suse.de>
17516
17517 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
17518 values to sprintf.
17519 * keymap.c (Fsingle_key_description): Likewise.
17520 * print.c (print_object): Likewise.
17521
175222007-11-22 Jan Djärv <jan.h.d@swipnet.se>
17523
17524 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
17525 file for image is nil.
17526
175272007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
17528
17529 * term.c: Include stdarg.h.
17530 (fatal): Implement using varargs.
17531 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
17532
175332007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17534
17535 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
17536 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
17537 Update call to buffer_slot_type_mismatch.
17538 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
17539 (buffer_slot_type_mismatch): Update.
17540 * buffer.c (buffer_local_types): Remove.
17541 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
17542 (defvar_per_buffer): Set the type in the buffer_objfwd.
17543
175442007-11-21 Jason Rumney <jasonr@gnu.org>
17545
17546 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
17547 CreateFileMapping returns NULL on failure.
17548
175492007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
17550
17551 * search.c (Fset_match_data): Remove the `evaporate' feature.
17552 (unwind_set_match_data): Don't use the `evaporate' feature.
17553
175542007-11-21 Jason Rumney <jasonr@gnu.org>
17555
17556 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
17557
17558 * w32console.c (w32con_write_glyphs): Remove unused variables.
17559
175602007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
17561
17562 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
17563
17564 * s/darwin.h (MULTI_KBOARD): Remove.
17565
17566 * macfns.c (x_create_tip_frame, Fx_create_frame)
17567 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
17568
175692007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
17570
17571 * buffer.c (Fbuffer_local_value): Remove redundant test.
17572 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
17573 than in `current-buffer' to match the comment.
17574 Do the swap using swap_in_global_binding.
17575
17576 * data.c (store_symval_forwarding, set_internal):
17577 * eval.c (specbind): Remove dead code.
17578
17579 * coding.c (detect_coding, Fupdate_coding_systems_internal):
17580 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
17581 Since we do not want to see internal Lisp_*fwd objects here.
17582
175832007-11-18 Jan Djärv <jan.h.d@swipnet.se>
17584
17585 * sysdep.c (init_system_name): Use getaddrinfo if available.
17586
17587 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
17588 (x_scroll_bar_note_movement): start, end, with, height in struct
17589 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
17590
175912007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
17592
17593 * puresize.h (BASE_PURESIZE): Increase to 1190000.
17594
175952007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
17596
17597 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
17598 This undoes Richard's change of 14-Oct-2002.
17599
17600 * alloc.c (allocate_other_vector):
17601 * lisp.h (allocate_other_vector): Remove.
17602
17603 * window.c (struct save_window_data): Move non-lisp data to the end
17604 and make it `int' rather than Lisp_Object.
17605 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
17606 Done wrap/unwrap integer values.
17607 (Fset_window_configuration, compare_window_configurations):
17608 Update use of fields to their new types.
17609
17610 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
17611 Turn integer fields into `int'. Merge x_window_low and x_window_high.
17612 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
17613 (SET_SCROLL_BAR_X_WINDOW): Remove.
17614 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
17615 Access the new x_window field directly.
17616 * xterm.c (x_scroll_bar_create): Use a pseudovector.
17617 Don't wrap/unwrap integers into Lisp_Objects.
17618 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
17619 (x_scroll_bar_report_motion):
17620 Don't wrap/unwrap integers into Lisp_Objects.
17621 (x_term_init): Use SDATA.
17622 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
17623 (x_scroll_bar_set_handle, x_scroll_bar_remove)
17624 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
17625 (x_scroll_bar_report_motion, x_scroll_bar_clear):
17626 * xfns.c (x_set_background_color):
17627 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
17628 Access the new x_window field directly.
17629
17630 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
17631 (allocate_pseudovector): Make non-static.
17632
17633 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
17634 (allocate_pseudovector): Declare.
17635 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
17636
176372007-11-15 Andreas Schwab <schwab@suse.de>
17638
17639 * editfns.c (Fformat): Correctly format EMACS_INT values.
17640 Also take precision into account when formatting an integer.
17641
17642 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
17643
176442007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
17645
17646 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
17647 (syms_of_keyboard): Defsubr it.
17648
17649 * data.c (swap_in_global_binding): Fix longstanding bug where
17650 store_symval_forwarding was not called with the right second argument,
17651 thus causing objfwd-ing from being dropped.
17652
176532007-11-14 Juanma Barranquero <lekktu@gmail.com>
17654
17655 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
17656 (Fx_display_pixel_height, Fx_display_planes)
17657 (Fx_display_color_cells, Fx_server_max_request_size)
17658 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17659 (Fx_display_visual_class, Fx_display_save_under):
17660 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
17661 (Fx_display_pixel_height, Fx_display_planes)
17662 (Fx_display_color_cells, Fx_server_max_request_size)
17663 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
17664 (Fx_display_mm_height, Fx_display_mm_width)
17665 (Fx_display_backing_store, Fx_display_visual_class)
17666 (Fw32_select_font, Fx_display_save_under):
17667 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
17668 (Fx_display_pixel_height, Fx_display_planes)
17669 (Fx_display_color_cells, Fx_server_max_request_size)
17670 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
17671 (Fx_display_save_under): Fix typos in docstrings.
17672
176732007-11-14 Juanma Barranquero <lekktu@gmail.com>
17674
17675 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
17676 corresponding to deleted entries; they are an implementation detail.
17677 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
17678 Remove variables.
17679 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
17680 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
17681 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
17682 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
17683 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
17684 (Fw32_define_rgb_color, Fw32_load_color_file)
17685 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
17686 Fix typos in docstrings.
17687 (Fx_server_version): Reflow docstring.
17688 (Fw32_shell_execute): Doc fixes.
17689
176902007-11-13 Juanma Barranquero <lekktu@gmail.com>
17691
17692 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
17693 if w32_parse_hot_key returned nil.
17694
176952007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
17696
17697 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
17698
176992007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 17700
aac0c6e3
MR
17701 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
17702
17703 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
17704
17705 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
17706 Remove W32_SCROLL_BAR_CLICK_EVENT.
17707
17708 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
17709 Add MULTIMEDIA_KEY_EVENT.
17710
17711 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
17712 (lispy_multimedia_keys) [WINDOWSNT]: New array.
17713 (make_lispy_event) [WINDOWSNT]: Use it to translate
17714 MULTIMEDIA_KEY_EVENT.
17715
17716 * w32term.h (WM_APPCOMMAND): Define if not already.
17717 (GET_APPCOMMAND_LPARAM): Likewise.
17718
17719 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
17720 WM_APPCOMMAND.
17721
17722 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
17723 (syms_of_w32fns): Export and initialize it.
17724 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
17725
177262007-11-09 Chong Yidong <cyd@stupidchicken.com>
17727
17728 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
17729 twice.
17730
17731 * xdisp.c (handle_face_prop): Fix last change.
17732
177332007-11-09 Richard Stallman <rms@gnu.org>
17734
17735 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
17736 not just for after-strings and before-strings.
17737 Call face_for_overlay_string and pass the overlay to it.
17738 (handle_display_prop): Determine whether property came from an overlay.
17739 Pass OVERLAY arg to handle_single_display_spec.
17740 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
17741 (load_overlay_strings): Fill in it->string_overlays.
17742 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
17743
17744 * xfaces.c (face_for_overlay_string): Function renamed from
17745 face_at_buffer_position_no_overlays, and add arg OVERLAY.
17746
17747 * dispextern.h (struct it): New elt string_overlays.
17748 New elt from_overlay, also in stack.
17749 Rearrange a few elements.
17750 (face_for_overlay_string): Decl renamed from
17751 face_at_buffer_position_no_overlays, and add argument.
17752
177532007-11-09 Richard Stallman <rms@gnu.org>
17754
17755 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
17756 to get the base face for an overlay string.
17757
17758 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
17759
17760 * xfaces.c (face_at_buffer_position_no_overlays): New function.
17761
17762 * xdisp.c (handle_stop): Move some code out of loop.
17763
177642007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17765
17766 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
17767 Fix conversion from Lisp object to ATSUFontID.
17768
177692007-11-09 Jason Rumney <jasonr@gnu.org>
17770
17771 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
17772
177732007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17774
17775 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
17776 Don't assume regions are aligned to page boundary.
17777 (print_load_command_name): Add LC_UUID if defined.
17778
177792007-11-09 Richard Stallman <rms@gnu.org>
17780
17781 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
17782
177832007-11-07 Jason Rumney <jasonr@gnu.org>
17784
17785 * s/windows95.h: Remove.
17786
177872007-11-06 Jan Djärv <jan.h.d@swipnet.se>
17788
17789 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
17790 abort with a message on unhandled store_type values.
17791
177922007-11-01 Jan Djärv <jan.h.d@swipnet.se>
17793
17794 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
17795 Remove HAVE_X11R5 and HAVE_X11R4.
17796
177972007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17798
17799 * Makefile.in: Remove references to sunfns.c and sunfns.o.
17800
178012007-11-01 Johan Bockgård <bojohan@gnu.org>
17802
17803 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
17804 Don't set s->stippled_p here, since it has already been set by
17805 x_set_glyph_string_gc from x_draw_glyph_string.
17806
178072007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
17808
17809 * sunfns.c: Remove file.
17810
17811 * m/sun386.h:
17812 * m/sun2.h:
17813 * m/sparc.h: Remove Sun windows code.
17814
178152007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
17816
17817 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
17818 (init_keyboard): Set current_kboard's window-system to nil.
17819 (tty_read_avail_input): Typo.
17820 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
17821
178222007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
17823
17824 * s/usg5-4.h:
17825 * s/usg5-3.h:
17826 * s/ptx.h:
17827 * m/is386.h:
17828 * m/ibmps2-aix.h:
17829 * Makefile.in: Remove all mentions of X10.
17830
17831 * dispnew.c (syms_of_display): Don't mention version 10.
17832
178332007-10-28 Juanma Barranquero <lekktu@gmail.com>
17834
17835 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
17836 ($(BLD)/abbrev.$(O)): Remove.
17837
178382007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
17839
17840 Rewrite abbrev.c in Elisp.
17841 * image.c (Qcount): Don't declare as extern.
17842 (syms_of_image): Initialize and staticpro `Qcount'.
17843 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
17844 * emacs.c (main): Don't call syms_of_abbrev.
17845 * Makefile.in (obj): Remove abbrev.o.
17846 (abbrev.o): Remove.
17847 * abbrev.c: Remove.
17848
178492007-10-26 Martin Rudalics <rudalics@gmx.at>
17850
17851 * window.c (window_min_size_2): Don't count header-line.
17852
178532007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
17854
17855 * frame.h (struct frame): Move all bit fields after the first bit
17856 field to take advantage of the available space. Group all the
17857 chars together to reduce wasted space due to padding.
17858
178592007-10-26 Juanma Barranquero <lekktu@gmail.com>
17860
17861 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
17862
17863 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
17864 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
17865 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
17866 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
17867 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
17868 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
17869 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
17870 (last_marked, mark_object_loop_halt): Make static.
17871
17872 * frame.c (syms_of_frame) <delete-frame-functions>:
17873 Fix typo in docstring.
17874
178752007-10-25 Juanma Barranquero <lekktu@gmail.com>
17876
17877 * w32.c (init_environment): Fix tiny memory leak.
17878 (w32_get_resource): Remove unused variable `ok'.
17879
178802007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
17881
17882 Make `window-system' into a keyboard-local variable (rather than
17883 frame-local as done originally by multi-tty).
17884
17885 * keyboard.h (struct kboard): Add Vwindow_system.
17886 * keyboard.c (init_kboard): Set a default for Vwindow_system.
17887 (mark_kboards): Mark Vwindow_system.
17888
17889 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
17890 (init_display): Don't set the obsolete `window-system' frame-param.
17891
17892 * xterm.c (x_term_init):
17893 * w32term.c (w32_create_terminal):
17894 * term.c (init_tty): Set Vwindow_system.
17895 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
17896 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
17897
17898 * xfns.c (Fx_create_frame, x_create_tip_frame):
17899 * w32fns.c (Fx_create_frame, x_create_tip_frame):
17900 * macfns.c (Fx_create_frame):
17901 Don't set the obsolete `window-system' frame-param.
17902
17903 * frame.h (Qwindow_system): Remove.
17904 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
17905 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
17906
179072007-10-24 Richard Stallman <rms@gnu.org>
17908
17909 * frame.c (x_figure_window_size): For fullscreen case,
17910 set USPosition | PPosition without clobbering rest of window_prompting.
17911
17912 * keyboard.c (Fcurrent_idle_time): Doc fix.
17913
17914 * print.c (Fwith_output_to_temp_buffer): Doc fix.
17915
179162007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
17917
17918 * process.c (unwind_request_sigio): Only define if __ultrix__.
17919
17920 * callproc.c (child_setup): Remove spurious *.
17921
17922 * lisp.h (Fget_text_property): Declare.
17923 (have_menus_p): Declare it here rather than in sys-dep header files.
17924 * macterm.h (have_menus_p):
17925 * msdos.h (have_menus_p):
17926 * xterm.h (have_menus_p): Remove.
17927
17928 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17929 (Fmake_variable_frame_local): Just check the variable's const-ness
17930 rather than checking nil or t.
17931
179322007-10-22 Jason Rumney <jasonr@gnu.org>
17933
17934 * w32fns.c: Include math.h.
17935 (w32_abort): Declaration moved to nt/config.nt.
17936
17937 * s/ms-w32.h (HAVE_STDLIB_H): Define.
17938 (abort): Redefinition moved to nt/config.nt.
17939
17940 * m/windowsnt.h: Remove.
17941
179422007-10-22 Juanma Barranquero <lekktu@gmail.com>
17943
17944 * emacs.c (Fdump_emacs): Fix typo in message.
17945 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
17946 <installation-directory>: Reflow docstring.
17947
179482007-10-22 Juri Linkov <juri@jurta.org>
17949
17950 * minibuf.c: Allow minibuffer default to be a list of default values.
17951 With empty input use the first element of this list as returned default.
17952 (string_to_object)
17953 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
17954 (read_minibuf): If defalt is cons, set histstring to its car.
17955 (Fread_string): If default_value is cons, set val to its car.
17956 (Fread_buffer): If def is cons, use its car.
17957 (Fcompleting_read): If defalt is cons, set val to its car.
17958
179592007-10-21 Michael Albinus <michael.albinus@gmx.de>
17960
17961 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
17962
179632007-10-20 Juanma Barranquero <lekktu@gmail.com>
17964
17965 * doc.c (Fdocumentation): Check for advice in all cases.
17966
179672007-10-19 Chong Yidong <cyd@stupidchicken.com>
17968
17969 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
17970
179712007-10-19 Richard Stallman <rms@gnu.org>
17972
17973 * doc.c (Fdocumentation): Check for and handle an advised function.
17974
179752007-10-19 Juanma Barranquero <lekktu@gmail.com>
17976
17977 * process.c (Fset_process_filter): Doc fix.
17978
179792007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
17980
17981 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
17982 which caused key-translation-map to applied repeatedly (thus breaking
17983 double-mode).
17984
179852007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17986
17987 * xselect.c (x_own_selection, x_handle_selection_clear)
17988 (x_clear_frame_selections):
17989 * w32menu.c (list_of_panes, list_of_items):
17990 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
17991 * textprop.c (validate_plist, interval_has_all_properties)
17992 (interval_has_some_properties, interval_has_some_properties_list)
17993 (add_properties, text_property_list):
17994 * process.c (Fget_buffer_process, list_processes_1, status_notify):
17995 * minibuf.c (Fassoc_string):
17996 * macselect.c (x_own_selection, x_clear_frame_selections)
17997 (Fx_disown_selection_internal):
17998 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17999 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18000
180012007-10-17 Chong Yidong <cyd@stupidchicken.com>
18002
18003 * process.c: Link to libs for calling res_init() if available.
18004 (Fmake_network_process): Call res_init() before getaddrinfo or
18005 gethostbyname, if possible.
18006
180072007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18008
18009 * lread.c (read1): Set pvectype for char_tables.
18010
18011 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18012 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18013 Add type checks.
18014 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18015
18016 * alloc.c (free_misc): Use XMISCTYPE.
18017 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18018
180192007-10-17 Glenn Morris <rgm@gnu.org>
18020
18021 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18022 (syms_of_minibuf): Add Qcompletion_ignore_case.
18023 * dired.c (Qcompletion_ignore_case): Change to external.
18024 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18025 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18026 (Fread_file_name): Use it rather than intern'ing.
18027
18028 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18029 (Fread_coding_system): Ignore case of user input.
18030
180312007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18032
18033 * xdisp.c (handle_display_prop): Ignore display specs after
18034 replacing one when string text is being replaced.
18035 (handle_single_display_spec): Pretend as if characters with display
18036 property haven't been consumed only when buffer text is being replaced.
18037
180382007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18039
18040 * xfns.c (Fx_create_frame, Fx_display_list):
18041 * window.c (window_fixed_size_p, enlarge_window)
18042 (shrink_window_lowest_first):
18043 * macterm.c (init_font_name_table):
18044 * macfns.c (Fx_create_frame, Fx_display_list):
18045 * lread.c (close_load_descs):
18046 * keyboard.c (read_char_x_menu_prompt):
18047 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18048 * coding.c (code_convert_region_unwind): Test the type of an object
18049 rather than just !NILP before extracting data from it.
18050
18051 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18052
18053 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18054 (XMISCANY): New macro.
18055 (XMISCTYPE): Use it.
18056 (struct Lisp_Misc_Any): New type.
18057 (union Lisp_Misc): Use it.
18058 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18059 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18060 (find_symbol_value, set_internal, default_value, Fset_default)
18061 (Fmake_variable_buffer_local, Fmake_local_variable)
18062 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18063 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18064 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18065 * alloc.c (allocate_buffer): Set the size and tag.
18066 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18067 Use XMISCANY.
18068 (die): Follow the GNU convention for error messages.
18069 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18070 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18071 tag any more.
18072 (set_buffer_internal_1):
18073 * frame.c (store_frame_param):
18074 * eval.c (specbind):
18075 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18076
18077 * doc.c (Fsnarf_documentation): Simplify.
18078
180792007-10-14 Juanma Barranquero <lekktu@gmail.com>
18080
18081 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18082 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18083
180842007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18085
18086 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18087
180882007-10-14 Juanma Barranquero <lekktu@gmail.com>
18089
18090 * eval.c (do_autoload): Don't save autoloads.
18091
18092 * data.c (Ffset): Save autoload of the function being set.
18093
180942007-10-07 John Paul Wallington <jpw@pobox.com>
18095
18096 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18097 parameter before setting up faces.
18098
180992007-10-13 Eli Zaretskii <eliz@gnu.org>
18100
18101 * ccl.c (Fregister_code_conversion_map):
18102 * keyboard.c (append_tool_bar_item): Reformat last change.
18103
18104 * lisp.h (eabs): Rename from `abs'. All callers changed.
18105
181062007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18107
18108 * buffer.c (add_overlay_mod_hooklist):
18109 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18110 * fontset.c (make_fontset):
18111 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18112 (append_tool_bar_item):
18113 * macmenu.c (grow_menu_items):
18114 * w32menu.c (grow_menu_items):
18115 * xmenu.c (grow_menu_items): Use larger_vector.
18116
181172007-10-13 Eli Zaretskii <eliz@gnu.org>
18118
18119 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18120 selected frame'' on MSDOS).
18121
181222007-10-12 Martin Rudalics <rudalics@gmx.at>
18123
18124 * frame.c (Qexplicit_name): New variable.
18125 (x_report_frame_params): Report it in parameter alist.
18126 (syms_of_frame): Intern and staticpro it.
18127
181282007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18129
18130 * macfns.c (x_create_tip_frame): Set terminal for frame.
18131
181322007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18133
18134 * frame.c (Qenvironment): Remove.
18135 (syms_of_frame) <Qenvironment>: Don't initialize.
18136 (Fdelete_frame): Don't treat the `environment' param specially.
18137 * frame.h (Qenvironment): Don't declare.
18138 * callproc.c (set_initial_environment): Don't set unused frame param.
18139
18140 * frame.c (Fframe_with_environment): Remove.
18141 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18142
18143 * lisp.h (Fframe_with_environment): Don't declare.
18144
181452007-10-10 Juanma Barranquero <lekktu@gmail.com>
18146
18147 * indent.c (indent_tabs_mode, last_known_column)
18148 (last_known_column_modified): Make static.
18149 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18150
181512007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18152
18153 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18154
181552007-10-09 Jason Rumney <jasonr@gnu.org>
18156
18157 * w32term.c (x_set_window_size): Disable code that attempts to tell
18158 Lisp code about a size change before it actually happens.
18159
181602007-10-09 Richard Stallman <rms@gnu.org>
18161
18162 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18163 return HANDLED_RETURN.
18164
181652007-10-08 Martin Rudalics <rudalics@gmx.at>
18166
18167 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18168 when there's an unread command event.
18169
18170 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18171 window autoselection act appropriately when leaving selected frame.
18172 (syms_of_frame): Initialize focus_follows_mouse.
18173 * frame.h (focus_follows_mouse): Extern it.
18174 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18175 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18176 * msdos.c (dos_rawgetc): Likewise.
18177 * w32term.c (w32_read_socket): Likewise.
18178 * xterm.c (handle_one_xevent): Likewise.
18179 * xdisp.c (syms_of_xdisp): In doc-string of
18180 mouse-autoselect-window mention focus-follows-mouse.
18181
181822007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18183
18184 * macterm.c (mac_load_query_font): Fix missing return value.
18185 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18186 Add BLOCK_INPUT.
18187
181882007-10-08 Richard Stallman <rms@gnu.org>
18189
18190 * xdisp.c (get_window_cursor_type): Implement documented behavior
18191 for cursor-in-non-selected-windows = t.
18192
181932007-10-08 Jason Rumney <jasonr@gnu.org>
18194
18195 * w32.c (w32_get_resource): Always close registry keys.
18196
181972007-10-08 Jason Rumney <jasonr@gnu.org>
18198
18199 * makefile.w32-in (LIBS): Add COMCTL32.
18200
18201 * w32fns.c (globals_of_w32fns): Init common controls.
18202
182032007-10-08 Richard Stallman <rms@gnu.org>
18204
18205 * image.c (our_memory_buffer): Rename from omfib_buffer.
18206
182072007-10-08 Richard Stallman <rms@gnu.org>
18208
18209 * buffer.c (Foverlays_at): Doc fix.
18210
182112007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18212
18213 * fns.c (Fplist_put): Preserve uneven tail data.
18214
182152007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18216
18217 * termhooks.h (enum event_kind): Remove trailing comma.
18218
18219 * frame.h (enum): Remove trailing comma.
18220
182212007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18222
18223 * w32proc.c (delete_child): Don't terminate threads of zombies.
18224
182252007-10-08 Martin Rudalics <rudalics@gmx.at>
18226
18227 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18228
18229 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18230 last-repeatable-command.
18231 (init_kboard): Initialize Vlast_repeatable_command.
18232 (command_loop_1): Set it to real_this_command unless that was
18233 bound to an input event.
18234 (mark_kboards): Mark it.
18235
182362007-10-08 Richard Stallman <rms@gnu.org>
18237
18238 * eval.c (condition-case): Doc fix.
18239
182402007-10-08 Masatake YAMATO <jet@gyve.org>
18241
18242 * xfaces.c (tty_supports_face_attributes_p): Fix code
18243 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18244 was copied and not edited.
18245
182462007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18247
18248 Add new `input-decode-map' keymap and use it for terminal
18249 escape sequences.
18250 * keyboard.h (struct kboard): Add Vinput_decode_map.
18251 Remove Vlocal_key_translation_map.
18252 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18253 (init_kboard): Init input-decode-map.
18254 Replace local-key-translation-map back with key-translation-map.
18255 (syms_of_keyboard): Declare input-decode-map.
18256 Remove local-key-translation-map. Update docstrings.
18257 (mark_kboards): Mark Vinput_decode_map.
18258 Don't mark Vlocal_key_translation_map.
18259 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18260 Replace local-key-translation-map back with key-translation-map.
18261 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18262 Bind in input-decode-map rather than function-key-map.
18263
18264 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18265 This was made redundant by the previous introduction of XSETPVECTYPE.
18266
182672007-10-09 Richard Stallman <rms@gnu.org>
18268
18269 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18270
182712007-09-29 Richard Stallman <rms@gnu.org>
18272
18273 * eval.c (internal_condition_case_2, internal_condition_case_1)
18274 (internal_condition_case): Reenable abort if x_catching_errors ()
18275 to see if that really happens and why.
18276
182772007-10-06 Andreas Schwab <schwab@suse.de>
18278
18279 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18280
182812007-10-04 Juanma Barranquero <lekktu@gmail.com>
18282
18283 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18284
182852007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18286
18287 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18288
182892007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18290
18291 * window.h (struct window):
18292 * window.c (struct save_window_data, struct saved_window):
18293 * termhooks.h (struct terminal):
18294 * process.h (struct Lisp_Process):
18295 * frame.h (struct frame):
18296 * buffer.h (struct buffer):
18297 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18298 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18299 The size field of (pseudo)vectors is now unsigned.
18300 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18301
18302 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18303 Turn `count' into an integer.
18304
18305 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18306 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18307 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18308 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18309 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18310
18311 * alloc.c (allocate_pseudovector): New fun.
18312 (ALLOCATE_PSEUDOVECTOR): New macro.
18313 (allocate_window, allocate_terminal, allocate_frame)
18314 (allocate_process): Use it.
18315 (mark_vectorlike): New function.
18316 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18317 (mark_terminals): Use it.
18318 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18319 (Fmake_byte_code): Use XSETPVECTYPE.
18320
18321 * frame.c (Fframe_parameters): Minor simplification.
18322
18323 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18324
18325 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18326
18327 * buffer.c (Fget_buffer_create, init_buffer_once):
18328 * lread.c (defsubr):
18329 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18330
18331 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18332 defined differently in the m/*.h files.
18333 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18334 (XSETPVECTYPE): New macro.
18335 (XSETPSEUDOVECTOR): Use it.
18336
18337 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18338 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18339
18340 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18341 * lread.c (defvar_per_buffer):
18342 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18343
18344 * window.c (candidate_window_p): Only consider as visible frames that
18345 are on the same terminal.
18346
18347 * m/ibms390x.h (MARKBIT): Remove unused macro.
18348
183492007-10-01 Juanma Barranquero <lekktu@gmail.com>
18350
18351 * lread.c (Fload): Fix typo in docstring.
18352
183532007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18354
18355 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18356 of a non-zero value can't yield zero.
18357
183582007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18359
18360 * term.c (term_clear_mouse_face, term_mouse_highlight)
18361 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18362
18363 * print.c (safe_debug_print): Use XHASH.
18364
18365 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18366 Lisp elements such as tags.
18367 (XHASH): New macro.
18368 (EQ): Use it.
18369 (SREF, SSET, STRING_COPYIN): Use SDATA.
18370 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18371
18372 * alloc.c (mark_terminal): Remove left-over declaration.
18373 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18374 (allocate_vectorlike): Remove type argument. Adjust callers.
18375 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18376 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18377
18378 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18379 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18380 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18381 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18382 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18383 Use them.
18384
18385 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18386 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18387 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18388
183892007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18390
18391 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18392 loaded by default.
18393
183942007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18395
18396 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18397 on this tty.
18398 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18399
18400 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18401 Update all users.
18402 (handle_one_term_event): Use Gpm_DrawPointer.
18403 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18404 Signal errors instead of returning nil. Always return nil.
18405 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18406 Make it a noop if gpm-mouse was not activated.
18407 (syms_of_term): Update names.
18408
184092007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
18410
18411 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
18412 (init_sys_modes): Check that gpm_tty is the current tty.
18413
18414 * alloc.c (allocate_terminal): Set the vector size to only count the
18415 lisp fields. Initialize those to nil.
18416 (mark_object): Don't treat terminals specially.
18417 (mark_terminal): Remove.
18418 (mark_terminals): Use mark_object instead.
18419
18420 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
18421 the GC to the beginning.
18422
18423 * indent.h:
18424 * indent.c: Use EMACS_INT for ints coming from Elisp data.
18425
18426 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
18427
184282007-09-25 Jason Rumney <jasonr@gnu.org>
18429
18430 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
18431
18432 * w32console.c (create_w32cons_output): Remove.
18433
18434 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
18435
18436 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
18437 (reset_sys_modes): Use reset_terminal_modes_hook.
18438
184392007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
18440
18441 * eval.c (do_autoload): Don't output any message.
18442
184432007-09-24 Juri Linkov <juri@jurta.org>
18444
18445 * emacs.c (standard_args): Change priority of "--no-splash"
18446 from 40 to 3. Add "--no-desktop" with the same priority.
18447
184482007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
18449
18450 * alloc.c (gc_sweep): Check cons cell mark bits word by word
18451 and optimize the case where they are all 1.
18452
184532007-09-23 Johannes Weiner <hannes@saeurebad.de>
18454
18455 * lisp.h (abs): Define if not defined.
18456 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
18457 Don't define `abs', since it's defined in lisp.h.
18458
184592007-09-22 Eli Zaretskii <eliz@gnu.org>
18460
18461 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
18462 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
18463 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
18464 (init_tty): Use DEV_TTY instead of "/dev/tty".
18465 [WINDOWSNT]: No need to protect from NAME arg being null.
18466
184672007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
18468
18469 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
18470 up the tty state.
18471
184722007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18473
18474 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
18475 (gpm_tty): Change its type.
18476 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
18477 (gpm_tty): Change its type and initialize it.
18478 (Fterm_open_connection): Check the frame is indeed a tty.
18479 Use the new gpm_tty.
18480 (Fterm_close_connection): Use the new gpm_tty.
18481 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
18482 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
18483
184842007-09-21 Juanma Barranquero <lekktu@gmail.com>
18485
18486 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
18487 underline_color, to draw strike-through.
18488
184892007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
18490
18491 * lisp.h (allocate_terminal): Declare.
18492
18493 * window.c (candidate_window_p): Consider frames that are being placed
18494 by the user as somewhere between visible and iconified.
18495 (window_loop): Prefer windows on the current frame.
18496 (Fselect_window): Move the use of select-frame to the beginning so we
18497 can just delegate all the work (it'll call us back anyway).
18498
18499 * frame.c (Qdisplay_environment_variable):
18500 * frame.h (Qdisplay_environment_variable): Delete.
18501
18502 * .gdbinit (xbacktrace): Print the arg's address rather than the value
18503 of the first arg, since that value may be a union.
18504
18505 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
18506 parameter rather than Qdisplay_environment_variable. If all else
18507 fails, look for DISPLAY in initial-environment.
18508
185092007-09-21 Glenn Morris <rgm@gnu.org>
18510
18511 * Makefile.in (emacstool): Remove target.
18512 (lisp, shortlisp): Remove termdev.elc.
18513
185142007-09-21 Markus Triska <markus.triska@gmx.at>
18515
18516 * xterm.c (x_delete_display): Compile session management conditionally.
18517
185182007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
18519
18520 * callproc.c (getenv_internal_1): New function.
18521 (getenv_internal): Use it.
18522 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
18523
18524 * terminal.c (get_terminal): Don't accept ints to represent terminals.
18525 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
18526 (Fset_terminal_parameter): Work with dead terminals as well.
18527 (Fmodify_terminal_parameters): Remove.
18528
18529 * terminal.c (get_terminal): Handle terminals.
18530 Make sure the terminal returned is live.
18531 (create_terminal): Use allocate_terminal.
18532 (mark_terminals): Move to alloc.c.
18533 (delete_terminal): Use terminal->name as liveness status.
18534 NULL out fields after freeing their contents.
18535 Don't deallocate the object.
18536 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
18537 rather than an int.
18538 (Fterminal_live_p): Accept non-integer arguments.
18539 (Fterminal_list): Return terminal objects rather than an ints.
18540
18541 * alloc.c (enum mem_type): New member for `terminal' objects.
18542 (allocate_terminal): New function.
18543 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
18544 Handle terminals.
18545 (mark_terminal): New fun.
18546 (mark_terminals): Move from terminal.c.
18547
18548 * term.c (get_tty_terminal): Don't treat output_initial specially.
18549 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
18550 (delete_tty): Use terminal->name as liveness status.
18551
18552 * termhooks.h (struct terminal): Make it into a pseudovector.
18553 Remove `deleted' replaced by checking `name's nullness.
18554
18555 * print.c (print_object): Handle terminals.
18556
18557 * lisp.h (enum pvec_type): New `terminal' pseudovector.
18558 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
18559
18560 * frame.c (make_terminal_frame):
18561 * keyboard.c (tty_read_avail_input):
18562 * w32term.c (x_delete_terminal):
18563 * xfns.c (Fx_create_frame, x_create_tip_frame):
18564 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
18565
185662007-09-20 Glenn Morris <rgm@gnu.org>
18567
18568 * process.c (Fmake_network_process): Doc fix.
18569
185702007-09-19 Jason Rumney <jasonr@gnu.org>
18571
18572 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
18573
185742007-09-19 Michaël Cadilhac <michael@cadilhac.name>
18575
18576 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
18577 Fix a C warning regarding variable constness.
18578
18579 * xterm.c (handle_one_xevent): Fix a C warning.
18580
185812007-09-18 Jason Rumney <jasonr@gnu.org>
18582
18583 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
18584
185852007-09-17 Jan Djärv <jan.h.d@swipnet.se>
18586
18587 * gtkutil.c (gdpy_def): New variable.
18588 (xg_initialize): Initialize gdpy_def.
18589 (xg_display_close): If no other display exists, set gdpy_def to a
18590 new connection.
18591
185922007-09-16 Jan Djärv <jan.h.d@swipnet.se>
18593
18594 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
18595 when we have no file name for the icon.
18596 (xg_tool_bar_expose_callback): Remove.
18597 (xg_create_tool_bar): Don't connect expose signal to
18598 xg_tool_bar_expose_callback.
18599 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
18600
186012007-09-16 Andreas Schwab <schwab@suse.de>
18602
18603 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
18604 values instead of zapping them.
18605
186062007-09-14 Glenn Morris <rgm@gnu.org>
18607
18608 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
18609 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
18610 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
18611 scope and rename to omfib_buffer for clarity.
18612 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
18613
186142007-09-14 Kenichi Handa <handa@m17n.org>
18615
18616 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
18617
186182007-09-13 Jason Rumney <jasonr@gnu.org>
18619
18620 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
18621
18622 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
18623
18624 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
18625 (mac_term_init): Call here instead, passing rif.
18626
186272007-09-13 Glenn Morris <rgm@gnu.org>
18628
18629 * s/hpux.h: No longer define `static' as nothing.
18630
186312007-09-13 Johan Bockgård <bojohan@gnu.org>
18632
18633 * callint.c (Fcall_interactively): Remove unused var `fun'.
18634
186352007-09-12 Romain Francoise <romain@orebokech.com>
18636
18637 * window.c (prefer_window_split_horizontally, display_buffer):
18638 Revert 2007-09-08 change.
18639
186402007-09-12 Glenn Morris <rgm@gnu.org>
18641
18642 * alloca.c: Remove file.
18643 * Makefile.in (alloca): Do not undef.
18644 (allocaobj, alloca.o): Remove.
18645 (otherobj): Remove allocaobj.
18646 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
18647 * regex.c (C_ALLOCA): Remove all references and code that was only
18648 used when this was defined.
18649 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
18650 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
18651 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
18652
18653 * Makefile.in (SOURCES, unlock, relock): Delete.
18654
18655 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
18656 (menu_grab_callback): All uses changed.
18657
18658 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
18659 (x_reply_selection_request): All uses changed.
18660
186612007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
18662
18663 * lread.c (load_warn_old_style_backquotes): Change message to look
18664 better when it appears in the middle of byte-compiler messages.
18665
186662007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
18667
18668 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
18669
18670 * xterm.c (x_create_terminal): Add comment.
18671
18672 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
18673
186742007-09-10 Richard Stallman <rms@gnu.org>
18675
18676 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
18677
186782007-09-10 Michaël Cadilhac <michael@cadilhac.name>
18679
18680 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
18681 (DEFUN): Document `intspec', use it instead of `prompt'.
18682
18683 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
18684
18685 * data.c (Finteractive_form): If the interactive specification starts
18686 with a `(', use it as a Lisp form.
18687
18688 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
18689 name and file modes.
18690
18691 * callint.c (Fcall_interactively): Comment fixes.
18692
186932007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
18694
18695 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
18696 and compiled functions.
18697
186982007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
18699
18700 * window.c (prefer_window_split_horizontally): New variable.
18701 (display_buffer): Consider splitting window horizontally depending
18702 on prefer_window_split_horizontally.
18703
187042007-09-08 Eli Zaretskii <eliz@gnu.org>
18705
18706 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
18707
187082007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18709
18710 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
18711
18712 * frame.c (x_set_frame_parameters): Check number is positive before
18713 using XFASTINT.
18714
18715 * window.c (freeze_window_start): Don't presume selected_window holds
18716 a window object.
18717 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
18718
187192007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
18720
18721 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
18722
187232007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
18724
18725 * window.c (Vsplit_window_preferred_function): New var.
18726 (Fdisplay_buffer): Use it.
18727 (syms_of_window): Export, and initialize it.
18728
187292007-09-06 Pixel <pixel@mandriva.com> (tiny change)
18730
18731 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
18732
187332007-09-06 Glenn Morris <rgm@gnu.org>
18734
18735 * gtkutil.c (menu_grab_callback) <cnt>:
18736 * xselect.c (x_reply_selection_request) <cnt>: Move static
18737 variable to file scope.
18738
187392007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
18740
18741 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
18742 consistent values of selected_frame and selected_window.
18743
187442007-09-04 Jason Rumney <jasonr@gnu.org>
18745
18746 * w32console.c (initialize_w32_display): Zero unused hooks.
18747
187482007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18749
18750 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
18751 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
18752
187532007-09-04 Jason Rumney <jasonr@gnu.org>
18754
18755 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
18756 in w32console.c. Set up input. Remove XXX comments that have been
18757 confirmed as correct.
18758
18759 * s/ms-w32.h (MULTI_KBOARD): Define.
18760
18761 * w32console.c (one_and_only_w32cons): Remove.
18762 (initialize_w32_display): Take terminal argument.
18763
18764 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
18765 initialize_w32_display.
18766 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
18767
18768 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
18769
18770 * keyboard.c (discard_mouse_events): Discard it.
18771 (make_lispy_event): Translate it to a lisp event.
18772 (lispy_wheel_names): Add wheel-left and right events.
18773 (syms_of_keyboard): Enlarge wheel_syms.
18774
18775 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
18776 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
18777
18778 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
18779
18780 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
18781 from WM_MOUSEHWHEEL.
18782 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
18783
18784 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
18785 terminal.
18786
18787 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
18788 keyboard for the terminal.
18789
187902007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
18791
18792 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
18793 (Vresume_tty_hook): Rename from Vresume_tty_functions.
18794 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
18795 and resume-tty-function to resume-tty-hook.
18796 (Fsuspend_tty, Fresume_tty): Use new names.
18797
187982007-09-02 Jan Djärv <jan.h.d@swipnet.se>
18799
18800 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
18801 if it starts with "n:".
18802
188032007-08-31 Jan Djärv <jan.h.d@swipnet.se>
18804
18805 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
18806
188072007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
18808
18809 * frame.h:
18810 * frame.c (Qterm_environment_variable): Remove.
18811 (syms_of_frame): Don't init and staticpro it.
18812
18813 * callproc.c (getenv_internal): Remove special case for $TERM.
18814
18815 * callproc.c (Vinitial_environment): New variable.
18816 (set_initial_environment): Initialize it.
18817 (syms_of_callproc): Declare it.
18818 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
18819 TERM under which a process runs is never related to the TERM in which
18820 Emacs is running.
18821
188222007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18823
18824 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
18825 * s/darwin.h: ... do it here.
18826
188272007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
18828
18829 * lisp.h (set_initial_environment): Rename from set_global_environment.
18830
18831 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
18832 removed by mistake on the multi-tty branch.
18833
18834 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
18835 (Fmodify_frame_parameters): Return a value.
18836
18837 * image.c (png_load): Comment-out var only used in commented-out code.
18838
18839 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
18840 before passing it to mark_object.
18841
18842 * xfaces.c (internal_resolve_face_name): Return a value.
18843 (internal_resolve_face_name, resolve_face_name_error): Comment out.
18844
18845 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
18846 (x_icon): Comment-out var only used in commented-out code.
18847
188482007-08-29 Romain Francoise <romain@orebokech.com>
18849
18850 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
18851 QUIT hasn't been provided.
18852
188532007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
18854
18855 * callproc.c (child_setup, getenv_internal): Use the
18856 display-environment-variable and term-environment-variable frame params.
18857 (set_initial_environment): Initialise Vprocess_environment.
18858
18859 * config.in: Disable multi-keyboard support on a mac.
18860
18861 * frame.c (Qterm_environment_variable)
18862 (Qdisplay_environment_variable): New variables.
18863 (syms_of_frame): Intern and staticpro them.
18864 (Fmake_terminal_frame): Disable output method test.
18865
18866 * frame.h: Declare them here.
18867
18868 * macfns.c (x_set_mouse_color): Get rif from the frame.
18869 (x_set_tool_bar_lines): Don't use updating_frame.
18870 (mac_window): Add 2 new parameters for consistency with other systems.
18871 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
18872 frame parameters following what is done in X11 and w32. Don't use
18873 FRAME_MAC_DISPLAY_INFO.
18874 (Fx_open_connection, start_hourglass): Remove window-system check.
18875 (x_create_tip_frame): Get the keyboard from the terminal.
18876
18877 * macmenu.c: Reorder includes.
18878 (Fx_popup_menu): Use terminal specific mouse_position_hook.
18879
18880 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
18881 terminal parameter.
18882 (x_clear_frame): Add a frame parameter.
18883 (note_mouse_movement): Get rif from the frame.
18884 (mac_term_init): Initialize the terminal.
18885 (mac_initialize): Make static and move terminal initialization ...
18886 (mac_create_terminal): ... to this new function.
18887
18888 * macterm.h (struct mac_display_info): Add terminal.
18889 (mac_initialize): Delete declaration.
18890
18891 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
18892
18893 * sysdep.c: Comment out text after #endif.
18894
18895 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
18896 is defined. Better initialize ttys in windows. Use terminal
18897 specific mouse_position_hook.
18898
18899 * termhooks.h (union display_info): Add mac_display_info.
18900
18901 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
18902 Set the default minibuffer frame, window_system and the rest of the
18903 frame parameters following what is done in X11.
18904
18905 * w32term.c (w32_initialize): Make static.
18906
18907 * xselect.c (x_handle_selection_clear): Only access
18908 terminal->kboard when MULTI_KBOARD is defined.
18909
18910 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
18911 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
18912
189132007-08-29 Jason Rumney <jasonr@gnu.org>
18914
18915 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
18916 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
18917
18918 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
18919 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
18920
18921 * keyboard.c (restore_kboard_configuration): Only define when
18922 MULTI_KBOARD defined.
18923
18924 * makefile.w32-in: Update dependancies from Makefile.in.
18925 (OBJ1): Add terminal.$(O)
18926
18927 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
18928 Don't define function body.
18929 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
18930
18931 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
18932
18933 * w32.c (request_sigio, unrequest_sigio): Remove.
18934
18935 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
18936 (w32con_clear_frame, w32con_clear_end_of_line)
18937 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
18938 (w32con_delete_glyphs, w32con_set_terminal_window)
18939 (scroll_line, w32_sys_ring_bell): Add frame arg.
18940 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
18941 Add terminal arg.
18942 (PICK_FRAME): Remove.
18943 (w32con_write_glyphs): Use frame specific terminal coding.
18944 (one_and_only_w32cons): New global variable.
18945 (initialize_w32_display): Use it for storing hooks.
18946 (create_w32cons_output): New function.
18947
18948 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
18949 arg a frame.
18950
18951 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
18952 Set window_system.
18953 (x_set_tool_bar_lines): Don't use updating_frame.
18954 (Fx_create_frame): Set terminal and ref count.
18955 (Fx_open_connection): Remove window-system check.
18956
18957 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
18958
18959 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
18960 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
18961 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
18962 Add frame arg.
18963 (x_delete_terminal, w32_create_terminal): New functions.
18964 (w32_term_init): Create a terminal.
18965 (w32_initialize): Move terminal specific initialization to
18966 w32_create_terminal.
18967
18968 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
18969 (w32_clear_rect, w32_clear_area): Use background from frame.
18970 (w32_display_info): Add terminal.
18971 (w32_sys_ring_bell, x_delete_display): Declare here.
18972
18973 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
18974
18975 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
18976
189772007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
18978
18979 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
18980 Fix get_named_tty calls for the controlling tty.
18981
189822007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
18983
18984 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
18985
189862007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
18987
18988 * term.c (tty_insert_glyphs): Add missing first parameter.
18989
189902007-08-29 Károly Lőrentey <karoly@lorentey.hu>
18991
18992 * buffer.c (Fbuffer_list, Fbury_buffer):
18993 Take frame->buried_buffer_list into account.
18994
18995 * cm.c (current_tty): New variable, for cmputc().
18996 (cmputc): Use it.
18997 (cmcheckmagic): Add tty parameter, look up terminal streams there.
18998 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18999 (cmgoto): Add tty parameter. Pass it on to calccost().
19000 Use emacs_tputs() instead of tputs().
19001
19002 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19003 tputs().
19004 (current_tty): New variable, for cmputc().
19005 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19006
19007 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19008 (internal_condition_case, internal_condition_case_1)
19009 (internal_condition_case_2): Don't abort when x_catching_errors.
19010
19011 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19012 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19013 prevent crashes caused by bogus longjmps in read_char.
19014
19015 * keymap.h (Fset_keymap_parent): Add EXFUN.
19016
19017 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19018 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19019 Remove redundant definition.
19020
19021 * macfns.c (x_set_mouse_color, x_make_gc):
19022 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19023
19024 * w32term.c (x_free_frame_resources):
19025 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19026 (w32_initialize): Use the accessor macros for terminal characteristics.
19027
19028 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19029 Use the accessor macros for terminal characteristics.
19030 * msdos.c (internal_terminal_init): Use the accessor macros for
19031 terminal characteristics.
19032 (ScreenVisualBell, internal_terminal_init):
19033 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19034
19035 * termopts.h (no_redraw_on_reenter): Declare.
19036
19037 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19038 (mark_terminals, mark_ttys): Declare.
19039 (Fgarbage_collect): Call them.
19040 (mark_object): Mark buried_buffer_list.
19041
19042 * prefix-args.c: Include stdlib.h for exit.
19043
19044 * syssignal.h: Add comment.
19045
19046 * indent.c: Include stdio.h.
19047
19048 * window.h (Vinitial_window_system): Declare.
19049 (Vwindow_system): Delete declaration.
19050
19051 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19052
19053 * image.c (lookup_image): Don't initialize `c' until the xasserts
19054 have been run.
19055
19056 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19057 FRAME_FOREGROUND_PIXEL.
19058
19059 * print.c (print_preprocess): Don't lose print_depth levels while
19060 iterating.
19061
19062 * widget.c (update_from_various_frame_slots):
19063 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19064
19065 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19066 frames.
19067 (window_internal_height): Remove bogus make_number call.
19068 (init_window_once): Call make_terminal_frame with two zero parameters.
19069
19070 * fileio.c (Fread_file_name): Update comment.
19071
19072 * callint.c (Fcall_interactively):
19073 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19074 Make sure it is correctly unwound.
19075
19076 * xsmfns.c (x_session_close): New function.
19077
19078 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19079 Delete declarations.
19080
19081 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19082 (x_output): Remove background_pixel and foreground_pixel fields.
19083 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19084 (x_delete_device, x_session_close): Declare.
19085
19086 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19087 (read_filtered_event): Call `read_char' with a local
19088 `wrong_kboard_jmpbuf'.
19089
19090 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19091 Don't call single_kboard_state. Use FRAME_RIF.
19092
19093 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19094 systems.
19095
19096 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19097 (Fframe_with_environment, Fset_input_meta_mode)
19098 (Fset_quit_char): EXFUN.
19099 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19100 (init_sys_modes, reset_sys_modes): Update prototypes.
19101 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19102
19103 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19104 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19105 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19106 Delete declarations.
19107 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19108 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19109 New declarations.
19110
19111 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19112 already does that during init_display(). Call syms_of_keymap
19113 before syms_of_keyboard. Call `syms_of_terminal'.
19114 Call set_initial_environment, not set_process_environment.
19115 (shut_down_emacs): Call reset_all_sys_modes() instead of
19116 reset_sys_modes().
19117
19118 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19119 (internal_resolve_face_name, resolve_face_name_error): New functions.
19120 (resolve_face_name): Protect against loops and errors thrown by Fget.
19121 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19122 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19123
19124 * scroll.c: Replace CURTTY() with local variables throughout the
19125 file (where applicable).
19126 (calculate_scrolling, calculate_direct_scrolling)
19127 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19128 characteristics.
19129
19130 * keymap.c (Vfunction_key_map): Remove.
19131 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19132 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19133 (Vkey_translation_map): Remove.
19134 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19135 (Fdescribe_buffer_bindings)
19136 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19137 Update for terminal-local key-translation-map.
19138
19139 * Makefile.in (callproc.o): Update dependencies.
19140 (lisp, shortlisp): Add termdev.elc.
19141 (obj): Add terminal.o.
19142 (terminal.o): Add dependencies.
19143 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19144 (data.o, fns.o): Add termhooks.h dependency.
19145 (SOME_MACHINE_LISP): Add dnd.elc.
19146 (minibuf.o): Fix typo.
19147 Update dependencies.
19148
19149 * data.c (do_symval_forwarding, store_symval_forwarding)
19150 (find_symbol_value): Use the selected frame's keyboard, not
19151 current_kboard.
19152
19153 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19154 Vwindow_system.
19155
19156 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19157 Fmenu_bar_open.
19158 (syms_of_xmenu): Update defsubr.
19159 (mouse_position_for_popup, Fx_popup_menu)
19160 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19161 (set_frame_menubar, free_frame_menubar)
b97439ce 19162 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19163 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19164 an X frame.
19165
19166 * xselect.c (x_own_selection): Abort if not an X frame.
19167 (some_frame_on_display): Check if it is an X frame.
19168 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19169
19170 * coding.c: Include frame.h and termhooks.h.
19171 (terminal_coding, keyboard_coding): Delete.
19172 (Fset_terminal_coding_system_internal)
19173 (Fset_keyboard_coding_system_internal)
19174 (Fkeyboard_coding_system)
19175 (Fterminal_coding_system): Add a terminal parameter.
19176 Get terminal_coding from the terminal.
19177 (init_coding_once): Don't call setup_coding_system here.
19178
19179 * dispextern.h (set_scroll_region, turn_off_insert)
19180 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19181 (tty_clear_end_of_line, tty_setup_colors)
19182 (delete_tty, updating_frame)
19183 (produce_special_glyphs, produce_glyphs, write_glyphs)
19184 (insert_glyphs): Remove.
19185 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19186 (tty_turn_off_highlight, get_tty_size): Add declaration.
19187 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19188
19189 * frame.h (enum output_method): Add output_initial.
19190 (struct x_output): Delete.
19191 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19192 Access foreground_pixel and background_pixel directly from the frame.
19193 (tty_display): Delete.
19194 (struct frame): Add buried_buffer_list, foreground_pixel,
19195 background_pixel and terminal. Delete kboard.
19196 (union output_data): Add tty.
19197 (FRAME_KBOARD): Get the kboard from the terminal.
19198 (FRAME_INITIAL_P): New macro.
19199 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19200 (Qterm_environment_variable, Qdisplay_environment_variable)
19201 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19202 New declarations.
19203
19204 * termchar.h (tty_output, tty_display_info): New structures.
19205 (tty_list): Declare.
19206 (FRAME_TTY, CURTTY): New macros.
19207 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19208 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19209 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19210 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19211
19212 * callproc.c: Include frame.h and termhooks.h, for terminal
19213 parameters.
19214 (add_env): New function.
19215 (child_setup): Use it.
19216 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19217 (getenv_internal): Fix get_terminal_param call.
19218 (Fgetenv_internal, egetenv): Update doc.
19219 (syms_of_callproc): Initialize Vprocess_environment to nil.
19220 Register and initialize them. Remove obsolete defvars. Update doc
19221 strings.
19222 (child_setup): Handle Vlocal_environment_variables.
19223 (getenv_internal): Add terminal parameter.
19224 Handle Vlocal_environment_variables.
19225 (Fgetenv_internal): Add terminal parameter.
19226 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19227 environment in a frame (not terminal) parameter. Update doc strings.
19228 (set_initial_environment): Rename from set_global_environment.
19229 Store Emacs environment in initial frame parameter.
19230
19231 * xdisp.c (redisplay_internal): Update references to
19232 `previous_terminal_frame'.
19233 (display_mode_line, Fformat_mode_line): Replace calls to
19234 `push_frame_kboard' with `push_kboard'.
19235 (get_glyph_string_clip_rects): Add extra parentheses and
19236 braces to prevent compiler warnings.
19237 (calc_pixel_width_or_height): Add xassert to check that the
19238 frame is alive. Don't call `lookup_image' on a termcap frame.
19239 (message2_nolog, message3_nolog, redisplay_internal)
19240 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19241 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19242 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19243 (Fx_display_pixel_width, Fx_display_pixel_height)
19244 (Fx_display_planes, Fx_display_color_cells)
19245 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19246 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19247 (Fx_display_backing_store, Fx_display_visual_class)
19248 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19249 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19250
19251 * xfns.c (x_set_foreground_color x_set_background_color)
19252 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19253 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19254 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19255 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19256 terminal that is being deleted.
19257 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19258 frame parameter, and make sure it overrides any user-supplied setting.
19259 (Fx_close_connection, Fx_synchronize): Unify argument names with
19260 the rest of the DEFUNs.
19261
19262 * dispnew.c (Fsend_string_to_terminal): Update call to
19263 `get_tty_terminal'.
19264 (Fredraw_frame, Fsend_string_to_terminal)
19265 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19266 FRAME_TERMCAP_P and FRAME_TTY.
19267 (window_change_signal): Don't believe width/height values that are
19268 impossibly small.
19269 (Vinitial_window_system): Rename from Vwindow_system.
19270 (termscript, Wcm, rif): Delete.
19271
19272 * termhooks.h (struct terminal): New struct containing the
19273 previously global text display hooks and new members NAME,
19274 DELETED and PARAM_ALIST.
19275 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19276 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19277 (FRAME_RIF): New macros.
19278 (get_terminal_param, get_device): New declarations.
19279 (termscript): Delete declaration.
19280
19281 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19282 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19283 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19284 FRAME_FOREGROUND_PIXEL.
19285 (x_fully_uncatch_errors): Disable definition.
19286 (x_scroll_bar_expose): Fix reference to foreground pixel.
19287 (XTread_socket): Disable loop on all X displays.
19288 (x_delete_terminal): Don't set terminal->deleted and let
19289 delete_terminal delete the frames on the terminal.
19290 (x_delete_display): Doc update to reflect changes in
19291 delete_terminal.
19292 (x_display_info) <terminal>: Move member earlier in the struct.
19293 (deleting_tty): Remove old variable.
19294 (Fsuspend_tty): Call clear_tty_hooks.
19295 (Fresume_tty, init_tty): Call set_tty_hooks.
19296 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19297 errors on X frames.
19298 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19299 (handle_one_xevent): Initialize `f' to NULL.
19300 (x_delete_terminal, x_create_terminal): New functions.
19301 (XTset_terminal_modes, XTreset_terminal_modes)
19302 (XTread_socket, x_connection_closed, x_term_init)
19303 (x_term_init, x_delete_display): Add terminal parameter.
19304 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19305 X connections.
19306
19307 * frame.c: Include termchar.h.
19308 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19309 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19310 (Qdisplay_environment_variable): New vars.
19311 (Fframep): Deal with output_initial.
19312 (Fframe-live-p): Doc fix.
19313 (Fwindow-system): New function.
19314 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19315 (make_terminal_frame): Don't create frames on a terminal that is
19316 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19317 (store_frame_param): Check for found_for_frame before calling XFRAME.
19318 (Fmake_terminal_frame): Handle NULL tty names correctly.
19319 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19320 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19321 frames to refer to a deleted frame in their 'environment parameter.
19322 (Fframe_with_environment): New function.
19323 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19324 (get_future_frame_param): New function.
19325 (Fmake_terminal_frame): Use it.
19326 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19327
19328 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19329 * sysdep.c (reset_sys_modes): Update for renames.
19330
19331 * keyboard.c (tty_read_avail_input): New function.
19332 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19333 (syms_of_keyboard): Defsubr them.
19334 (Fset_input_meta_mode, Fset_quit_char): New functions.
19335 (Fset_input_mode): Split to above functions.
19336 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19337 parameter. Use it in call to `read_char'.
19338 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19339 Set wrong_kboard_jmpbuf correctly in recursive calls.
19340 Use current_kboard to access Vkeyboard_translate_table.
19341 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19342 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19343 Update longjmp invocations. Remember the original current_kboard,
19344 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19345 changes it. Comment out unnecessary calls to
19346 `record_single_kboard_state' and `any_kboard_state'.
19347 Update recursive calls.
19348 (wrong_kboard_jmpbuf): Remove global variable.
19349 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19350 Handle deleted interrupted_kboards correctly; that is a legal
19351 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19352 and read_char calls. Abort if interrupted_kboard died in read_char.
19353 (any_kboard_state, single_kboard_state)
19354 (push_frame_kboard): Remove function.
19355 (pop_kboard): Switch out of single_kboard mode if the kboard has
19356 been deleted. Remove unused variable. Help debugging by not
19357 changing current_kboard unnecessarily. Set current_kboard to the
19358 kboard of the selected frame when the stored kboard object has
19359 been deleted before pop_kboard.
19360 (temporarily_switch_to_single_kboard): Change first parameter to a
19361 frame pointer. Throw an error when caller wants to change kboards
19362 while in single_kboard mode. Don't push_kboard if we weren't in
19363 single kboard state. Don't pop_kboard if we popped into any
19364 kboard state.
19365 (restore_kboard_configuration): Abort if pop_kboard changed the
19366 kboard in single_kboard mode. Call pop_kboard only after setting
19367 up single_kboard mode.
19368 (Frecursive_edit): Switch to single_kboard mode only in nested
19369 command loops.
19370 (cmd_error, command_loop, command_loop_1, timer_check):
19371 Comment out unnecessary call to `any_kboard_state' and
19372 `record_single_kboard_state'.
19373 (delete_kboard): Exit single_kboard mode if we have just deleted
19374 that kboard. Use FRAME_KBOARD.
19375 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19376 `fatal_error_signal'.
19377 (record_single_kboard_state): Don't push_kboard if we weren't in
19378 single kboard state. Don't pop_kboard if we popped into any
19379 kboard state.
19380 (push_frame_kboard): Rename to push_kboard.
19381 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19382 (read_avail_input): Read input from all terminals.
19383 (mark_kboards): Also mark Vkeyboard_translate_table.
19384 (kbd_buffer_store_event_hold): Simplify condition.
19385 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19386 (Vkeyboard_translate_table): Move to struct kboard.
19387 (init_kboard): Initialize Vkeyboard_translate_table.
19388 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19389 Vkeyboard_translate_table. Update doc strings. Update docs of
19390 local-function-key-map and function-key-map.
19391
19392 * terminal.c: New file.
19393
19394 * term.c: Include errno.h.
19395 (Vring_bell_function, device_list, initial_device)
19396 (next_device_id, ring_bell, update_begin, update_end)
19397 (set_terminal_window, cursor_to, raw_cursor_to)
19398 (clear_to_end, clear_frame, clear_end_of_line)
19399 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19400 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19401 (syms_of_term): Move their initialization to terminal.c.
19402 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19403 (Ftty_display_color_cells)
19404 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19405 (clear_tty_hooks, set_tty_hooks)
19406 (init_tty, maybe_fatal): New functions.
19407 (Ftty_type): Return nil if terminal is not on a tty instead of
19408 throwing an error. Doc update.
19409 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
19410 Doc update. Initialize new subrs and variables.
19411 (delete_tty): Use terminal->deleted.
19412 (tty_set_terminal_modes): Rename from set_terminal_modes.
19413 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
19414 (set_scroll_region): Rename to `tty_set_scroll_region'.
19415 (turn_on_insert): Rename to `tty_turn_on_insert'.
19416 (turn_off_insert): Rename to `tty_turn_off_insert'.
19417 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
19418 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
19419 (toggle_highligh): Rename to `tty_toggle_highlight'.
19420 (background_highlight): Rename to `tty_background_highlight'.
19421 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
19422 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
19423 (tty_set_scroll_region, tty_background_highlight)
19424 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
19425 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
19426 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
19427 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
19428 Add static modifier.
19429 (tty_reset_terminal_modes, tty_set_terminal_window)
19430 (tty_set_scroll_region, tty_background_highlight)
19431 (tty_highlight_if_desired, tty_cursor_to)
19432 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
19433 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
19434 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
19435 renames.
19436
194372007-08-28 Jan Djärv <jan.h.d@swipnet.se>
19438
19439 * keyboard.c: Qrtl is new.
19440 (parse_tool_bar_item): Handle :rtl keyword.
19441 (syms_of_keyboard): Intern :rtl keyword.
19442
19443 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
19444
19445 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
19446 so no Lisp code is executed.
19447 (file_for_image, find_rtl_image): New functions.
19448 (xg_get_image_for_pixmap): Use file_for_image.
19449 (update_frame_tool_bar): If direction is RTL, use RTL image if
19450 defined. Use Gtk stock images if defined.
19451
194522007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19453
19454 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
19455 for nonexistent or zero-width glyph in composition glyph.
19456
194572007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
19458
19459 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
19460
19461 * xdisp.c (Finvisible_p): New function.
19462 (syms_of_xdisp): defsubr it.
19463
194642007-08-24 Juanma Barranquero <lekktu@gmail.com>
19465
19466 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
19467 Doc fixes.
19468
194692007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19470
19471 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
19472
194732007-08-24 Martin Rudalics <rudalics@gmx.at>
19474
19475 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
19476 whether decoding has modified buffer contents.
19477
194782007-08-24 Jason Rumney <jasonr@gnu.org>
19479
19480 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
19481 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
19482 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
19483 (init_svg_functions) [HAVE_NTGUI]: New function.
19484 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
19485 (svg_load_image): Use them.
19486 (svg_load_image) [HAVE_NTGUI]: Implement background.
19487
194882007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19489
19490 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
19491 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
19492 (LIBX): Remove @RSVG_LIBS@.
19493 (LIBES): Add $(RSVG_LIBS).
19494
19495 * image.c (svg_load_image): Blend with specified background if exists.
19496 Use IMAGE_BACKGROUND. Add Mac OS Support.
19497
19498 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
19499 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
19500 Remove macros.
19501 [MAC_OSX] (socket_callback): Do nothing.
19502 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
19503 ReceiveNextEvent.
19504 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
19505 socket_callback.
19506 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
19507
195082007-08-22 Glenn Morris <rgm@gnu.org>
19509
19510 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
19511
195122007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
19513
19514 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
19515
19516 * image.c: Add support for SVG images. Some additional comments
19517 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
19518 (svg_image_p): New function to test for SVG image.
19519 (svg_load): New function to load SVG image.
19520 (svg_load_image): New function, helper for svg_load.
19521 (Qsvg): New Lisp_object.
19522 (svg_keyword_index): New enum.
19523 (svg_format): New static `image_keyword' struct.
19524 (svg_type): New static `image_type' struct.
19525 (librsvg/rsvg.h): Include it.
19526
195272007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
19528
19529 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
19530
195312007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
19532
19533 * lread.c (Qold_style_backquotes): New var.
19534 (syms_of_lread): Init and staticpro it.
19535 (load_warn_old_style_backquotes): New fun.
19536 (Fload): Use them to warn about old style backquotes.
19537 (end_of_file_error, Fload): Remove unused vars.
19538
19539 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
19540
19541 * lread.c (Vold_style_backquotes): New var.
19542 (syms_of_lread): Init and export it to Elisp.
19543 (read1): Set it when we find an old-style (back)quote.
19544
195452007-08-22 Jason Rumney <jasonr@gnu.org>
19546
19547 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
19548
195492007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
19550
19551 * puresize.h (BASE_PURESIZE): Increase to 1140000.
19552
195532007-08-19 Richard Stallman <rms@gnu.org>
19554
19555 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
19556
195572007-08-19 Andreas Schwab <schwab@suse.de>
19558
19559 * alloc.c (pure): Round PURESIZE up.
19560
195612007-08-17 Jan Djärv <jan.h.d@swipnet.se>
19562
19563 * xterm.c (handle_one_xevent): Remove check that mouse click is in
19564 active frame.
19565
195662007-08-16 Richard Stallman <rms@gnu.org>
19567
19568 * eval.c (Fcommandp): Add parens to clarify.
19569
19570 * minibuf.c (Fall_completions): Use enum for type of table.
19571
19572 * emacs.c (USAGE2): Improve text.
19573
195742007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
19575
19576 * term.c (tty_default_color_capabilities): Declare static
19577 variables in file scope, to avoid HPUX compiler problem.
19578
195792007-08-13 Jan Djärv <jan.h.d@swipnet.se>
19580
19581 * gtkutil.c (update_frame_tool_bar): Use -1 as index
19582 to gtk_toolbar_insert.
19583
195842007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
19585
19586 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
19587
19588 * insdel.c (reset_var_on_error): New fun.
19589 (signal_before_change, signal_after_change):
19590 Use it to reset (after|before)-change-functions to nil in case of error.
19591 Bind inhibit-modification-hooks to t.
19592 Don't bind (after|before)-change-functions to nil while they run.
19593
195942007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19595
19596 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
19597 filling pixmap with stippled background.
19598
195992007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19600
19601 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
19602 Don't use invisible frame as parent window for repositioning.
19603
196042007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
19605
19606 * print.c (new_backquote_output): Rename from old_backquote_output.
19607 (print): Inverse its logic (according to its name) so as to match the
19608 behavior of new_backquote_flag in lread.c.
19609
196102007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19611
19612 * gmalloc.c (posix_memalign): New function.
19613
19614 * macterm.c (frame_highlight, frame_unhighlight): Don't call
19615 ActivateControl/DeactivateControl here.
19616 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
19617 frame-notice-user-settings is non-nil.
19618 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
19619 for kEventParamFMFontStyle.
19620 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
19621 mac_pass_command_to_system and mac_pass_control_to_system here.
19622 (XTread_socket): Call ActivateControl/DeactivateControl here.
19623 (XTread_socket) [TARGET_API_MAC_CARBON]:
19624 Check mac_pass_command_to_system and mac_pass_control_to_system here.
19625 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
19626 for window repositioning.
19627
196282007-08-08 Glenn Morris <rgm@gnu.org>
19629
19630 * Replace `iff' in doc-strings and comments.
19631
196322007-08-07 Chong Yidong <cyd@stupidchicken.com>
19633
19634 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
19635
196362007-08-07 Martin Rudalics <rudalics@gmx.at>
19637
19638 * fileio.c (Finsert_file_contents): Run format-decode and
19639 after_insert_file_functions on entire buffer when REPLACE is
19640 non-nil and inhibit modification_hooks and point_motion_hooks.
19641 For consistency, run after_insert_file_functions iff something
19642 got inserted. Move signal_after_change and update_compositions
19643 after code running after_insert_file_functions. Make sure that
19644 undo_list doesn't record intermediate steps of the decoding process.
19645
196462007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19647
19648 * emacs.c (main)
19649 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
19650 Call malloc_enable_thread on interactive startup.
19651
19652 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
19653 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
19654 [USE_PTHREAD]: Conditionalize with it.
19655 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
19656 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
19657 New functions.
19658
196592007-08-06 Chong Yidong <cyd@stupidchicken.com>
19660
19661 * xdisp.c (redisplay_window): When restoring original buffer
19662 position, make sure it is still valid.
19663
19664 * image.c (png_load): Ignore png-supplied background color.
19665
196662007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19667
19668 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
19669 Use kCFAbsoluteTimeIntervalSince1970.
19670
19671 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
19672 New variable.
19673 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
19674 event loop should be quit.
19675 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
19676 Quit dialog event loop if quit_dialog_event_loop is set.
19677
19678 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
19679 (Selection): New typedef. Use instead of ScrapRef.
19680 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
19681 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
19682 (mac_clear_selection): Rename from clear_scrap.
19683 (get_flavor_type_from_symbol): New argument SEL and subsume function of
19684 scrap_has_target_type. All uses changed.
19685 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
19686 (mac_selection_has_target_p): New functions.
19687 (mac_put_selection_value): Rename from put_scrap_string.
19688 (mac_get_selection_value): Rename from get_scrap_string.
19689 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
19690 (put_scrap_private_timestamp, scrap_has_target_type)
19691 (get_scrap_private_timestamp): Remove functions.
19692 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
19693 (x_own_selection, x_get_local_selection):
19694 Use mac_valid_selection_value_p.
19695 (x_own_selection): Don't use put_scrap_private_timestamp.
19696 Record OWNERSHIP-INFO into Vselection_alist instead.
19697 (x_get_local_selection): Don't check type if request is local.
19698 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
19699 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
19700
197012007-08-04 Jan Djärv <jan.h.d@swipnet.se>
19702
19703 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
19704 add comment explaining why.
19705
197062007-08-03 Richard Stallman <rms@gnu.org>
19707
19708 * fileio.c (Fvisited_file_modtime): Use make_time.
19709
197102007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
19711
19712 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
19713 build.
19714
197152007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
19716
19717 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
19718
197192007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
19720
19721 * puresize.h (BASE_PURESIZE): Increase to 1130000.
19722
197232007-07-30 Richard Stallman <rms@gnu.org>
19724
19725 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
19726
197272007-07-29 Jan Djärv <jan.h.d@swipnet.se>
19728
19729 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
19730
197312007-07-28 Nick Roberts <nickrob@snap.net.nz>
19732
19733 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
19734 remote default-directory.
19735
19736 * buffer.c (mode-line-format): Update doc string.
19737
197382007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19739
19740 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
19741 scroll bar gap.
19742 (x_scroll_bar_create): Set bar->fringe_extended_p.
19743 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
19744 on frame edge. Check fringe background extension. Don't clear
19745 extended fringe background area.
19746
19747 * w32term.h (struct scroll_bar): New member fringe_extended_p.
19748 (w32_fill_area): Enclose multiple statements with do ... while (0).
19749
19750 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
19751 Extend fringe background to scroll bar gap.
19752 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
19753 Set bar->fringe_extended_p.
19754 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19755 Put leftmost/rightmost scroll bars on frame edge. Check fringe
19756 background extension. Don't clear extended fringe background area.
19757
19758 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
19759 New member fringe_extended_p.
19760
197612007-07-25 Glenn Morris <rgm@gnu.org>
19762
19763 * Relicense all FSF files to GPLv3 or later.
19764
19765 * COPYING: Switch to GPLv3.
19766
197672007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
19768
19769 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
19770
19771 * data.c (Finteractive_form): Check for the presence of an
19772 `interactive-form' symbol property more thoroughly.
19773
19774 * data.c (Finteractive_form): Use an `interactive-form' property if
19775 present, analogous to the function-documentation property.
19776
197772007-07-24 Jason Rumney <jasonr@gnu.org>
19778
19779 * w32fns.c (x_real_positions): Get real position from OS instead of
19780 calculating it.
19781
197822007-07-23 Jason Rumney <jasonr@gnu.org>
19783
19784 * filelock.c (current_lock_owner): Allow for @ sign in username.
19785
197862007-07-22 Nick Roberts <nickrob@snap.net.nz>
19787
19788 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
19789 remote default-directory.
19790
19791 * buffer.c (mode-line-format): Describe above case in doc string.
19792
197932007-07-20 Eli Zaretskii <eliz@gnu.org>
19794
19795 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
19796 Define if not defined.
19797
197982007-07-18 Jason Rumney <jasonr@gnu.org>
19799
19800 * w32proc.c (w32_executable_type): Handle 64 bit executables.
19801
198022007-07-18 Richard Stallman <rms@gnu.org>
19803
19804 * data.c (Fsetq_default): Doc fix.
19805
19806 * eval.c (Fsetq): Doc fix.
19807
198082007-07-18 Juanma Barranquero <lekktu@gmail.com>
19809
19810 * coding.c (Ffind_operation_coding_system):
19811 * eval.c (For, Fand): Doc fixes.
19812 Reported by Johan Bockgård.
19813
198142007-07-18 Jan Djärv <jan.h.d@swipnet.se>
19815
19816 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
19817
19818 * xterm.h: Declare x_ewmh_activate_frame.
19819
19820 * xterm.c (x_ewmh_activate_frame): New function.
19821 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
19822
198232007-07-17 Martin Rudalics <rudalics@gmx.at>
19824
19825 * window.c (Fdisplay_buffer): If largest or LRU window is the
19826 only window, split it even if it is not eligible for splitting.
19827 This restores the original behavior broken by the 2007-07-15
19828 change.
19829
198302007-07-17 Glenn Morris <rgm@gnu.org>
19831
19832 * abbrev.c (abbrev_check_chars): New function.
19833 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
19834 Call abbrev_check_chars to check abbrev characters are word
19835 constituents. Doc fix.
19836
198372007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
19838
19839 * process.c (Fstart_process, Fmake_network_process)
19840 (read_process_output): Fix up last changes.
19841
198422007-07-16 Eli Zaretskii <eliz@gnu.org>
19843
19844 * makefile.w32-in (clean): Don't delete *~.
19845
198462007-07-16 Andreas Schwab <schwab@suse.de>
19847
19848 * window.c (Fdisplay_buffer): Use NILP.
19849 (Fset_window_scroll_bars): Likewise.
19850
198512007-07-15 Martin Rudalics <rudalics@gmx.at>
19852
19853 * window.c (window_min_size_2): New function.
19854 (window_min_size_1, size_window, Fdisplay_buffer)
19855 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
19856 windows without mode- or header-lines when window-min-height is
19857 too small.
19858 (size_window): Reset nodelete_p after testing it, following an
19859 earlier note by Kim F. Storm.
19860 (display_buffer): Do not set split_height_threshold to twice the
19861 value of window_min_height to avoid changing the value of a
19862 customizable variable. Rather explicitly check whether the
19863 height of the window that shall be splitted is at least as large
19864 as split_height_threshold.
19865 (Fwindow_full_width_p): New defun.
19866 (syms_of_window): Defsubr it.
19867
19868 * window.h: Add EXFUN for Fwindow_full_width_p.
19869
198702007-07-14 Jason Rumney <jasonr@gnu.org>
19871
19872 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
19873
198742007-07-14 Richard Stallman <rms@gnu.org>
19875
19876 * eval.c (maybe_call_debugger): New function.
19877 (find_handler_clause): Use maybe_call_debugger.
19878 Call it when the handler says `debug'.
19879 Eliminate DEBUGGER_VALUE_PTR.
19880 (Fsignal): Eliminate debugger_value.
19881 (Qdebug): New variable.
19882 (syms_of_eval): Initialize it.
19883
198842007-07-14 Juanma Barranquero <lekktu@gmail.com>
19885
19886 * eval.c (Fprogn):
19887 * keyboard.c (Ftrack_mouse):
19888 * print.c (Fwith_output_to_temp_buffer):
19889 * window.c (Fsave_window_excursion): Doc fix.
19890
198912007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
19892
19893 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
19894
198952007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
19896
19897 * process.h (struct Lisp_Process): Turn slots infd, outfd,
19898 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
19899 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
19900 read_output_delay, and read_output_skip from Lisp_Objects to ints.
19901 Remove unused encoding_carryover.
19902 * process.c: Adjust all functions accordingly.
19903
199042007-07-12 Richard Stallman <rms@gnu.org>
19905
19906 * term.c: Include unistd.h only if HAVE_UNISTD_H.
19907
199082007-07-11 Jason Rumney <jasonr@gnu.org>
19909
19910 * makefile.w32-in (LIBS): Include OLE32.
19911
19912 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
19913 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
19914
199152007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
19916
19917 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
19918 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
19919 from a Lisp_Object into a bare pointer.
19920 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
19921 Adjust the code correspondingly.
19922
19923 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
19924
19925 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
19926 (term_show_mouse_face): Remove unused var `j'.
19927 (handle_one_term_event): Remove unused vars `i' and `j'.
19928 Don't cast return value of ttyname since it's not necessary.
19929
199302007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
19931
19932 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
19933 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
19934
19935 * fns.c (map_char_table): Use an array of int for `indices' rather than
19936 an array of Lisp_Objects (which are only ever integers anyway).
19937 (Fmap_char_table): Update caller.
19938 * lisp.h: Update prototype.
19939 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
19940 * fontset.c (Ffontset_info):
19941 * casetab.c (set_case_table): Update callers.
19942
19943 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
19944
19945 * keymap.c (struct accessible_keymaps_data)
19946 (struct where_is_internal_data): New structures.
19947 (accessible_keymaps_1, where_is_internal_1): Use them to change
19948 interface to adhere to the one used by map_keymap.
19949 (Faccessible_keymaps, where_is_internal): Use map_keymap.
19950 (accessible_keymaps_char_table, where_is_internal_2): Remove.
19951
19952 * keymap.h (map_keymap_function_t): More informative prototype.
19953
199542007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
19955
19956 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
19957 (looking_at_1): Don't change search_regs and last_thing_searched
19958 if `inhibit-changing-match-data' is non-nil.
19959 (string_match_1, search_buffer, set_search_regs): Likewise.
19960 (syms_of_search): Add Lisp level definition for
19961 `inhibit-changing-match-data' and set it to nil.
19962 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
19963 start and end of the match, instead of using values in search_regs.
19964
199652007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
19966
19967 * minibuf.c (Fcompleting_read): New value `confirm-only'
19968 for `require-match'.
19969
199702007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
19971
19972 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
19973 part of the 2007-06-27 change to syms_of_fileio.
19974
199752007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19976
19977 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
19978 Check WINDOWP before using XWINDOW. Consolidate return statements.
19979
199802007-06-27 Richard Stallman <rms@gnu.org>
19981
19982 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
19983
199842007-06-27 Juanma Barranquero <lekktu@gmail.com>
19985
19986 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
19987
199882007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19989
19990 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
19991 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
19992 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
19993 (_free_internal, memalign): Use them.
19994 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
19995 Initialize to PTHREAD_MUTEX_INITIALIZER.
19996 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
19997 (morecore_nolock): Rename from morecore. All uses changed.
19998 Use only nolock versions of internal allocation functions.
19999 (_malloc_internal_nolock, _realloc_internal_nolock)
20000 (_free_internal_nolock): New functions created from
20001 _malloc_internal, _realloc_internal, and _free_internal.
20002 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20003 Copy hook value to automatic variable before its use.
20004 (memalign): Copy hook value to automatic variable before its use.
20005
200062007-06-26 Kenichi Handa <handa@m17n.org>
20007
20008 * coding.c (Ffind_operation_coding_system): Docstring improved.
20009 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20010
200112007-06-25 David Kastrup <dak@gnu.org>
20012
20013 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20014 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20015 cater for additional parameter.
20016
20017 * keymap.h: Adjust number of parameters to `current-active-maps'.
20018
20019 * doc.c (Fsubstitute_command_keys): Adjust call of
20020 `current-active-maps'.
20021
200222007-06-25 David Kastrup <dak@gnu.org>
20023
20024 * callint.c (Fcall_interactively): Make the parsing of interactive
20025 specs somewhat more readable.
20026
200272007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20028
20029 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20030 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20031 if extended background has already been filled.
20032
200332007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20034
20035 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20036 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20037
20038 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20039 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20040 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20041 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20042 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20043 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20044 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20045 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20046 Run timers during dialog popup.
20047 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20048
200492007-06-21 Jason Rumney <jasonr@gnu.org>
20050
20051 * image.c (convert_mono_to_color_image): Swap fore and background.
20052
200532007-06-20 Jason Rumney <jasonr@gnu.org>
20054
20055 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20056 (w32_free_bdf_font): Unmap memory not handle.
20057
200582007-06-20 Sam Steingold <sds@gnu.org>
20059
20060 * gmalloc.c (__morecore): Fix the declaration to comply with the
20061 definition.
20062
200632007-06-20 Juanma Barranquero <lekktu@gmail.com>
20064
20065 * w32term.c (w32_delete_display): Remove leftover declaration.
20066 (w32_define_cursor, w32_initialize): Make static.
20067
20068 * w32.c (_wsa_errlist): Fix typo in error message.
20069 (init_environment): Ignore any environment variable from the
20070 registry having a null value.
20071
200722007-06-20 Glenn Morris <rgm@gnu.org>
20073
20074 * Makefile.in (LIBGIF): Default to -lgif.
20075
200762007-06-17 Jason Rumney <jasonr@gnu.org>
20077
20078 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20079 unicode strings.
20080
200812007-06-16 Juanma Barranquero <lekktu@gmail.com>
20082
20083 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20084 Fix typo in docstring.
20085
200862007-06-16 Eli Zaretskii <eliz@gnu.org>
20087
20088 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20089 and their keybindings.
20090
200912007-06-15 Chong Yidong <cyd@stupidchicken.com>
20092
20093 * composite.c (update_compositions): Fix last fix.
20094
200952007-06-14 Jason Rumney <jasonr@gnu.org>
20096
20097 * w32.c (get_process_times_fn): New function pointer.
20098 (globals_of_w32): Intialize it if present in kernel32.dll.
20099 (w32_get_internal_run_time): New function.
20100
20101 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20102
201032007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20104
20105 * composite.c (update_compositions): Check the validness of
20106 compositions.
20107
201082007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20109
20110 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20111 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20112
20113 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20114 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20115
20116 * macgui.h (USE_MAC_TOOLBAR): New define.
20117
20118 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20119 Return immediately unless popup is activated.
20120
20121 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20122 background to scroll bar gap.
20123 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20124 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20125 scroll bars on frame edge. Check fringe background extension.
20126 Don't clear extended fringe background area.
20127 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20128 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20129 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20130 [USE_MAC_TOOLBAR]: New macros.
20131 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20132 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20133 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20134 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20135 [USE_MAC_TOOLBAR]: New functions.
20136 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20137 manually if previous repositioning has failed.
20138 (mac_handle_keyboard_event): Use precomputed event kind.
20139 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20140 as tool bar item click. Handle mouse movement over tool bar items.
20141
20142 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20143 toolbar_win_gravity.
20144 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20145 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20146 Add externs.
20147
20148 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20149 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20150
201512007-06-14 Chong Yidong <cyd@stupidchicken.com>
20152
20153 * image.c (search_image_cache): Remove unused variable.
20154
201552007-06-13 Chong Yidong <cyd@stupidchicken.com>
20156
20157 * xfns.c, xmenu.c: Link to xaw3d if available.
20158
201592007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20160
20161 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20162 frame_foreground and frame_background.
20163
20164 * image.c (lookup_image): Save frame foreground and background colors.
20165 (search_image_cache): Check if saved and current frame colors match.
20166
201672007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20168
20169 * regex.c (regex_compile): Remove the `regnum' counter.
20170 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20171
201722007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20173
20174 * term.c: Include intervals.h to declare Fget_text_property.
20175
201762007-06-10 Jason Rumney <jasonr@gnu.org>
20177
20178 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20179
201802007-06-08 Juanma Barranquero <lekktu@gmail.com>
20181
20182 * callint.c (Fcall_interactively):
20183 * editfns.c (Fdelete_and_extract_region):
20184 * fileio.c (Fread_file_name):
20185 * fns.c (Fmapconcat):
20186 * keyboard.c (cmd_error_internal):
20187 * keymap.c (Fkey_description):
20188 * lread.c (openp):
20189 * minibuf.c (read_minibuf):
20190 * search.c (wordify):
20191 * sunfns.c (sel_read):
20192 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20193 * xfns.c (x_default_scroll_bar_color_parameter):
20194 * xmenu.c (menu_help_callback):
20195 * xselect.c (Fx_get_atom_name):
20196 * xterm.c (x_term_init): Use empty_unibyte_string.
20197
201982007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20199
20200 * alloc.c (init_strings): Initialize canonical empty strings.
20201 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20202 canonical empty string when the requested size is 0.
20203
20204 * emacs.c (empty_unibyte_string): Rename from empty_string.
20205 (empty_multibyte_string): New canonical empty string.
20206 (syms_of_emacs): Don't initialize empty_string.
20207
20208 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20209 string, if appropriate.
20210 (empty_unibyte_string, empty_multibyte_string): New externs.
20211 (empty_string): Remove extern.
20212
20213 * lread.c (syms_of_lread): Use empty_unibyte_string.
20214
202152007-06-07 Jason Rumney <jasonr@gnu.org>
20216
20217 * s/ms-w32.h: Don't define HAVE_TZNAME.
20218
20219 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20220
202212007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20222
20223 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20224
20225 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20226 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20227
20228 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20229 Don't call next handler.
20230 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20231 Remove argument. Install handler to application.
20232 (set_frame_menubar): Don't change deep_p.
20233 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20234 FRAME_OUTER_TO_INNER_DIFF_Y.
20235 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20236 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20237 [HAVE_DIALOGS]: New macros.
20238 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20239 Use them.
20240 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20241
20242 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20243 init_service_handler. All callers changed. Return OSStatus value.
20244
20245 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20246 All callers changed so as not to call SetPortWindowPort.
20247 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20248 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20249 mac_draw_string_common.
20250 (mac_draw_image_string_qd): Likewise.
20251 (mac_draw_string_common): Use them. Add INLINE.
20252 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20253 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20254 GetGlobalMouse.
20255 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20256 and FRAME_OUTER_TO_INNER_DIFF_Y.
20257 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20258 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20259 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20260 repositioning window to mac_handle_window_event.
20261 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20262 saving window location to mac_handle_window_event
20263 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20264 (install_menu_target_item_handler): Remove argument in extern.
20265 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20266 Also accept command events.
20267 (do_keystroke): New function created from XTread_socket.
20268 (init_command_handler): Remove functions.
20269 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20270 and save window location by kEventWindowShowing and kEventWindowHiding
20271 handlers here. Don't call next handler for window state change and
20272 focus events.
20273 (mac_handle_application_event, mac_handle_keyboard_event)
20274 [TARGET_API_MAC_CARBON]: New functions.
20275 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20276 kEventWindowShowing and kEventWindowHiding events. Move installation
20277 of mouse, font, text input and menu target item handlers to
20278 install_application_handler.
20279 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20280 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20281 New function.
20282 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20283 Register it.
20284 (XTread_socket) [TARGET_API_MAC_CARBON]:
20285 Consolidate SendEventToEventTarget calls.
20286 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20287 Move application activation handler to mac_handle_application_event.
20288 Move keyboard handler to mac_handle_keyboard_event.
20289 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20290 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20291 init_command_handler. Call install_application_handler.
20292
20293 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20294 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20295
202962007-06-07 Glenn Morris <rgm@gnu.org>
20297
20298 * emacs.c (main): Use `emacs-copyright' in --version output.
20299
203002007-06-06 Chong Yidong <cyd@stupidchicken.com>
20301
20302 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20303
203042007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20305
20306 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20307
20308 * macgui.h: Replace WindowPtr with WindowRef.
20309
20310 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20311 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20312 Replace ControlHandle with ControlRef.
20313 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20314
20315 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20316 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20317 Replace ControlHandle with ControlRef.
20318 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20319 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20320
20321 * macterm.h (struct scroll_bar): Rename member control_handle_low
20322 and control_handle_high to control_ref_low and control_ref_high.
20323 All uses changed.
20324 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20325 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20326 respectively. All uses changed.
20327 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20328 (install_window_handler, remove_window_handler): Replace WindowPtr
20329 with WindowRef in externs.
20330
203312007-06-05 Juanma Barranquero <lekktu@gmail.com>
20332
20333 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20334
203352007-06-03 Nick Roberts <nickrob@snap.net.nz>
20336
20337 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20338
20339 * frame.c (Fmouse_position, Fmouse_pixel_position):
20340 Condition on HAVE_GPM too.
20341
20342 * term.c (term_mouse_highlight): Remove unused variables.
20343 (Fterm_open_connection): Set gpm_zerobased to 1.
20344 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20345 Use zero based co-ordinates.
20346 (handle_one_term_event): Report a drag as mouse movement too.
20347
20348 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20349
203502007-06-03 Chong Yidong <cyd@stupidchicken.com>
20351
20352 * image.c (search_image_cache): New function. Require background
20353 color match if background color is unspecified in the image spec.
20354 (uncache_image, lookup_image): Use it.
20355
203562007-06-01 Juanma Barranquero <lekktu@gmail.com>
20357
20358 * window.c (Fshrink_window): Reflow docstring.
20359
203602007-06-02 Chong Yidong <cyd@stupidchicken.com>
20361
20362 * Version 22.1 released.
20363
203642007-06-01 Richard Stallman <rms@gnu.org>
20365
20366 * xfns.c (x_encode_text): Add GCPRO.
20367
203682007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20369
20370 * xfns.c (x_set_name_internal): Save encoded name before
20371 x_encode_text in case string data is relocated.
20372
203732007-05-31 Richard Stallman <rms@gnu.org>
20374
20375 * buffer.c (syms_of_buffer): Doc fix.
20376
203772007-05-30 Nick Roberts <nickrob@snap.net.nz>
20378
20379 * sysdep.c (init_sys_modes): Add rather than replace with
20380 O_NONBLOCK.
20381
20382 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20383 term_mouse_moveto.
20384
20385 * termhooks.h (term_mouse_moveto): New extern.
20386
20387 * term.c (mouse_face_window): Rename...
20388 (Qmouse_face_window): ...to this.
20389 (term_show_mouse_face, term_clear_mouse_face)
20390 (term_mouse_highlight): Use Qmouse_face_window.
20391 (term_mouse_moveto): New function.
20392 (term_mouse_position): Make it work.
20393 (syms_of_term): Uncomment assignment to mouse_position_hook.
20394 Staticpro Qmouse_face_window.
20395
203962007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20397
20398 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20399 around current_column call.
20400
204012007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20402
20403 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20404 * xdisp.c (next_element_from_buffer):
20405 * window.c (delete_window):
20406 * term.c (term_mouse_highlight):
20407 * msdos.c (getdefdir):
20408 * macterm.c (mac_create_bitmap_from_bitmap_data)
20409 (init_font_name_table):
20410 * fns.c (Fsxhash):
20411 * data.c (Fmake_local_variable):
20412 * ccl.c (ccl_driver): Likewise.
20413
204142007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20415
20416 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
20417 Call mac_wakeup_from_rne on window size change.
20418
204192007-05-25 Chong Yidong <cyd@stupidchicken.com>
20420
20421 * image.c (uncache_image): Fix typo.
20422
204232007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
20424
20425 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
20426
204272007-05-22 Richard Stallman <rms@gnu.org>
20428
20429 * xterm.c (x_connection_closed): Remove NO_RETURN.
20430
204312007-05-22 Martin Rudalics <rudalics@gmx.at>
20432
20433 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
20434
204352007-05-21 Chong Yidong <cyd@stupidchicken.com>
20436
20437 * image.c (uncache_image): New function.
20438 (Fimage_refresh): New function.
20439
204402007-05-20 Jan Djärv <jan.h.d@swipnet.se>
20441
20442 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
20443
204442007-05-20 Nick Roberts <nickrob@snap.net.nz>
20445
20446 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
20447 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
20448
204492007-05-20 Nick Roberts <nickrob@snap.net.nz>
20450
20451 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
20452 conditional on [HAVE_GPM_H].
20453
204542007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
20455
20456 * syntax.c (skip_chars): Update syntax-table only after we checked that
20457 the new location is valid.
20458
204592007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20460
20461 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
20462 mac_get_window_bounds.
20463
204642007-05-20 Nick Roberts <nickrob@snap.net.nz>
20465
20466 * Makefile.in (LIBGPM): Allow it to be set from configure.
20467 If set then link Emacs with it.
20468
20469 * config.in: Regenerate.
20470
20471 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
20472 New externs.
20473
20474 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
20475 Include gpm.h.
20476 (handle_one_term_event, term_gpm): New externs.
20477
20478 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
20479 and allow it to be interrupted by SIGIO.
20480
20481 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
20482 (wait_reading_process_output): Wait on gpm_fd too.
20483 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
20484 (add_gpm_wait_descriptor_called_flag): New variable.
20485 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
20486
20487 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
20488 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
20489 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
20490 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
20491 (make_lispy_event): Add case GPM_CLICK_EVENT.
20492 (read_avail_input): Handle mouse input.
20493
20494 * term.c (write_glyphs_with_face): New function.
20495 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
20496 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
20497 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
20498 (mouse_face_face_id, term_gpm, pos_x, pos_y)
20499 (last_mouse_x, last_mouse_y): New variables.
20500 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
20501 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
20502 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
20503 (Fterm_close_connection): New functions.
20504 (term_init): Initialise mouse_face_window.
20505
205062007-05-19 Chong Yidong <cyd@stupidchicken.com>
20507
20508 * xdisp.c (redisplay_window): If first window line is a
20509 continuation line, recompute the new window start instead of
20510 recentering.
20511
205122007-05-18 Glenn Morris <rgm@gnu.org>
20513
20514 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
20515 Suggested by Alfred M. Szmidt <ams@gnu.org>.
20516
205172007-05-17 Glenn Morris <rgm@gnu.org>
20518
20519 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
20520
205212007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20522
20523 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
20524 dead key repeat and up events.
20525
205262007-05-14 Chong Yidong <cyd@stupidchicken.com>
20527
20528 * image.c (pbm_load): Check image size for monochrome pbm.
20529
205302007-05-13 Chong Yidong <cyd@stupidchicken.com>
20531
20532 * xterm.c (XTread_socket): Revert last change.
20533
205342007-05-12 Chong Yidong <cyd@stupidchicken.com>
20535
20536 * image.c (pbm_load): Correctly check image size for greyscale pbm.
20537
20538 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
20539
205402007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20541
20542 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
20543 mixup (YAILOM).
20544
205452007-05-07 Andreas Schwab <schwab@suse.de>
20546
20547 * keymap.c (Flookup_key): Fix typo in last change.
20548
205492007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
20550
20551 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
20552 mapping for unibyte strings.
20553
205542007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20555
20556 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
20557 (Fx_popup_dialog) [MAC_OSX]: Likewise.
20558
205592007-04-29 Richard Stallman <rms@gnu.org>
20560
20561 * insdel.c (replace_range): For undo, record insertion first.
20562
205632007-04-29 Andreas Schwab <schwab@suse.de>
20564
20565 * lisp.h (VECSIZE): Use OFFSETOF.
20566
205672007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20568
20569 * xdisp.c (try_window_reusing_current_matrix): Fix number of
20570 disabled lines.
20571
205722007-04-28 Richard Stallman <rms@gnu.org>
20573
20574 * lread.c (read_escape): In a string, \s is always space.
20575
205762007-04-27 Jan Djärv <jan.h.d@swipnet.se>
20577
20578 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
20579
20580 * gtkutil.c (xg_update_menubar, create_menus): Create empty
20581 submenu for menu bar items.
20582
20583See ChangeLog.10 for earlier changes.
20584
20585;; Local Variables:
20586;; coding: utf-8
20587;; add-log-time-zone-rule: t
aac0c6e3
MR
20588;; End:
20589
76b6f707 20590 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
20591
20592 This file is part of GNU Emacs.
20593
20594 GNU Emacs is free software: you can redistribute it and/or modify
20595 it under the terms of the GNU General Public License as published by
20596 the Free Software Foundation, either version 3 of the License, or
20597 (at your option) any later version.
20598
20599 GNU Emacs is distributed in the hope that it will be useful,
20600 but WITHOUT ANY WARRANTY; without even the implied warranty of
20601 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20602 GNU General Public License for more details.
20603
20604 You should have received a copy of the GNU General Public License
20605 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20606
20607;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40