cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX...
[bpt/emacs.git] / src / ChangeLog
CommitLineData
14145fa3
AR
12008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2
3 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
4
5 * keyboard.h: Comment an #endif.
6
7 * nsterm.m (EmacsView -converstationIdentifier): Use NSInteger
8 version for GNUstep (handled by conditional typedef in nsterm.m).
9 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
10 in rgb.txt).
11
12 * process.c (init_process): Use DARWIN_OS, not DARWIN.
13
14 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
15
16 * m/inter386.h: Change DARWIN to DARWIN_OS.
17
18 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
19 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
20 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood.
21
6e09bde1
CY
222008-08-03 Chong Yidong <cyd@stupidchicken.com>
23
14145fa3 24 * nsterm.m (windowDidResize): Remove stopModal call.
6e09bde1 25
a023b559
AS
262008-08-03 Andreas Schwab <schwab@suse.de>
27
51757187
AS
28 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
29 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
a023b559 30
a2dec0e5
CY
312008-08-02 Chong Yidong <cyd@stupidchicken.com>
32
33 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
34 Don't use uninitialized pointer variable when using getrlimit.
35
4ff1bf17
JR
362008-08-02 Jason Rumney <jasonr@gnu.org>
37
4342f814 38 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
4ff1bf17 39
934e2a68
EZ
402008-08-02 Eli Zaretskii <eliz@gnu.org>
41
0078170f
EZ
42 * alloc.c (NSTATICS): Bump to 0x640.
43
934e2a68
EZ
44 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
45
46 * lisp.h: Add prototype for directory_files_internal.
47
48 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
49 New functions.
50 (syms_of_process): Defsubr them. Add initializations for various
51 Q* symbols used in procfs_system_process_attributes.
52 (procfs_list_system_processes, procfs_system_process_attributes)
53 [HAVE_PROCFS]: New functions.
54 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
55 (procfs_get_total_memory): New functions.
56
dee8cd43
JB
572008-08-01 Juanma Barranquero <lekktu@gmail.com>
58
59 * xfaces.c (Fx_load_color_file): Fix previous change;
60 it is #ifdef WINDOWSNT, not WINDOWS_NT.
61
367ea173
MA
622008-08-01 Michael Albinus <michael.albinus@gmx.de>
63
64 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
65
04f33e11
AR
662008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
67
68 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
69
73592876
CY
702008-08-01 Chong Yidong <cyd@stupidchicken.com>
71
dee8cd43 72 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6fcb12fd
CY
73
74 * nsterm.m (EmacsApp -application:openFiles:): GNUStep does not
75 define NSApplicationDelegateReplySuccess.
76 (EmacsView -converstationIdentifier): Use long instead of
77 NSInteger for GNUStep, since it doesn't have NSInteger.
78
61bf63e2
CY
79 * xmenu.c: Revert last change.
80
73592876
CY
81 * keyboard.h: Fix last change.
82
ebadbfa6
AR
832008-08-01 Juanma Barranquero <lekktu@gmail.com>
84
85 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
86 on Windows.
87
15034960 882008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
f78c2c97 89
15034960 90 Warning clearing and clean-up in NS port.
dee8cd43
JB
91 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
92 Add prototypes.
15034960
AR
93 * nsgui.h (FACE_DEFAULT): Remove, unused.
94 (XGCValues): Change colors to unsigned long.
95 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
96 nsterm.m.
97 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
98 (ns_list_fonts): Remove, unused.
99 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
100 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
101 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
102 (nsfont_draw): Compare face colors to 0, not nil.
103 * nsmenu.m (struct widget_value): Drop unneeded declaration.
104 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
105 (-addSubmenuWithTitle:): Use NSMenuItem class.
106 (ns_popup_menu): Use NO, not NULL, for enabled setting.
107 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
108 (ns_clip_to_row): Make gc arg a BOOL.
109 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
110 ns_clip_to_row() call.
111 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
112 used). Cast FRAME_FONT assignments.
113 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
114 (ns_string_to_lispmod): Change arg to const char.
115 (ns_term_init): Use NSMenuItem class.
116 (EmacsApp -openFile:): Move to different section of file.
117 (EmacsApp -application:openFiles:): Don't return a value, call
118 -replyToOpenOrPrint:.
119 (EmacsView -keyDown:): Fix up cast.
120 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
121 (EmacsView -menuDown:): Cast tag in call to
122 find_and_call_menu_selection().
123 (ns_list_fonts): Remove, unused.
124 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
125 (ns_fontname_to_xlfd): Make static.
dee8cd43
JB
126 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
127 Remove prototypes (now in keyboard.h).
15034960 128 (next_menubar_widget_id): Remove, unused.
dee8cd43
JB
129 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
130 Remove prototypes (now in keyboard.h).
15034960
AR
131 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
132
27ec92c9
DN
1332008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
134
f78c2c97
DN
135 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
136 (floatfns.o): Depend on syssignal.h.
137 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
138
dee8cd43
JB
139 * systty.h: Fix previous change that removed BSD_TERMIOS.
140 Add comments to #ifdefs.
27ec92c9 141
7ded3383
AR
1422008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
143
144 * w32fns.c (w32-load-color-file): Remove.
145 (x-open-connection): Use renamed Fx_load_color_file.
146 * xfaces.c (x-load-color-file): Add.
147 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
148 Emacs.clr.
149 (ns_draw_window_cursor): Change PENDING to TODO or FIXME.
150 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
151
13ecc6dc
MA
1522008-07-31 Michael Albinus <michael.albinus@gmx.de>
153
154 * dbusbind.c (Fdbus_call_method_asynchronously)
155 (Fdbus_method_error_internal): New defuns.
156 (xd_read_message): Handle also reply messages.
157 (Vdbus_registered_functions_table): Extend docstring.
158
12063bc5
JB
1592008-07-31 Juanma Barranquero <lekktu@gmail.com>
160
161 * keyboard.c (gobble_input): Fix previous change.
162
7c2fb837
DN
1632008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
164
165 * bitmaps/README:
166 * xfns.c:
167 * termcap.c:
168 * term.c:
169 * syswait.h:
170 * systty.h:
171 * systime.h:
172 * syssignal.h:
173 * sysdep.c:
174 * process.h:
175 * process.c:
176 * print.c:
177 * ndir.h:
178 * lread.c:
179 * keyboard.c:
180 * getpagesize.h:
181 * floatfns.c:
182 * fileio.c:
183 * emacs.c:
184 * doc.c:
185 * dispnew.c:
186 * dired.c:
187 * data.c:
188 * callproc.c:
189 * buffer.c:
190 * README:
191 * Makefile.in:
192 * s/template.h:
193 * s/msdos.h:
194 * m/vax.h: Remove VMS support.
195 * s/vms.h:
196 * vlimit.h:
197 * uaf.h:
198 * temacs.opt:
199 * param.h:
200 * ioctl.h: Remove file.
201
69ab3201
DN
2022008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
203
204 * s/ms-w32.h (MULTI_KBOARD): Remove.
205 * xterm.c:
206 * xselect.c:
207 * xfns.c:
208 * window.c:
209 * w32term.c:
210 * w32fns.c:
211 * terminal.c:
212 * termhooks.h:
213 * term.c:
214 * sysdep.c:
215 * keyboard.h:
216 * keyboard.c:
217 * frame.h:
218 * frame.c:
219 * frame.c: Remove references to MULTI_KBOARD, it is now the
220 default.
221 * config.in: Regenerate.
222
bd187c49
JR
2232008-07-30 Jason Rumney <jasonr@gnu.org>
224
12063bc5 225 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
bd187c49 226
12063bc5
JB
227 * w32font.c (w32font_encode_char): Leave as unicode if in range.
228 (w32font_open_internal): Get unicode version of textmetrics.
229 Don't enable or disable glyph indices here.
230 (w32font_open): Disable use of glyph indices.
bd187c49 231
12063bc5 232 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
bd187c49 233
e3072df2
CY
2342008-07-30 Chong Yidong <cyd@stupidchicken.com>
235
39dde873 236 * minibuf.c (Vread_buffer_function): Doc fix.
e3072df2 237
bc850333
CY
2382008-07-30 John Paul Wallington <jpw@pobox.com>
239
240 * minibuf.c (read_buffer_completion_ignore_case): New var.
241 (Fread_buffer): Use it.
242
9d9a7716
DN
2432008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
244
245 * systty.h (sensemode): Remove empty #if. Remove reference to
246 BSD_TERMIOS, unused.
247
248 * sysdep.c: Remove reference to DGUX.
249 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
250
251 * config.in: Regenerate.
252
0c34f98e
JR
2532008-07-30 Jason Rumney <jasonr@gnu.org>
254
12063bc5 255 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
0c34f98e 256
c320e90a
JR
2572008-07-29 Jason Rumney <jasonr@gnu.org>
258
12063bc5
JB
259 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
260 is populated.
261 (uniscribe_encode_char): Always use uniscribe.
262 Avoid using context if cache is populated.
c320e90a 263
3f7ead30
JD
2642008-07-29 Jan Djärv <jan.h.d@swipnet.se>
265
266 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
267 open menu.
268
269 * gtkutil.c (menu_nav_ended): Remove.
270 (create_menus): Remove signal connect for menu_nav_ended.
271
639eebe2
CY
2722008-07-28 Chong Yidong <cyd@stupidchicken.com>
273
274 * xdisp.c (redisplay_window): Check return value of
275 compute_window_start_on_continuation_line before forcing a window
276 start.
277
d1f535d2
JR
2782008-07-28 Jason Rumney <jasonr@gnu.org>
279
0e134ea0 280 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9cac6313 281
0e134ea0
JB
282 * w32term.c (w32_enable_unicode_output, cleartype_active):
283 Remove obsolete display options.
284 (x_draw_glyph_string_background): Don't use old cleartype_active
285 workaround.
286 (w32_initialize): Remove cleartype_active initialization.
287 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
d1f535d2 288
ddaa36e1
AS
2892008-07-28 Andreas Schwab <schwab@suse.de>
290
291 * lisp.h (init_weak_hash_tables, syms_of_font)
292 (xd_read_queued_messages, syms_of_dbusbind): Declare.
293 (remove_hash_entry): Don't declare.
294 * eval.c (maybe_call_debugger): Make static and move before use.
295 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
296 * xdisp.c: Include "gtkutil.h" if USE_GTK.
297 * xterm.h (x_set_frame_alpha): Declare.
298
42ffd097
JD
2992008-07-28 Jan Djärv <jan.h.d@swipnet.se>
300
301 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
302 (create_menus): Connect selection-done to menu_nav_ended.
303
bd6ce2ba
AR
3042008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
305
306 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
307 Set Vx_resource_name to a fallback. Replace read of 'buffered'
308 parameter with read of 'alpha' one.
309 (Qns_frame_parameter): Remove.
310 * nsselection.m (selection-coding-system)
311 (next-selection-coding-system, Vselection_coding_system)
312 (Vnext_selection_coding_system): Drop.
313
583ff3c3
AR
3142008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
315
316 * nsfns.m (do-applescript, do_applescript): Rename to
317 ns-do-applescript, ns_do_applescript, and move within file.
318
9e2a2647
DN
3192008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
320
321 Remove support for Mac Carbon.
322 * mactoolbox.c:
323 * macterm.h:
324 * macterm.c:
325 * macselect.c:
326 * macmenu.c:
327 * macgui.h:
328 * macfns.c:
329 * mac.c: Remove file.
330 * s/darwin.h:
331 * m/intel386.h:
332 * xfaces.c:
333 * xdisp.c:
334 * window.c:
335 * tparam.c:
336 * termhooks.h:
337 * termcap.c:
338 * term.c:
339 * syssignal.h:
340 * sysselect.h:
341 * sysdep.c:
342 * process.c:
343 * lread.c:
344 * lisp.h:
345 * keyboard.c:
346 * image.c:
347 * fringe.c:
348 * frame.h:
349 * frame.c:
350 * fontset.c:
351 * font.h:
352 * font.c:
353 * fns.c:
354 * fileio.c:
355 * emacs.c:
356 * dispnew.c:
357 * dispextern.h:
358 * config.in:
359 * atimer.c:
360 * Makefile.in: Remove code for Carbon
361
7ad8fe5e 3622008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4874e088 363
7ad8fe5e 364 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
69eff41f 365
7ad8fe5e 3662008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
69eff41f 367
7ad8fe5e
MB
368 * macterm.h (kCGBitmapByteOrder32Host): New define for
369 non-universal SDKs.
69eff41f 370
7ad8fe5e
MB
371 * image.c (mac_create_cg_image_from_image, image_load_image_io)
372 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
dcdbbb5d 373
7ad8fe5e
MB
374 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
375 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
dcdbbb5d 376
7ad8fe5e 3772008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
09721b31 378
0e134ea0 379 * w32inevt.c: Include dispextern.h.
09721b31 380
51dc79f8
AS
3812008-07-26 Andreas Schwab <schwab@suse.de>
382
383 * print.c (print_object): Fix off-by-one in last change.
384
dea101f6
JB
3852008-07-25 Juanma Barranquero <lekktu@gmail.com>
386
387 * term.c (syms_of_term): Don't initialize default_orig_pair,
388 default_set_foreground and default_set_background on Windows.
389
11856d4d
JR
3902008-07-25 Jason Rumney <jasonr@gnu.org>
391
0e134ea0
JB
392 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
393 ScriptItemize. Clean up return value checking. Remove unused
394 variables.
395 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
396 shaping engine.
11856d4d 397
0e134ea0
JB
398 * w32font.c (w32font_has_char): Handle the case where we can't
399 determine the script for a character.
11856d4d 400
7bfc0e9e
CY
4012008-07-25 Chong Yidong <cyd@stupidchicken.com>
402
acdadb15
CY
403 * term.c (syms_of_term): Initialize default_orig_pair,
404 default_set_foreground, and default_set_background.
405
5efc6200
CY
406 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
407 clash (bug#86).
408 (getloadavg): Callers changed.
409
7bfc0e9e 410 * image.c (svg_load_image): Fix last change.
c01c4e35
CY
411 (svg_load_image): Use rsvg_handle_get_dimensions to check that
412 image size is valid. Use g_object_unref instead of deprecated
413 rsvg_handle_free to free rsvg handle.
9d7112ed 414 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7bfc0e9e 415
f31cf550
JR
4162008-07-25 Jason Rumney <jasonr@gnu.org>
417
0e134ea0
JB
418 * w32font.c (w32font_encode_char): Encode characters outside BMP as
419 surrogates before looking up glyph index.
420 (w32font_text_extents): Encode as surrogates if falling back to
421 functions that need UTF-16 wide chars.
f31cf550 422
0e134ea0
JB
423 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
424 BMP as surrogates before looking up glyph index.
f31cf550 425
b293d659
CY
4262008-07-25 Chong Yidong <cyd@stupidchicken.com>
427
428 * image.c (svg_load_image): Check for failure in return value of
429 rsvg_handle_get_pixbuf. Free rsvg handle when done.
430
1ada3dab
JR
4312008-07-25 Jason Rumney <jasonr@gnu.org>
432
0e134ea0 433 * w32font.c (Fx_select_font): Reverse sense of second arg.
1ada3dab 434
dbc812e0
SM
4352008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
436
6449674e
SM
437 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
438 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
439
dbc812e0
SM
440 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
441 (PURESIZE): Use it.
442
67725bd8
DN
4432008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
444
340074e9
DN
445 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
446 * m/alpha.h (TEXT_END):
447 * m/ibmrs6000.h (TEXT_END):
448 * m/macppc.h (TEXT_END):
449 * s/darwin.h (TEXT_END):
450 * s/msdos.h (TEXT_END): Remove, unused.
451 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
452 * s/cygwin.h: Remove comment.
453
a11af7f8
DN
454 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
455 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
456 * m/intel386.h (DOT_GLOBAL_START):
457 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
458 (USG): Remove, file not used on USG platforms.
459
67725bd8
DN
460 * Makefile.in (HAVE_X11): Remove empty #else.
461
6420e80c
AS
4622008-07-24 Andreas Schwab <schwab@suse.de>
463
464 * fileio.c (Finsert_file_contents): Properly adjust undo list
465 after format conversion.
466
d1c38b57
JD
4672008-07-24 Jan Djärv <jan.h.d@swipnet.se>
468
469 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
470 (menu_nav_ended): Remove.
471 (create_menus): Remove signal connect for menu_nav_ended.
472 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
473 create_menus.
474 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
475
597634cb
JR
4762008-07-23 Jason Rumney <jasonr@gnu.org>
477
dbc812e0
SM
478 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
479 with opened font.
480 (w32font_open): Set font type to gdi.
4b135503 481
dbc812e0 482 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
597634cb 483
7c799cf5
DN
4842008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
485
7a14f2a0
DN
486 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
487 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
488 defines it.
489 * unexec.c (ADDR_CORRECT): Define unconditionally.
490
491 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
492
f914a6bf
DN
493 * unexec.c: Remove code depending on !COFF and USG, the file is
494 not used for such systems.
495
268b24ee
DN
496 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
497 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
498 (LD_SWITCH_SYSTEM_1): Remove, update users.
499
911109b1
DN
500 * s/darwin.h (DATA_END):
501 * m/intel386.h (DATA_END):
502 * m/ibmrs6000.h (DATA_END):
503 * m/alpha.h (DATA_END): Remove, unused.
911109b1 504
77ccee09
DN
505 * config.in: Regenerate.
506 * s/ms-w32.h (subprocesses): Define unconditionally.
507 * s/template.h (subprocesses): Update comment.
508 * s/vms.h (subprocesses):
509 * s/usg5-4.h (subprocesses):
510 * s/hpux10-20.h (subprocesses):
511 * s/gnu-linux.h (subprocesses):
512 * s/cygwin.h (subprocesses):
513 * s/bsd-common.h (subprocesses):
514 * s/aix4-2.h (subprocesses):
515 * s/darwin.h (subprocesses): Do not define, defined by default now.
516
517 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
518 Remove all references.
519 (temacs): Add GNUStep specific ld flags.
520
7c799cf5
DN
521 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
522 similarly to what X does.
523
712b2de1
AR
5242008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
525
526 * nsfns.m (x-list-fonts): Remove.
527 (syms_of_nsfns): Drop the x-list-fonts declaration.
528 * nsterm.m: Get rid of remaining "//" comments.
529
0d4e1b5f
CY
5302008-07-22 Chong Yidong <cyd@stupidchicken.com>
531
532 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
533
534 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
535 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
536 (Fns_own_selection_internal, Fx_disown_selection_internal)
537 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
538
539 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
540 ... */' style of docstrings. Doc fixes.
541
952913d4
DN
5422008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
543
0ecc3474 544 * terminfo.c (UP, BC, PC): Undo previous change.
0d4e1b5f 545
952913d4
DN
546 * nsfns.m: Rename ns prefixed functions/variables to the
547 corresponding x versions. Update references.
548
02d8b017
SM
5492008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
550
551 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
552
11b8fe14
DN
5532008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
554
02d8b017
SM
555 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
556 Remove forwarding functions.
cc98b6a0
DN
557 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
558 non-static.
559 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
560 non-static.
561 (ns_frame_parm_handlers): Use the new names.
562 (syms_of_nsfns): Move to the end of file.
563
1baa6236
DN
564 * nsterm.m (syms_of_nsterm): Move to the end of file.
565
11b8fe14
DN
566 * dispnew.c (init_display): Remove code for X10.
567
8dcaeba2
JR
5682008-07-22 Jason Rumney <jasonr@gnu.org>
569
02d8b017
SM
570 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
571 bare drive.
8dcaeba2 572
df2142db
AR
5732008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
574
575 * nsgui.h:
576 * nsfont.m:
577 * nsmenu.m:
578 * nsterm.m: Change PENDINGS to FIXME / TODO / XXX.
579
365bac35
AR
5802008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
581
582 * nsterm.m (syms_of_nsterm): Remove debugging println.
583
6a0f0f86
DR
5842008-07-22 David Reitter <david.reitter@gmail.com>
585
a3c83618 586 * nsfns.m (do_applescript, F_do_applescript): NS version of the
6a0f0f86
DR
587 Carbon implementation of the same functionality: execute arbitrary
588 AppleScript code.
589
51d5ef9f
AR
5902008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
591
a3c83618 592 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
51d5ef9f
AR
593 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
594 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
595 (Fx_display_mm_height, Fx_display_mm_width)
596 (Fx_display_backing_store, Fx_display_visual_class)
597 (Fx_display_save_under, Fx_open_connection)
598 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
599 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
600 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
601 (Fx_display_pixel_width, Fx_display_pixel_height)
602 (Fx_display_usable_bounds, Fx_display_planes)
603 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
604 ... */' style of docstrings.
605
6efac844
DN
6062008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
607
b8ff87cc
DN
608 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
609 on this platform.
610 (mips):
611 * m/iris4d.h (mips): Do not define.
612 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
613
92d1a7a3
DN
614 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
615
de08d1be
CY
616 * image.c:
617 * nsfns.m:
618 * nsselect.m:
619 * nsterm.h:
9e50ff0c
DN
620 * nsterm.m: Rename ns prefixed functions/variables to the
621 corresponding x versions. Update references.
622
ff486501
DN
623 * m/ibms390x.h (NO_REMAP): Do not undefine.
624
6efac844
DN
625 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
626
ea9de876
CY
6272008-07-21 Chong Yidong <cyd@stupidchicken.com>
628
629 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
630 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
631 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
632 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
633 (Fns_display_mm_height, Fns_display_mm_width)
634 (Fns_display_backing_store, Fns_display_visual_class)
635 (Fns_display_save_under, Fns_open_connection)
636 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
637 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
638 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
639 (Fns_display_pixel_width, Fns_display_pixel_height)
640 (Fns_display_usable_bounds, Fx_display_planes)
641 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
642
b42f4115 6432008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
3965adab
CY
644
645 * print.c (print_object): Check print_depth before searching for
646 circularities.
647
c0894fb9
MA
6482008-07-21 Michael Albinus <michael.albinus@gmx.de>
649
650 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
651 only sprintf.
652
d90bfd1c
KH
6532008-07-21 Kenichi Handa <handa@m17n.org>
654
655 * ftfont.c (adjust_anchor): Check if DetalValue is not NULL.
656
8e2911c2
AS
6572008-07-20 Andreas Schwab <schwab@suse.de>
658
659 * syntax.c (find_start_pos, find_start_value)
660 (find_start_value_byte, find_start_begv, find_defun_start)
dbc812e0 661 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
8e2911c2 662
98a01702
DN
6632008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
664
665 * s/sol2-3.h: Insert contents of s/sol2.h.
666 (LD_SWITCH_SYSTEM): Remove redundant definition.
667 * s/sol2.h: Remove, unused.
668
704a3a2d
AR
6692008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
670
dbc812e0 671 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
704a3a2d
AR
672
6732008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
e5e2baab
AR
674
675 * Makefile.in (ns_appdir): Fix typo in find command.
676
89f1e540
DN
6772008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
678
c788afce
DN
679 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
680
89f1e540
DN
681 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
682 added not supported anymore.
683
e5e2baab 684 * s/usg5-4-2.h (LIBS_SYSTEM):
89f1e540
DN
685 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
686
687 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
688 * s/lynxos.h (GETPGRP_NO_ARG):
689 * s/hpux10-20.h (NO_SIOCTL_H):
690 * s/gnu.h (GETPGRP_NO_ARG):
691 * s/gnu-linux.h (NO_SIOCTL_H):
692 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
693 * s/cygwin.h (GETPGRP_NO_ARG):
694 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
695 (C_DEBUG_SWITCH): Remove duplicate definition.
696
697 * m/ibms390.h: Remove boilerplate comments.
698
699 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
700
701 * process.c (HAVE_SERIAL): Consolidate ifdefs.
702 (wait_reading_process_output): Remove code for SunOS, platform not
703 supported anymore. Use SOLARIS2 instead of sun.
704
ed96cde8
AR
7052008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
706
707 * font.c (font_open_by_name): Under NS, default lface height to zero.
708 (font_open_for_lface): Under NS, set size based on frame fontsize.
709 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
710 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
711
7122008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
713
714 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
715 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
716 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
717 YES/NO.
718 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
719 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
720 * Makefile.in (clean): Clear out build destination dir.
721
5a2d7ab6
AR
7222008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
723
724 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
725 xterm, xselect.
726 * lisp.h: Remove declaration of hash_remove.
727 * nsgui.h: Remove redefinitions of hash_remove.
728 * fns.c (hash_remove): Rename to hash_remove_from_table.
729
c0230162
AR
7302008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
731
732 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
733 strdup() the family UTF8String before modifying it. Patch due to
734 Seiji Zenitani.
735
45d325c4
AR
7362008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
737
738 * nsfns.m (ns_set_background_color): Apply patch from Chong Yidong to
739 fix crash.
740 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
741 NS_FACE_BACKGROUND with 0 instead of nil.
742 * nsfont.m (nsfont_draw): Same.
743
b83f1cd0
CY
7442008-07-18 Chong Yidong <cyd@stupidchicken.com>
745
746 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
747
add4eecc
DN
7482008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
749
750 * puresize.h (BASE_PURESIZE): Increase to 1240000.
751
69955d31
YM
7522008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
753
754 * gtkutil.c: Include <config.h> instead of "config.h".
755
756 * lisp.h (Foverlay_buffer): Add EXFUN.
757
758 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
759 child process to complete child_setup. Undo 2005-09-21 change.
760
761 * s/darwin.h: Mention setsid after vfork.
762
08b3caa9 7632008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2d64e9bb
YM
764
765 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
766 Depend on macgui.h.
767
768 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
769 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
770
771 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
772 and f19.
773 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
774
775 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
776 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
777 Remove enumerators.
778
779 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
780 Check if FACE_FROM_ID returns NULL.
781
8d59c5ed
JR
7822008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
783
ba60bd44
JB
784 * w32inevt.c (change_frame_size): Remove extern declaration.
785 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
786 change_frame_size.
8d59c5ed 787
ba60bd44 7882008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
db94bf9c
AR
789
790 * getloadavg.c: Revert last change (2008-07-15).
791
ba60bd44 7922008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
06b62770
AR
793
794 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
795 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
796 from configure.
797
2749d28e
DN
7982008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
799
35ad0545
DN
800 * s/sol2.h:
801 * s/sol2-4.h: Reorganize conditionals.
802
2749d28e
DN
803 * ecrt0.c: Remove code depending on m68000, not used anymore.
804
805 * fns.c (hash_remove): Make static.
806 * lisp.h (hash_remove): Don't prototype.
807
808 * m/ibmrs6000.h:
809 * m/ibms390x.h:
810 * m/macppc.h: Remove boilerplate comments.
811
812 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
813 Solaris, which does not need them.
814
815 * m/vax.h: Remove comments about unsupported systems.
816
817 * s/darwin.h: Reorganize ifdefs.
818
ba60bd44
JB
8192008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
820
821 * config.in:
822 * dispextern.h:
823 * frame.c:
824 * image.c:
825 * nsfns.m:
826 * nsfont.m:
827 * nsgui.h:
828 * nsmenu.m:
829 * nsterm.h:
830 * nsterm.m:
831 * s/darwin.h:
832 * xdisp.c: Change most cases of PENDING to TODO, some to FIXME or XXX.
6fb5f7da 833
32cc3925
AS
8342008-07-17 Andreas Schwab <schwab@suse.de>
835
836 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
837
facfbbbd
SM
8382008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
839
840 Use SDATA. Follow coding convention of placing operators at
841 beginning of next line rather than end of previous line, and placing
842 spaces around infix operators.
843
844 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
845 in case it was defined already.
846 USE @GNUSTEP_MAKEFILES@ rather than envvars.
847 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
848 ns_default.
849 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
850 Lisp_Objects.
851 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
852 (ns_defined_color, ns_color_to_lisp): Declare.
853 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
854 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
855 it's accepted even with USE_LISP_UNION_TYPE.
856 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
857 (update_frame_tool_bar): Remove apparently obsolete tests for
858 non-integerness of f->tool_bar_lines.
859 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
860 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
861 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
862 (nsfont_open): Don't confuse NULL for Qnil.
863 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
864 * menu.h (find_and_call_menu_selection):
865 * menu.c (find_and_call_menu_selection): Use just int for vector size.
866 (find_and_return_menu_selection): Always return something.
867 * frame.h: Include dispextern.h for Display_Info.
868 (display_x_get_resource): Declare.
869
ba60bd44 8702008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
122e9f8f
AR
871
872 * syntax.c: Remove stdio.h include accidentally introduced in
873 Emacs.app commit.
874 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
875 NS_IMPL_COCOA.
876 * keyboard.c (handle_async_input, input_available_signal): Remove
877 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
878
0bcfd7d7
SM
8792008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
880
6882361b
SM
881 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
882 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
883 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
884 Use SDATA.
885
0bcfd7d7
SM
886 * keymap.c: Remove all NS-specific code.
887 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
888 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
889 where_is_preferred_modifier, return a different value depending on how
890 preferred is the binding.
891 (where_is_internal): Adjust accordingly.
892 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
893 Adjust to new preferred_sequence_p.
894 (syms_of_keymap): Declare `where-is-preferred-modifier'.
895 * keyboard.c (parse_solitary_modifier): Not static any more.
896 * keyboard.h (parse_solitary_modifier): Declare.
897
720f3147
AS
8982008-07-16 Andreas Schwab <schwab@suse.de>
899
900 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
901 of easymenu.
902
01e19fea
CY
9032008-07-16 Chong Yidong <cyd@stupidchicken.com>
904
905 * xdisp.c (move_it_in_display_line): Account for word wrap, so
906 that we don't move off the line.
907
4c89a3e0
SM
9082008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
909
910 * keyboard.c (Qsuper): Remove.
911 (parse_menu_item): Don't call where_is_internal specially for NS.
912
586b975c
DN
9132008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
914
3ec8ef33
DN
915 * s/gnu-linux.h: Remove boilerplate comments.
916
d4d080b6
DN
917 * m/alpha.h (__ELF__): Consolidate conditions.
918
7ab56cc4
DN
919 * m/m68k.h (linux): Use GNU_LINUX instead.
920 Remove boilerplate comments.
921
586b975c 922 * m/intel386.h: Undo reactoring from previous change.
7ab56cc4
DN
923 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
924 too, remove dead code.
925 (linux): Use GNU_LINUX instead.
586b975c 926
5cc9d48a
JR
9272008-07-16 Jason Rumney <jasonr@gnu.org>
928
4c89a3e0 929 * w32gui.h: Repeat 26 June changes lost by last change.
5cc9d48a 930
6b0273cd
DN
9312008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
932
132d0475
DN
933 * systty.h: Remove code for Aix on 386, unsupported platform.
934
935 * s/ms-w32.h: Remove boilerplate comments.
936 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
937
938 * s/gnu-linux.h (TERM): Remove support.
939 (HAVE_SYSVIPC): Remove, unused.
940 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
941 for this system.
942
943 * process.c: Remove support for IRIS, unused.
944 Remove support for TERM, not relevant anymore.
945
946 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
947 used with the definition.
948
949 * s/aix4-2.h (static): Do not undef.
950
951 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
952 only used on Aix.
953 (HAVE_SYSVIPC): Remove, unused.
954
955 * m/hp800.h (CANNOT_DUMP): Do not undef.
956
957 * m/alpha.h: Fix comment.
958
8111c2d8
DN
959 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
960 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
961 used by this configuration.
962 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
963 * unexec.c: Remove code depending on HPUX and
964 USG_SHARED_LIBRARIES, not used with this file. Remove code
965 depending on IRIS, unused. Remove if 0-ed code.
966
e9a57a88
DN
967 * s/template.h: Remove comments about static.
968
4c89a3e0
SM
969 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
970 Remove if 0-ed code.
c7607b94
DN
971 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
972 were the same as the default.
973 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
974 Remove boilerplate comments.
975 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
976 (HAVE_SYSVIPC): Remove, unused.
977 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
978
ff841b30
DN
979 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
980 Remove boilerplate comments.
981 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
982 Remove boilerplate comments.
983 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
984 Remove boilerplate comments.
985 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
986
586b975c
DN
987 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
988 USG systems which do not use DATA_SEG_BITS.
989 Refactor code. Remove boilerplate comments.
990
dc89925b 991 * m/ibms390.h:
dc89925b
DN
992 * m/m68k.h:
993 * s/bsd-common.h:
994 * s/cygwin.h:
995 * s/darwin.h:
996 * s/freebsd.h:
997 * s/gnu.h:
998 * s/msdos.h: Remove boilerplate comments.
999
96b72211
DN
1000 * m/iris4d.h: Remove boilerplate comments and code for systems that
1001 do not use this file.
1002 (IRIS_4D): Remove, unused.
1003
c3b5f109
DN
1004 * m/mips.h: Remove boilerplate comments and code for systems that
1005 do not use this file.
96b72211 1006 (SIGN_EXTEND_CHAR):
c3b5f109
DN
1007 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
1008 * unexmips.c: Remove file, unused.
1009
6b0273cd
DN
1010 * editfns.c (Fuser_full_name): Replace the only use of
1011 USER_FULL_NAME with its value.
1012 * config.in: Regenerate.
1013
ba60bd44 10142008-07-16 David Reitter <david.reitter@gmail.com>
6fbcfb6f 1015
ba60bd44
JB
1016 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
1017 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6fbcfb6f 1018
44ac2d3e
GM
10192008-07-16 Glenn Morris <rgm@gnu.org>
1020
1021 * emacs.c (system-type): Doc fix.
1022
0a170079
SM
10232008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
1024
1025 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
1026 If the cache doesn't work, let's fix it, rather than work around it.
1027
ba60bd44 10282008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
a68fda4a
AR
1029
1030 * Makefile.in: Correct additions for nsfont.o in last commit.
1031 * nsfont.m: New file (forgot last commit).
1032
ba60bd44 10332008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
edfda783
AR
1034
1035 Changes and additions for NeXTstep windowing system (Cocoa and
1036 GNUstep) support.
1037
ba60bd44 1038 * Makefile.in:
edfda783
AR
1039 * config.in: Support defines and build commands for NS port.
1040 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
1041 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
1042 * callproc.c (set_initial_environment): Initialize
1043 Vprocess_environment under CANNOT_DUMP (fixes crash when
1044 batch-compiling for bootstrap, due to Chris Hall).
1045 * dispextern.h: Include nsgui.h and add needed typedefs under NS
1046 windowing.
1047 (struct face): Add synth_ital field.
1048 * dispnew.c: Include nsterm.h when compiling under NS windowing.
1049 (init_display): Initialize Vinitial_window_system to "ns" when so
1050 compiled.
1051 * emacs.c: Include GSConfig.h when compiling under GNUstep.
1052 (display_arg): Use under NS.
1053 (main): Under NS, allocate autorelease pool and handle command line
1054 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
1055 (standard_args): Add NS-specific args.
1056 (shut_down_emacs): Shut down NS terminal if compiled under NS.
1057 * font.c (DEFAULT_ENCODING): New variable.
1058 (font_find_for_lface): Use it.
1059 (syms_of_font): Load syms_of_nsfont under NS.
1060 * font.h: Declare nsfont_driver when compiled under NS.
1061 * fontset.c: When compiling under NS, include nsterm.h.
1062 (fontset_from_font): Autoconstruct fontset under NS.
1063 * frame.c (various): Under NS, include nsterm.h, add Qns window system
1064 symbol, document and use it.
1065 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
1066 patch to fix crash due to different init order, due to Chris Hall and
1067 Yamamoto Mitsuharu.
1068 (do_switch_frame): When for_deletion under Cocoa, add
1069 Fraise_frame(Qnil).
1070 (x_set_frame_parameters): Ensure font attribute changes are picked up.
1071 (x_get_arg): Allow "yes" and "no" as boolean values.
1072 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
1073 Qright under Cocoa.
1074 (focus-follows-mouse): Default to 0 under NS.
1075 * frame.h (enum output_method): Add output_ns.
1076 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
1077 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
1078 (FRAME_WINDOW_P): NS-specific definition.
1079 * fringe.c (max_used_fringe_bitmap): Make public.
1080 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
1081 (getloadavg): Use NeXT code under descendant OS's.
1082 * image.c (includes and header section, x_create_bitmap_from_data)
1083 (x_create_bitmap_from_file, free_bitmap_record, image_background)
1084 (image_background_transparent, x_clear_image_1)
1085 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
1086 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
1087 (x_to_xcolors, x_from_xcolors, x_disable_image)
1088 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
1089 other GUIs, including XPM support using code originally written for
1090 Carbon GUI.
0a170079 1091 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
edfda783
AR
1092 using NS API.
1093 (image_ascent): Use font metrics macros instead of direct struct field
1094 access.
1095 * keyboard.c (includes): Add nsterm.h when compiling under NS.
1096 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
1097 Also, handle NS as GTK for menu bar purposes.
1098 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
1099 toolkit where they differ.
1100 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
1101 use cachelist, still needed under NS.
6ddc6cca 1102 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
edfda783
AR
1103 (struct widget_value): Define it here for menu.c.
1104 * keymap.c (includes): Include modifier internals.
1105 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
1106 NS.
1107 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
1108 support for preferring sequences using certain modifiers, specified by
1109 the FIRSTONLY argument.
1110 * lisp.h (hash_remove): Rename to avoid name clash when compiling
1111 under NS GNUstep implementation.
1112 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
1113 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
1114 * menu.c: Include nsterm.h under NS.
1115 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
1116 (free_menubar_widget_tree_value, update_submenu_strings)
1117 (find_and_call_menu_selection): Treat NS as X and NT.
1118 (find_and_return_menu_selection): New function, used for popup menus.
ba60bd44
JB
1119 * nsgui.h:
1120 * nsterm.h:
1121 * nsfns.m:
1122 * nsimage.m:
1123 * nsmenu.m:
1124 * nsselect.m:
edfda783
AR
1125 * nsterm.m: New files.
1126 * process.c (wait_reading_process_output): Under NS, call ns_select()
1127 instead of plain select().
1128 * syntax.c (char_quoted): Under NS, avoid a crash when called near
1129 beginning of buffer.
1130 * sysselect.h (init_process): Rename when compiling under Cocoa to
1131 avoid name conflict.
1132 * termhooks.h (display_info): Add ns_display_info to union.
1133 * terminal.c (Fterminal_live_p): Add ns to terminal types.
1134 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
1135 COCOA environment.
1136 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
1137 unexec() signature. (Note, this will dump, but the resulting file
1138 crashes; unexosx is used instead; keeping around for reference and
1139 possible aid in getting dump working under GNUstep.)
1140 * w32gui.h (button_type, widget_value): Remove definitions (now in
1141 keyboard.h).
1142 * window.c: Include nsterm.h when compiling under NS.
1143 * xdisp.c (includes): Include nsterm.h when compiling under NS.
1144 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
1145 other GUI windowing systems.
1146 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
1147 GTK.
1148 (x_consider_frame_title): Under NS, set icon type and frame
1149 modified-state indicator; use ns_set_name_as_filename() when using
1150 formatted title.
1151 (update_window_cursor): Make public when compiling under NS.
1152 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
1153 (hourglass_atimer, Vhourglass_delay
1154 * xfaces.c (header section, init_frame_faces, clear_font_table)
1155 (defined_color, unload_color, x_face_list_fonts)
6ddc6cca
SM
1156 (prepare_face_for_display): Add NS support parallel to other GUIs.
1157 Emulate GCs like other non-X GUIs.
edfda783
AR
1158 (split_font_name): Don't lowercase font name under NS.
1159 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
1160 under NS.
1161 * s/darwin.h: Add support for compilation under NS.
1162
1391cd54
JR
11632008-07-15 Jason Rumney <jasonr@gnu.org>
1164
6ddc6cca
SM
1165 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
1166 (w32_show_hourglass): Rename from show_hourglass.
1167 (w32_hide_hourglass): Rename from hide_hourglass.
1168 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
1169 (Vhourglass_delay): Declare extern.
1170 (hourglass_started): Remove.
1391cd54 1171
6ddc6cca
SM
1172 * xdisp.c (Vhourglass_delay): Remove static.
1173 (hourglass_started, start_hourglass, cancel_hourglass):
1174 Don't include these versions on WINDOWSNT.
1391cd54 1175
1885ab29
AR
11762008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1177
6ddc6cca 1178 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
20d6dc02 1179 variables (formerly in xfns.c).
1885ab29
AR
1180 (show_hourglass, hide_hourglass): New prototypes (same).
1181 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
1182 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
20d6dc02 1183 in xfns.c).
1885ab29
AR
1184 (syms_of_xdisp): Declare/initialize display-hourglass,
1185 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
1186 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
20d6dc02 1187 formerly in xfns.c.
1885ab29
AR
1188 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
1189 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
1190 (start_hourglass, cancel_hourglass): Remove.
1191 (show_hourglass, hide_hourglass): Remove prototypes and static
1192 modifiers.
1193 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
1194 hourglass_atimer, hourglass_shown_p declaration/initialization.
1195 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
1196 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
1197 (start_hourglass, cancel_hourglass): Remove.
1198 (show_hourglass, hide_hourglass): Remove prototypes and static
1199 modifiers.
1200 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
1201 hourglass_atimer, hourglass_shown_p declaration/initialization.
1202 * w32fns.c (display_hourglass_p, Vhourglass_delay)
1203 (DEFAULT_HOURGLASS_DELAY): Remove.
1204 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
1205 hourglass_shown_p declaration/initialization.
1206
3faa984f
JR
12072008-07-14 Jason Rumney <jasonr@gnu.org>
1208
6ddc6cca
SM
1209 * w32fns.c (w32_get_arg): Remove wrapper function.
1210 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
1211 directly.
1212 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
3faa984f 1213
2f73901f
KH
12142008-07-14 Kenichi Handa <handa@m17n.org>
1215
1216 * xfont.c (xfont_open): Add workaround for X's bug.
1217
11da284d
KH
12182008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1219
1220 * fontset.c: Include <stdio.h> unconditionally.
1221
944cc4a8
MA
12222008-07-13 Michael Albinus <michael.albinus@gmx.de>
1223
1224 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
1225 for filtering.
1226
bdee2ef3
DN
12272008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
1228
1229 * s/vms.h: Use __GNUC__ instead of _GNUC_.
1230
1231 * m/macppc.h:
1232 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
1233
1234 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
944cc4a8
MA
1235 (SPECIAL_EMACS_INT):
1236 * m/ia64.h (SPECIAL_EMACS_INT):
bdee2ef3
DN
1237 * m/amdx86-64.h (SPECIAL_EMACS_INT):
1238 * s/gnu.h (NLIST_STRUCT):
4342f814 1239 * s/aix4-2.h (X11R5_INHIBIT_I18N):
bdee2ef3
DN
1240 * s/gnu-linux.h (LINUX):
1241 * s/msdos.h (HAVE_FACES):
1242 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
1243
944cc4a8 1244 * systty.h:
bdee2ef3
DN
1245 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
1246 anymore.
1247
bba104c1
DN
12482008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
1249
1250 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
1251 always defined as int.
1252
1253 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
1254 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
1255 * s/gnu-linux.h (HAVE_WAIT_HEADER):
1256 * s/freebsd.h (HAVE_WAIT_HEADER):
1257 * s/bsd-common.h (HAVE_UNION_WAIT):
1258 * s/aix4-2.h (HAVE_WAIT_HEADER):
1259 * m/mips.h (HAVE_UNION_WAIT):
1260 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
1261 (COFF, static): Do not define, they are undefined later in the file.
1262
1263 * process.c (update_status): Don't use a union.
1264 (status_convert):
1265 (sigchld_handler): Use int instead of WAITTYPE.
1266
e433031a
CY
12672008-07-12 Chong Yidong <cyd@stupidchicken.com>
1268
1269 * indent.c (Fvertical_motion): Restore hscroll before moving to
1270 goal column.
1271
3bfb4d48
DN
12722008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
1273
1274 * lisp.h: Remove left over code.
1275
e7c9048f
AS
12762008-07-11 Andreas Schwab <schwab@suse.de>
1277
7e770c85
AS
1278 * lisp.h: Fix logic in last change.
1279
e7c9048f
AS
1280 * menu.h: New file.
1281 * menu.c: Include it.
1282 * xmenu.c: Likewise.
1283 * Makefile.in: Update dependencies.
1284
38aaf336
KH
12852008-07-11 Kenichi Handa <handa@m17n.org>
1286
1287 * fontset.c (fontset_from_font): Cancel the previous change.
1288
6e5cb96f
DN
12892008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
1290
1291 * lisp.h:
1292 * w32heap.c:
1293 * emacs.c:
1294 * alloc.c: Replace all references of NO_UNION_TYPE with
1295 USE_LISP_UNION_TYPE.
1296
1297 * m/xtensa.h (NO_UNION_TYPE):
1298 * m/vax.h (NO_UNION_TYPE):
1299 * m/template.h (NO_UNION_TYPE):
1300 * m/sparc.h (NO_UNION_TYPE):
1301 * m/mips.h (NO_UNION_TYPE):
1302 * m/macppc.h (NO_UNION_TYPE):
1303 * m/m68k.h (NO_UNION_TYPE):
1304 * m/iris4d.h (NO_UNION_TYPE):
1305 * m/intel386.h (NO_UNION_TYPE):
1306 * m/ibms390x.h (NO_UNION_TYPE):
1307 * m/ibms390.h (NO_UNION_TYPE):
1308 * m/ibmrs6000.h (NO_UNION_TYPE):
1309 * m/ia64.h (NO_UNION_TYPE):
1310 * m/hp800.h (NO_UNION_TYPE):
1311 * m/arm.h (NO_UNION_TYPE):
1312 * m/amdx86-64.h (NO_UNION_TYPE):
1313 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
1314 defining it the same.
1315
e0f47a68
CY
13162008-07-10 Chong Yidong <cyd@stupidchicken.com>
1317
ba60bd44 1318 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
e0f47a68 1319
c5e7567d
DN
13202008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
1321
4342f814
JB
1322 * fileio.c:
1323 * sysdep.c
1324 * systty.h:
1325 * m/ibmrs6000.h:
1326 * m/iris4d.h:
1327 * s/aix4-2.h:
1328 * s/freebsd.h:
1329 * s/gnu-linux.h:
1330 * s/hpux10-20.h:
1331 * s/hpux11.h:
1332 * s/netbsd.h:
1333 * s/sol2-3.h:
1334 * s/sol2-4.h:
1335 * s/sol2.h:
1336 * s/usg5-4.h:
1337 * s/vms.h: Remove references to unused variables.
c5e7567d 1338
bb658864
AS
13392008-07-10 Andreas Schwab <schwab@suse.de>
1340
1341 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
1342 pattern before matching the generic family.
1343
3d3db608
DN
13442008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
1345
a0ce9ab7 1346 * unexec.c:
3460e0b9
DN
1347 * s/vms.h:
1348 * s/usg5-4-2.h:
1349 * s/sol2-5.h:
1350 * s/freebsd.h:
1351 * s/darwin.h: Remove dead code.
1352
ad76189a
DN
1353 * m/template.h:
1354 * m/sparc.h:
1355 * m/mips.h:
1356 * m/m68k.h:
1357 * m/iris4d.h:
1358 * m/intel386.h:
1359 * m/ibms390x.h:
1360 * m/ibms390.h:
1361 * m/ia64.h:
1362 * m/hp800.h:
1363 * m/arm.h:
1364 * m/amdx86-64.h: Remove dead code and references to unused
1365 and compiler defined symbols.
1366
d2b5bbda
DN
1367 * unexmips.c:
1368 * unexelf.c: Remove references to desupported systems.
1369
40dde9d1
DN
1370 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
1371
21133394
DN
1372 * m/powermac.h: Remove boilerplate comments.
1373 (NO_REMAP): Remove unused definition.
1374
3d3db608
DN
1375 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
1376 define them.
1377
c8e0e16d
KH
13782008-07-10 Kenichi Handa <handa@m17n.org>
1379
1380 * xfont.c (xfont_open): Log the reason of failure.
1381
3cba9369
SM
13822008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
1383
1384 * fontset.c (fontset_get_font_group):
1385 * font.c (font_check_otf): Specify argument types.
1386
73353585
KH
13872008-07-09 Kenichi Handa <handa@m17n.org>
1388
0e17387a
KH
1389 * coding.c (detect_coding_utf_8): Set detect_info->found only when
1390 non-ASCII char is found.
1391
73353585
KH
1392 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
1393 (reorder_font_vector): Change the arg preferred_family to font.
1394 Prefer the spec matching with font.
1395 (fontset_get_font_group): New function.
1396 (fontset_find_font): Change the format of an element of a realized
1397 fontset. Use fontset_get_font_group.
1398 (fontset_font): Try the current fontset, the default fontset, the
1399 fallbacks of the current fonset, and the fallbacks of the default
1400 fontset in this order.
1401 (face_for_char): Delete the shortcut to use the current font.
1402 (fontset_from_font): Don't set fonts for Latin in the fontset.
1403
1404 * font.h (font_make_object, font_match_p): Adjust prototypes.
1405
1406 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
1407
1408 * font.c (font_make_object): New arg entity and pixelsize.
1409 (font_check_otf_features, font_check_otf): New functions.
1410 (font_match_p): Check :lang, :script, and :otf properties.
1411
1412 * xfont.c (xfont_open): Adjust it for the change of
1413 font_make_object.
e5d05978 1414 (xfont_text_extents): Fix initial setting of metrics.
73353585
KH
1415
1416 * ftfont.c (struct ftfont_info): New member index, delete member
1417 fc_charset_idx. Make the member order compatible with struct
1418 xftfont_info.
1419 (fc_charset_table): Change charset names to registry names.
1420 (ftfont_pattern_entity): Delete the args registry and
1421 fc_charset_idx. Change the value of :font-entity property
1422 to (FONTNAME . INDEX). Always set :registry property to
1423 `iso10646-1'.
1424 (struct ftfont_cache_data): New struct.
1425 (ftfont_lookup_cache): New arg for_face.
1426 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
1427 (ftfont_driver): Set the member otf_capability.
1428 (ftfont_get_charset): Adjust it for the change of
1429 fc_charset_table.
1430 (OTF_TAG_SYM): New macro.
1431 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
1432 for the change of fc_charset_table.
1433 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
1434 ftfont_pattern_entity. Add FC_INDEX to objset.
1435 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
1436 and ftfont_pattern_entity.
1437 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
1438 font_make_object, struct ftfont_info.
1439 (ftfont_has_char): Use ftfont_get_fc_charset.
1440 (ftfont_otf_features, ftfont_otf_capability): New functions.
1441 (ftfont_shape): Use ftfont_get_otf.
e5d05978 1442 (ftfont_text_extents): Fix initial setting of metrics.
73353585
KH
1443
1444 * xftfont.c (struct xftfont_info): New member ft_size. Make the
1445 member order compatible with struct ftfont_info.
1446 (xftfont_open): Add FC_CHARSET to the pattern. Set
1447 xftfont_info->ft_size. Don't unlock the face. Check BDF
1448 properties if appropriate.
1449 (xftfont_close): Unlock the face.
1450 (xftfont_anchor_point, xftfont_shape): Deleted.
1451 (syms_of_xftfont): Don't set members anchor_point and shape of
1452 xftfont_driver.
1453
1454 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
1455 font_make_object.
1456
1457 * w32font.c (w32font_open): Adjust it for the change of
1458 font_make_object.
1459 (w32font_open_internal): Don't set properties of font_object here.
1460
7f000038
CY
14612008-07-08 Chong Yidong <cyd@stupidchicken.com>
1462
830aab93
CY
1463 * macfns.c (x_create_tip_frame):
1464 * w32fns.c (x_create_tip_frame):
1465 * xfns.c (x_create_tip_frame): Pass parameter argument to
1466 face-set-after-frame-default.
1467
7f000038
CY
1468 * xfaces.c (Finternal_merge_in_global_face): Save merged
1469 attributes for the default face back into the face vector.
1470
85cf8992
AS
14712008-07-08 Andreas Schwab <schwab@suse.de>
1472
1473 * fontset.h: Declare fontset_from_font. Don't declare
1474 new_fontset_from_font and fontset_from_font_name.
1475 * xterm.c: Include "fontset.h".
1476 * Makefile.in (xterm.o): Update dependencies.
1477
4a00783e
GM
14782008-07-08 Glenn Morris <rgm@gnu.org>
1479
1480 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
1481 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
1482
4d2d5f5f
CY
14832008-07-07 Chong Yidong <cyd@stupidchicken.com>
1484
1485 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
1486 (x_set_frame_parameters): Don't bind it.
1487
dfe66c5b
JB
14882008-07-07 Juanma Barranquero <lekktu@gmail.com>
1489
1490 * w32fns.c (map_w32_filename): Declare extern.
1491
ec7e221c
JR
14922008-07-07 Jason Rumney <jasonr@gnu.org>
1493
dfe66c5b 1494 * w32term.c (WS_EX_LAYERED): Define if not already.
ec7e221c 1495
fe5d61c4
CY
14962008-07-06 Chong Yidong <cyd@stupidchicken.com>
1497
1498 * xfaces.c (set_font_frame_param): Don't try to set the font
1499 parameter if it is still unspecified in the lface.
1500
9204cb8b
CY
15012008-07-05 Chong Yidong <cyd@stupidchicken.com>
1502
0a143d3a
CY
1503 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
1504 face if it didn't already exist.
1505
9204cb8b
CY
1506 * xdisp.c (try_window_id): Give up if word-wrapping is on.
1507
6c95e70d
AS
15082008-07-05 Andreas Schwab <schwab@suse.de>
1509
dfe66c5b 1510 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6c95e70d 1511
59230395
CY
15122008-07-05 Chong Yidong <cyd@stupidchicken.com>
1513
1514 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
1515 word-wrapping.
1516 (IT_DISPLAYING_WHITESPACE): New macro.
1517 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
1518 when word-wrapping. Simplify word-wrapping logic. Use correct
1519 pixel positions when saving copies of the iterator.
1520 (display_line): Use proper wrap point if the last character on a
1521 line was preceded by whitespace.
1522
d7c664f3
SM
15232008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
1524
1525 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
1526
9ffc8a3a
KH
15272008-07-04 Kenichi Handa <handa@m17n.org>
1528
1529 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
1530
1531 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
1532
946598bf
JR
15332008-07-02 Jason Rumney <jasonr@gnu.org>
1534
d7c664f3
SM
1535 * xfns.c (syms_of_xfns): Only define x-select-font when both
1536 HAVE_FREETYPE and USE_GTK
946598bf 1537
d7c664f3
SM
1538 * xdisp.c (next_element_from_display_vector): Move assignment out
1539 of if statement.
946598bf 1540
6cf29fe8
JR
15412008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
1542
d7c664f3 1543 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6cf29fe8 1544
d7c664f3
SM
1545 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
1546 (syms_of_fileio): Initialize and export them.
1547 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6cf29fe8 1548
d7c664f3
SM
1549 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
1550 (Fsystem_move_file_to_trash): New function.
1551 (syms_of_w32fns): Export it to lisp.
6cf29fe8 1552
79ca7db1
JR
15532008-07-01 Jason Rumney <jasonr@gnu.org>
1554
d7c664f3
SM
1555 * w32font.c (w32font_text_extents): Don't count overhang as part
1556 of width.
79ca7db1 1557
c2786a3d 15582008-06-30 Miles Bader <miles@gnu.org>
c4f4682b
MB
1559
1560 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
1561 Add `avoid_cursor_p' field.
1562
1563 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
1564 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
1565 (append_glyph, append_composite_glyph, produce_image_glyph)
c2786a3d
JB
1566 (append_stretch_glyph): Initialize avoid_cursor_p.
1567 (get_it_property): Rename from `get_line_height_property'.
c4f4682b
MB
1568 (x_produce_glyphs): Use get_it_property.
1569 (handle_line_prefix, push_display_prop): New functions.
1570 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
c2786a3d
JB
1571 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
1572 New variables.
c4f4682b
MB
1573 (syms_of_xdisp): Initialize them.
1574
7d7ad10e
KH
15752008-06-30 Kenichi Handa <handa@m17n.org>
1576
1577 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
1578 XftDefaultSubstitute (they are called in XftFontMatch).
1579 (xftfont_open): Fix args to ftfont_font_format.
1580
1581 * ftfont.c (fc_charset_table): New member lang.
1582 (ftfont_resolve_generic_family): New arg pattern.
1583 (ftfont_spec_pattern): Check fc_cahrset_table[]->lang.
1584 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
1585 (ftfont_open): Fix args to ftfont_font_format.
1586 (ftfont_font_format): New arg filename.
1587
44b754c7
CY
15882008-06-30 Chong Yidong <cyd@stupidchicken.com>
1589
1590 * xfaces.c (Finternal_merge_in_global_face): If default face was
1591 modified, realize it again. Update the font face attribute.
1592
a4521b03
JR
15932008-06-29 Jason Rumney <jasonr@gnu.org>
1594
c2786a3d 1595 * w32term.c (x_set_frame_alpha): Fix logic.
a4521b03 1596
fe44f009
KH
15972008-06-29 Kenichi Handa <handa@m17n.org>
1598
1599 * fontset.c (Finternal_char_font): Return font-object instead of
1600 font-name.
1601
c2786a3d 1602 * composite.c (get_composition_id): Fix the width calculation for TAB.
fe44f009 1603
baed8445
SM
16042008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
1605
1606 * indent.c (Fvertical_motion): Properly handle float column arg.
1607
8b61a891
JR
16082008-06-28 Jason Rumney <jasonr@gnu.org>
1609
baed8445
SM
1610 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
1611 (pfnSetLayeredWindowAttributes): New function pointer.
1612 (w32_initialize): Initialize it when supported.
1613 (x_set_frame_alpha): New function.
8b61a891 1614
baed8445
SM
1615 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
1616 (w32_frame_parm_handlers): Set alpha handler.
8b61a891 1617
baed8445 1618 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8b61a891 1619
57016d37
JR
16202008-06-27 Jason Rumney <jasonr@gnu.org>
1621
baed8445
SM
1622 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
1623 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
1624 (w32_to_x_charset, x_to_w32_charset)
1625 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
1626 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
1627 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
1628 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
1629 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
1630 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
1631 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
1632 (Qw32_charset_unicode): Remove.
1633 (syms_of_w32fns): Update for above changes.
1634
1635 * w32font.c (w32_to_x_charset, x_to_w32_charset)
1636 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
1637 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
1638 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
1639 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
1640 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
1641 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
1642 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
1643 (syms_of_w32font): Update for above changes.
57016d37 1644
d6bf1bdb
DN
16452008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
1646
1647 * s/usg5-4.h: Fix previous change: keep the correct branch of a
1648 removed #if.
9fa1c445 1649 (USG_SHARED_LIBRARIES): Remove duplicate definition.
d6bf1bdb 1650
43db14bb
JB
16512008-06-26 Juanma Barranquero <lekktu@gmail.com>
1652 Eli Zaretskii <eliz@gnu.org>
1653
1654 * makefile.w32-in (LOCAL_FLAGS):
1655 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
1656
1657 * sysdep.c (_spawnlp, _getpid):
1658 Declare with explicit _cdecl instead of _CRTAPI1.
1659
1660 * editfns.c (Fget_internal_run_time):
1661 Check for WINDOWSNT with #ifdef, not #if.
1662
c35f9821
JR
16632008-06-26 Jason Rumney <jasonr@gnu.org>
1664
43db14bb 1665 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
c35f9821 1666
57016d37 1667 * w32term.c (x_draw_glyph_string_foreground)
43db14bb
JB
1668 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
1669 Use FONT_HANDLE macro.
1670 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
c35f9821 1671
57016d37 1672 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
43db14bb 1673 (uniscribe_encode_char): Use FONT_HANDLE macro.
c35f9821 1674
43db14bb
JB
1675 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
1676 (w32font_text_extents): Use precast w32_font.
1677 (w32font_close): Free cached metrics.
1678 (w32font_open_internal): Allocate space for name on stack.
c35f9821 1679
1f8ad719
CY
16802008-06-26 Chong Yidong <cyd@stupidchicken.com>
1681
1682 * xdisp.c (extend_face_to_end_of_line): Fix last change.
1683
97e71655
JR
16842008-06-26 Jason Rumney <jasonr@gnu.org>
1685
43db14bb
JB
1686 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
1687 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
97e71655 1688
c9fc02c7
JB
16892008-06-26 Juanma Barranquero <lekktu@gmail.com>
1690
1691 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
1692
1b5defe6
JR
16932008-06-26 Jason Rumney <jasonr@gnu.org>
1694
c9fc02c7 1695 * w32bdf.c, w32bdf.h: Remove obsolete files.
1b5defe6 1696
c9fc02c7 1697 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
1b5defe6 1698
c9fc02c7
JB
1699 * w32gui.h: Don't include w32bdf.h.
1700 (XCharStruct, enum w32_char_font_type, W32FontStruct):
1701 Remove obsolete font support.
1b5defe6 1702
c9fc02c7
JB
1703 * w32font.h (struct w32font_info): Remove compat_w32_font.
1704 Add hfont member.
1705 (FONT_COMPAT): Remove obsolete macro.
1b5defe6 1706
ba60bd44 1707 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
c9fc02c7 1708 (w32font_encode_char, w32font_text_extents): Use new hfont member.
ba60bd44 1709 (w32font_open_internal): Remove compat code. Set new hfont member.
c9fc02c7 1710 (Fx_select_font): Use new hfont member.
1b5defe6 1711
57016d37 1712 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
c9fc02c7 1713 (uniscribe_encode_char): Use new hfont member.
1b5defe6 1714
57016d37 1715 * w32term.c (x_draw_glyph_string_foreground)
c9fc02c7
JB
1716 (x_draw_composite_glyph_string_foreground): Use new hfont member.
1717 (x_draw_glyph_string): Use metrics in w32font_info.
1b5defe6 1718
1fc66bca
KH
17192008-06-26 Kenichi Handa <handa@m17n.org>
1720
1721 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
1722
f2a77c3a
DN
17232008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
1724
1725 * unexnext.c:
1726 * m/ews4800.h:
1727 * m/hp9000s300.h:
1728 * m/ibm370aix.h:
1729 * m/mips-siemens.h:
1730 * m/ncr386.h:
1731 * m/next.h:
1732 * m/pmax.h:
1733 * m/powerpcle.h:
1734 * m/tandem-s2.h:
1735 * s/386bsd.h:
1736 * s/bsd386.h:
1737 * s/bsd4-1.h:
1738 * s/bsd4-2.h:
1739 * s/bsdos2-1.h:
1740 * s/bsdos2.h:
1741 * s/bsdos3.h:
1742 * s/bsdos4.h:
1743 * s/nextstep.h:
1744 * s/ultrix4-3.h:
1745 * s/usg5-0.h:
1746 * s/usg5-2-2.h:
1747 * s/usg5-2.h:
1748 * s/usg5-4-3.h:
1749 * s/ux4800.h:
1750 * s/uxpds.h:
1751 * s/uxpv.h: Remove support for obsolete systems.
1752 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
4342f814 1753 Remove, insert contents in s/hpux-10.20.h.
f2a77c3a 1754 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
4342f814 1755 Remove, insert contents in s/aix4-2.h.
f2a77c3a 1756 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
4342f814 1757 * s/bsd4-3.h: Rename to ...
f2a77c3a 1758 * s/bsd-common.h: ... this.
4342f814
JB
1759 * data.c:
1760 * doc.c:
1761 * ecrt0.c:
1762 * emacs.c:
1763 * fileio.c:
1764 * floatfns.c:
1765 * keyboard.c:
1766 * mem-limits.h:
1767 * print.c:
1768 * process.c:
1769 * sysdep.c:
1770 * syssignal.h:
1771 * systty.h:
1772 * syswait.h:
1773 * term.c:
1774 * unexec.c:
1775 * unexelf.c:
1776 * unexhp9k800.c:
1777 * m/hp800.h:
1778 * m/ibmrs6000.h:
1779 * m/mips.h:
1780 * m/vax.h:
1781 * s/darwin.h:
1782 * s/freebsd.h:
1783 * s/gnu.h:
1784 * s/ms-w32.h:
1785 * s/msdos.h:
1786 * s/netbsd.h:
1787 * s/template.h: Remove references to obsolete variables.
f2a77c3a
DN
1788
1789 * Makefile.in: Add dependencies for all unexec files.
1790 (admindir): Remove unused variable.
1791 (UNEXEC_SRC): Remove references.
1792
bd02793a
CY
17932008-06-25 Chong Yidong <cyd@stupidchicken.com>
1794
1795 * xfns.c (x_default_font_parameter): If Xft is available, first
1796 try Monospace-12 for the default font.
1797
ccedd259
JR
17982008-06-25 Jason Rumney <jasonr@gnu.org>
1799
c9fc02c7 1800 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
ccedd259 1801
fbe062b7
SM
18022008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
1803
603a0937
SM
1804 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
1805
fbe062b7
SM
1806 * buffer.c (syms_of_buffer): Remove default-word-wrap.
1807
69785ad0
JB
18082008-06-25 Juanma Barranquero <lekktu@gmail.com>
1809
1810 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
1811 <scroll-conservatively>: Fix typo in docstring.
1812
1813 * xselect.c (Fx_send_client_event): Doc fix.
1814
249e6f76
KH
18152008-06-25 Kenichi Handa <handa@m17n.org>
1816
34e97272
KH
1817 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
1818
1819 * font.c (font_parse_fcname): Remove unused variables.
69785ad0
JB
1820 (font_sort_entites): Delete the arg SPEC. Caller changed.
1821 Fix for the case of ! best_only.
34e97272
KH
1822 (font_delete_unmatched): Check DPI and AVGWIDTH too.
1823
249e6f76
KH
1824 * lisp.h (Fstring_to_unibyte): EXFUN it.
1825
69785ad0 1826 * character.h (str_to_unibyte): Extern it.
249e6f76
KH
1827
1828 * character.c (str_to_unibyte): New function.
1829
1830 * fns.c (Fstring_to_unibyte): New function.
1831 (syms_of_fns): Defsubr it.
1832
65c108e4
KH
18332008-06-24 Kenichi Handa <handa@m17n.org>
1834
1835 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
1836 DPI too.
1837 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
1838
4c3f18fe
AS
18392008-06-24 Andreas Schwab <schwab@suse.de>
1840
69785ad0 1841 * Makefile.in (${lispsource}loaddefs.el): Rename from
4c3f18fe 1842 ../lisp/loaddefs.el.
fd13748d
AS
1843 (bootstrap-clean): Do what distclean does but don't remove
1844 Makefile.
1845 (distclean): Depend on bootstrap-clean and remove Makefile.
4c3f18fe 1846
faa6190f
CY
18472008-06-24 Chong Yidong <cyd@stupidchicken.com>
1848
1849 * buffer.h (struct buffer): New member word_wrap.
1850
1851 * buffer.c (syms_of_buffer): New variables default-word-wrap and
1852 word-wrap.
1853 (init_buffer_once): Initialize them.
1854
1855 * dispextern.h (struct it): Replace bool truncate_lines_p with a
1856 line_wrap enum possessing three possible values.
1857
1858 * termopts.h: Replace truncate_partial_width_windows with
1859 Vtruncate_partial_width_windows.
1860
1861 * dispnew.c (direct_output_for_insert): Avoid direct output when
1862 inserting a space with word wrap on.
1863
1864 * indent.c (compute_motion): Obey integer values of
1865 truncate-partial-width-windows.
1866
1867 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
1868 replacing truncate_partial_width_windows.
1869 (init_iterator): If Vtruncate_partial_width_windows is an integer,
1870 truncate only if the window width is below that integer.
ba60bd44 1871 (start_display, resize_mini_window, produce_stretch_glyph)
faa6190f
CY
1872 (display_string, move_it_in_display_line_to): Use line_wrap.
1873 (back_to_previous_visible_line_start, reseat_1): Reset
1874 string_from_display_prop_p.
1875 (display_line): Extend default face to end of line when wrapping.
1876
18772008-06-24 Kim F. Storm <storm@cua.dk>
1878
1879 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
1880 to wrap continued lines at word boundaries.
1881
c3bb5465
JR
18822008-06-24 Jason Rumney <jasonr@gnu.org>
1883
69785ad0
JB
1884 * font.c (Ffont_face_attributes): Multiply pixel size before point
1885 conversion to avoid multiplying rounding error.
c3bb5465 1886
0b07ad98
JR
18872008-06-23 Jason Rumney <jasonr@gnu.org>
1888
f245f2c6
JB
1889 * w32term.c (x_draw_glyph_string_background)
1890 (x_draw_glyph_string): Remove old bdf font code.
0b07ad98 1891
69785ad0 1892 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
0b07ad98 1893
22459668
KH
18942008-06-22 Kenichi Handa <handa@m17n.org>
1895
1896 * font.c (font_find_for_lface): Try the adstyle specified in
1897 the property of LFACE_FONT of LFACE (if any).
1898
d925a426 18992008-06-21 Seiji Zenitani <zenitani@mac.com>
f245f2c6 1900 Ryo Yoshitake <ryo@shiftmode.net>
d925a426
SM
1901
1902 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
1903
b4945b95
SM
19042008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
1905
1906 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
1907 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
1908 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
1909 (witness-emacs): Remove.
1910 (lisp, shortlisp): Move loaddefs.el earlier.
1911 (mostlyclean): Forget about witness-emacs.
1912
64124279
GM
19132008-06-22 Glenn Morris <rgm@gnu.org>
1914
1915 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
36565815 1916 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
64124279 1917
768efd84
SM
19182008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
1919
1920 * Makefile.in (PRECOMP): Remove.
1921 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
1922 (witness-emacs): Run `compile-first'.
1923 (.el.elc): Use the new compile-onefile target.
1924
808dd567
KH
19252008-06-21 Kenichi Handa <handa@m17n.org>
1926
1927 * xftfont.c (xftfont_open): Handle QCembolden only when
1928 FC_EMBOLDEN is defined.
1929
0de59eae
AS
19302008-06-21 Andreas Schwab <schwab@suse.de>
1931
1932 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
58e8833b 1933 (.el.elc): Likewise.
0de59eae 1934
fb38e9c9
MB
19352008-06-21 Miles Bader <miles@gnu.org>
1936
1937 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
1938 build dir, not the lisp source dir.
1939
fc46d219
SM
19402008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
1941
1942 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
1943 (bootstrapclean): Remove.
1944 (.el.elc): New rule.
1945 (PRECOMP): New var.
1946 (../lisp/subdirs.el): Remove.
1947 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
1948 (witness-emacs): New target.
1949 (mostlyclean): Remove witness-emacs as well.
1950 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
1951 Add witness-emacs dependency.
1952
eaf1f6e7
CY
19532008-06-20 Chong Yidong <cyd@stupidchicken.com>
1954
1955 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
1956 defined by the font.
1957
49f6eb95
SM
19582008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
1959
1960 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
1961 (bootstrap-clean): New target that keeps TAGS around.
1962 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
1963 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
1964
4c100a01
JR
19652008-06-20 Jason Rumney <jasonr@gnu.org>
1966
49f6eb95
SM
1967 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
1968 Remove obsolete font code.
db61a7f8 1969
49f6eb95
SM
1970 * w32font.c (font_matches_spec): Use csb bitfield from font signature
1971 to determine language support.
4c100a01 1972
759d3f32
SM
19732008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
1974
1975 * sysdep.c (cfsetspeed): New fun extracted from the code.
1976 (cfmakeraw): Move before first use.
1977
25241b4d
SM
19782008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
1979
1980 * sysdep.c (cfmakeraw): Provide fallback implementation.
1981 (serial_configure): Provide fallback implementation of cfsetspeed.
1982
d7afccca
KH
19832008-06-20 Kenichi Handa <handa@m17n.org>
1984
dc2226d0
KH
1985 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
1986 the pattern.
1987
9b9cd864
KH
1988 * fontset.c (fontset_from_font): Copy font_spec before changing
1989 the elements.
1990
d7afccca
KH
1991 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
1992
770e2e6e
SM
19932008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
1994
1995 * w32fns.c, xfnc.c (x_default_font_parameter): Only set `font-param'
1996 for explicit `font' parameters.
1997
1998 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
1999
22e64f7c
KH
20002008-06-19 Kenichi Handa <handa@m17n.org>
2001
2002 * frame.c: Include <ctype.h>.
2003 (x_set_font_backend): Allow spacing characters in the X resource
2004 for FontBackend.
2005
27129af9
SM
20062008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
2007
2008 * w32fns.c, xfns.c (Qfont_param): New var.
2009 (syms_of_w32fns): Initialize it.
22e64f7c
KH
2010 (x_default_font_parameter): Record explicit `font' into
2011 `font-parameter'.
27129af9 2012
d26424c5
KH
20132008-06-18 Kenichi Handa <handa@m17n.org>
2014
2015 * font.c (font_parse_xlfd): Fix previous change.
2016 (font_parse_fcname): Don't use :fc-unknown-spec.
2017 (FRAME_X_DISPLAY_INFO): Besure to have at least 1 pixel height.
2018 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
2019 (font_add_log): Prepend the driver name to the resulting fonts.
2020
2021 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
2022 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
2023 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
2024
2025 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
2026 (QCembolden): New variables.
2027 (syms_of_xftfont): DEFSYM them.
2028 (xftfont_open): Call XftFontMatch. Don't trust the result of
2029 XftTextExtents8 if the pixel_size is less than 5.
2030
51cf11be
AS
20312008-06-18 Andreas Schwab <schwab@suse.de>
2032
f245f2c6 2033 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
51cf11be
AS
2034 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
2035
07d9ba9b
JR
20362008-06-18 Jason Rumney <jasonr@gnu.org>
2037
27129af9 2038 * w32font.c (w32font_list, w32font_match): Add logging.
07d9ba9b 2039
4342f814 2040 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
07d9ba9b 2041
0c36bc4e
CY
20422008-06-17 Chong Yidong <cyd@stupidchicken.com>
2043
2044 * font.c (font_parse_fcname): Store divider characters for
1578da31
CY
2045 unknown-spec list. For known key symbols, intern using correct
2046 symbol name.
0c36bc4e 2047
70d6ecc6
KH
20482008-06-17 Kenichi Handa <handa@m17n.org>
2049
2050 * xfaces.c (realize_default_face): If the frame is not on window
2051 system, set the fontset of face to nil.
2052
821bc4db
KH
20532008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
2054
f245f2c6 2055 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
821bc4db 2056
3554e566
JB
20572008-06-16 Juanma Barranquero <lekktu@gmail.com>
2058
2059 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
2060 (build_font_name_from_vector): Delete externs.
2061
2062 * xfaces.c (struct font_name): Don't declare.
2063
93eed26b
SM
20642008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
2065
2066 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
2067
d756bcd0
CY
20682008-06-16 Chong Yidong <cyd@stupidchicken.com>
2069
2070 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
2071
7a18a178
JB
20722008-06-16 Juanma Barranquero <lekktu@gmail.com>
2073
2074 * font.c (Ffont_spec): Fix usage in docstring.
48105a6a 2075 (Ffont_face_attributes): Doc fix.
7a18a178 2076
6f568955
AS
20772008-06-16 Andreas Schwab <schwab@suse.de>
2078
2079 * font.c (Ffont_face_attributes): Fix definition.
2080
3ef8c1b4
JR
20812008-06-16 Jason Rumney <jasonr@gnu.org>
2082
93eed26b 2083 * font.h (font_style_symbolic_from_value): Remove.
3ef8c1b4 2084
93eed26b
SM
2085 * font.c (font_style_symbolic_from_value): Remove.
2086 (font_style_symbolic): Revert to pre 2008-06-13 version.
3ef8c1b4 2087
93eed26b
SM
2088 * w32font.c (w32_to_fc_weight): New function.
2089 (w32font_full_name, logfont_to_fcname): Use it.
3ef8c1b4 2090
5e634ec9
KH
20912008-06-16 Kenichi Handa <handa@m17n.org>
2092
2093 * font.c (font_check_object): Delete it.
2094 (font_clear_cache): Check if a font-object is alive.
2095 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
2096 font-object to nil.
2097 (font_close_object): Don't check FONT_CLOSE_OBJECT.
2098 (font_at): Don't call font_check_object.
2babb359 2099 (Ffont_get): Return a symbol for :weight, :slant, and :width.
5e634ec9 2100
6409a955
KY
21012008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
2102
2103 * puresize.h (BASE_PURESIZE): Increase to 1230000.
2104
ce4eaddb
CY
21052008-06-16 Chong Yidong <cyd@stupidchicken.com>
2106
2107 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
2108
523dbe64
CY
21092008-06-15 Chong Yidong <cyd@stupidchicken.com>
2110
54b2ab27 2111 * font.c (font_parse_fcname): Only one decimal point.
523dbe64
CY
2112 (font_unparse_fcname): Handle data in family and foundry indices
2113 as symbols, not strings.
2114 (font_unparse_gtkname, Ffont_face_attributes): New functions.
2115
54b2ab27 2116 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
523dbe64
CY
2117
2118 * font.h (font_unparse_gtkname): Add prototype.
2119
9f296082
KH
21202008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
2121
54b2ab27 2122 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
9f296082 2123
3306c6dc
AS
21242008-06-15 Andreas Schwab <schwab@suse.de>
2125
2126 * font.c (font_update_drivers): Fix crash when no drivers match.
2127
a099c27a
SM
21282008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
2129
2130 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
2131 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
2132
a8aa344d
SM
21332008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
2134
2135 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
2136
a879ee6f
SM
21372008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2138
2139 * process.c (Fserial_process_configure, Fprocess_send_eof):
2140 Use EQ to compare Lisp_Objects.
2141
6fe9826d
JR
21422008-06-13 Jason Rumney <jasonr@gnu.org>
2143
a879ee6f 2144 * w32fns.c (Fw32_select_font): Remove old font API function.
6fe9826d 2145
a879ee6f
SM
2146 * w32font.c (logfont_to_fcname): New function.
2147 (Fx_select_font): New font dialog function compatible with
2148 GTK/fontconfig version.
6fe9826d 2149
a879ee6f
SM
2150 * font.c (font_style_symbolic_from_value): New function.
2151 (font_style_symbolic): Use it.
6fe9826d 2152
a879ee6f 2153 * font.h (font_style_symbolic_from_value): Declare new function.
6fe9826d 2154
17ab8f5d
JB
21552008-06-13 Juanma Barranquero <lekktu@gmail.com>
2156
2157 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
2158 <font-width-table>: Fix typos in docstrings.
2159
d888760c
GM
21602008-06-13 Daniel Engeler <engeler@gmail.com>
2161
2162 These changes add serial port access.
2163 * process.c: Add HAVE_SERIAL.
2164 (Fdelete_process, Fprocess_status, Fset_process_buffer)
2165 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
2166 (list_processes_1, select_wrapper, Fstop_process)
2167 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
2168 (status_notify): Modify to handle serial processes.
2169 [HAVE_SERIAL] (Fserial_process_configure)
2170 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
2171 New functions.
2172 * process.h (struct Lisp_Process): Add `type'.
2173 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
2174 New functions.
2175 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
2176 serial ports.
2177 (serial_open, serial_configure) New functions.
2178 * w32.h: Add FILE_SERIAL.
2179 (struct _child_process): Add ovl_read, ovl_write.
2180
f4cc0153
KH
21812008-06-13 Kenichi Handa <handa@m17n.org>
2182
2183 * dispextern.h (enum lface_attribute_index): New member
2184 LFACE_FOUNDRY_INDEX.
2185
2186 * font.c (font_score): Delete arg alternate_families. Check only
7a18e381 2187 weight, slant, width, and size. Ignore the difference of alias
f4cc0153 2188 style symbols.
7a18e381 2189 (font_sort_entites): Adjust for the above change. Reflect the
f4cc0153
KH
2190 order of font-driver to scores.
2191 (font_list_entities): Don't check alternate_familes here.
2192 (font_clear_prop): Handle foundry.
2193 (font_update_lface): Don't parse "foundry-family" form here.
2194 Handle FONT_FOUNDRY_INDEX.
2195 (font_find_for_lface): Likewise. Handle alternate families here.
a879ee6f 2196 If registry is nil, try iso8859-1 and ascii-0.
f4cc0153 2197 (font_open_for_lface): Pay attention to size in ENTITY.
7a18e381 2198 (font_open_by_name): Simplify by calling font_load_for_lface.
f4cc0153
KH
2199 (free_font_driver_list): Delete it.
2200 (font_update_drivers): Preserve the order of backends.
2201 (syms_of_font): Setting of sort_shift_bits adjusted for the change
2202 of font_score and font_sort_entites.
2203 (font_update_sort_order): Likewise.
2204
2205 * xfaces.c (LFACE_FOUNDRY): New macro.
2206 (check_lface_attrs): Check foundry.
7a18e381 2207 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
f4cc0153
KH
2208 (merge_face_vectors): Check foundry.
2209 (merge_face_ref): Likewise.
2210 (Finternal_set_lisp_face_attribute): Likewise.
2211 (x_update_menu_appearance): Likewise.
2212 (Finternal_get_lisp_face_attribute): Likewise.
2213 (lface_hash): Likewise.
2214 (lface_same_font_attributes_p): Likewise.
2215 (x_supports_face_attributes_p): Likewise.
2216 (tty_supports_face_attributes_p): Likewise.
2217 (Finternal_set_alternative_font_family_alist): Intern strings.
2218 (Finternal_set_alternative_font_registry_alist): Downcase strings.
2219 (realize_default_face): Set LFACE_FOUNDRY (lface).
2220
2221 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
2222 font-driver at first.
2223
2224 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
2225
d434fef5 22262008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
97dead2d
JM
2227
2228 * lread.c (Fload): Use xfree, not free on saved_doc_string.
2229
9c5e177e
JM
22302008-06-12 Jim Meyering <meyering@redhat.com>
2231
d434fef5 2232 Make unexec_free handle NULL the same way free does.
9c5e177e
JM
2233 * unexmacosx.c (unexec_free): Ignore a NULL argument.
2234
2afc21f5
SM
22352008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
2236
2237 * character.h (CHAR_TO_BYTE_SAFE): New macro.
2238 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
2239 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
2240 (WEAK_ALIAS): Simplify.
2241 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
2242 when searching a unibyte buffer.
2243
76c0de62
CY
22442008-06-12 Chong Yidong <cyd@stupidchicken.com>
2245
2246 * xfns.c (Fx_select_font): Rename from x-font-dialog.
2247
0500dcc9
JB
22482008-06-12 Juanma Barranquero <lekktu@gmail.com>
2249
2250 * w32font.c: Include ctype.h.
2251
f42adef6
JR
22522008-06-11 Jason Rumney <jasonr@gnu.org>
2253
2afc21f5
SM
2254 * w32font.c (w32font_encode_char): Detect missing glyphs that are
2255 misreported as space.
2256 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
2257 as aliases for registry iso10646-1.
f42adef6 2258
4b7cdc0e
SM
22592008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
2260
2261 * buffer.c (clone_per_buffer_values): Skip `name'.
2262
cc02ebe1
CY
22632008-06-11 Chong Yidong <cyd@stupidchicken.com>
2264
2265 * font.c (font_parse_fcname): Fix last change; accept decimal
2266 points in font size.
2267
351ccb76
JR
22682008-06-10 Jason Rumney <jasonr@gnu.org>
2269
0500dcc9
JB
2270 * w32uniscribe.c (add_opentype_font_name_to_list):
2271 Skip non unicode fonts.
351ccb76 2272
f473ed6f
CY
22732008-06-10 Chong Yidong <cyd@stupidchicken.com>
2274
2275 * xfns.c (Fx_font_dialog): New function.
2276
5d6333d5 2277 * gtkutil.c (xg_dialog_response_cb): Rename from
f473ed6f
CY
2278 xg_file_response_callback.
2279 (pop_down_dialog): Rename from pop_down_file_dialog.
2280 (xg_get_file_name): Callers changed.
2281 (xg_get_font_name): New function.
2282
5d6333d5 2283 * gtkutil.h (xg_get_font_name): Insert prototype.
f473ed6f 2284
2a3bd2e1
SM
22852008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
2286
2287 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
2288 x_underline_minimum_display_offset.
2289 (syms_of_xdisp): Declare it here rather than in xterm.c.
2290 * dispextern.h (underline_minimum_offset): Declare it.
2291 * w32term.c (x_draw_glyph_string): Use it.
2292 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
2293 (syms_of_xterm): Don't declare it any more.
2294 (x_draw_glyph_string): Adjust to the new name.
2295
d5dc6163
SM
22962008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
2297
2298 * xterm.c (x_underline_minimum_display_offset): New var.
2299 (x_draw_glyph_string): Use it.
2300 (syms_of_xterm): Declare it.
2301
0abdd197
CY
23022008-06-10 Chong Yidong <cyd@stupidchicken.com>
2303
2304 * font.c (font_parse_fcname): Accept GTK-style font names too.
2305
a1562258
SM
23062008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
2307
928b5acc
SM
2308 * dired.c (file_name_completion): Don't return t if the match is exact
2309 but with different capitalization.
2310 * minibuf.c (Ftry_completion): Simplify.
2311
a1562258
SM
2312 * window.c (Vwindow_point_insertion_type): New var.
2313 (set_window_buffer): Use it.
2314 (syms_of_window): Init and export it to Lisp.
2315
9552dbd1
KH
23162008-06-10 Kenichi Handa <handa@m17n.org>
2317
2318 * font.h (font_intern_prop): Prototype adjusted.
2319
2320 * font.c (font_intern_prop): New arg force_symbol.
a1562258
SM
2321 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
2322 Adjust for the change of font_intern_prop.
9552dbd1 2323
a1562258
SM
2324 * ftfont.c (ftfont_pattern_entity):
2325 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
2326 (w32_registry):
2327 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9552dbd1
KH
2328 the change of font_intern_prop.
2329
8993ad2e
JB
23302008-06-09 Juanma Barranquero <lekktu@gmail.com>
2331
2332 * w32menu.c (digest_single_submenu): Declare extern.
2333
0c2258fc
JR
23342008-06-09 Jason Rumney <jasonr@gnu.org>
2335
a1562258 2336 * w32term.c (x_make_frame_visible): Use alternate restore flags.
12f71857 2337
a1562258
SM
2338 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
2339 (parse_single_submenu): Remove.
2340 (digest_single_submenu): Remove.
2341 (syms_of_w32menu): Don't initialise variables that have moved
2342 to menu.c.
2343 (set_frame_menubar): Sync with version in xmenu.c.
2344 (w32_menu_show): Sync with xmenu_show in xmenu.c.
593c843c 2345
8993ad2e
JB
2346 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
2347 Make static again.
0c2258fc 2348
02246cb8
JR
23492008-06-09 Jason Rumney <jasonr@gnu.org>
2350
8993ad2e
JB
2351 Changes to w32 files related to the move of common menu code
2352 to menu.c on 2008-06-08 by Chong Yidong.
2353
2354 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
2355 defs to w32gui.h.
2356 (single_keymap_panes, push_menu_item, push_menu_pane):
2357 Make globally visible.
2358
d434fef5
JB
2359 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
2360 (local_free, malloc_widget_value, free_widget_value)
2361 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
2362 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
2363 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
8993ad2e 2364 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
d434fef5 2365 (menu_items, menu_items_allocated, menu_items_used)
8993ad2e
JB
2366 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
2367 (init_menu_items, finish_menu_items, discard_menu_items)
2368 (grow_menu_items, push_submenu_start, push_submenu_end)
2369 (push_left_right_boundary, push_menu_pane, push_menu_item)
2370 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
d434fef5 2371 (free_menubar_widget_tree_value, parse_single_submenu)
8993ad2e
JB
2372 (update_submenu_strings): Remove functions.
2373 (xmalloc_widget_value): Remove and declare extern.
2374
2375 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
2376 (OBJ1): Build it.
2377
2378 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
2379 (local_heap, local_alloc, local_free, malloc_widget_value)
2380 (free_widget_value): Define here.
02246cb8 2381
9e1bb909
KH
23822008-06-09 Kenichi Handa <handa@m17n.org>
2383
366664ad
KH
2384 * font.h (Qascii_0): Extern it.
2385
9e1bb909
KH
2386 * font.c (Qascii_0): New variable.
2387 (syms_of_font): DEFSYM it.
2388 (font_open_by_name): If the registry "iso8859-1" fails, try also
2389 "ascii-0".
2390
2391 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
2392
b2ee479e
KH
23932008-06-08 Kenichi Handa <handa@m17n.org>
2394
8f440b79 2395 * .gdbinit (xfont): New command.
b2ee479e 2396
01ef9d36
AS
23972008-06-08 Andreas Schwab <schwab@suse.de>
2398
a4240420
AS
2399 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
2400 * Makefile.in (menu.o): Update dependencies.
2401
0181bf66 2402 * Makefile.in (obj): Always add menu.o.
01ef9d36
AS
2403 * emacs.c (main): Always call syms_of_menu.
2404 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
2405
c07cbae6
CY
24062008-06-08 Chong Yidong <cyd@stupidchicken.com>
2407
2408 * Makefile.in: Compile menu.c.
2409
2410 * lisp.h: Declare syms_of_menu.
2411
2412 * emacs.c (main): Call syms_of_menu.
2413
2414 * keyboard.h: Relocate platform-independent menu definitions from
2415 xmenu.c.
2416
2417 * menu.c: New file. Relocate platform-independent menu
904d8c69 2418 definitions from xmenu.c. Suggested by Adrian Robert.
c07cbae6
CY
2419
2420 * xmenu.c: Remove platform-independent menu definitions.
2421 (menu_items menu_items_inuse, menu_items_allocated)
2422 (menu_items_used, menu_items_n_panes)
2423 (menu_items_submenu_depth): Move to keyboard.h.
2424 (init_menu_items, finish_menu_items, unuse_menu_items)
2425 (discard_menu_items, restore_menu_items, save_menu_items)
2426 (grow_menu_items, push_submenu_start, push_submenu_end)
2427 (push_left_right_boundary, push_menu_pane, push_menu_item)
2428 (keymap_panes, single_keymap_panes, single_menu_item)
2429 (list_of_panes, list_of_items, find_and_call_menu_selection)
2430 (xmalloc_widget_value, free_menubar_widget_value_tree)
2431 (parse_single_submenu, digest_single_submenu)
2432 (update_submenu_strings): Move to menu.c.
2433
4958ed94
SM
24342008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
2435
2436 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
2437
408b8ab4
MB
24382008-06-06 Miles Bader <miles@gnu.org>
2439
2440 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
2441 face, not frame default.
2442
87478b52
SM
24432008-06-05 Martin Rudalics <rudalics@gmx.at>
2444
2445 * window.c (pop_up_windows, pop_up_frames)
2446 (display_buffer_reuse_frames, Vpop_up_frame_function)
2447 (Vdisplay_buffer_function, Veven_window_heights)
2448 (Vspecial_display_buffer_names, Vspecial_display_regexps)
2449 (Vspecial_display_function, Vsame_window_buffer_names)
2450 (Vsame_window_regexps, split_height_threshold)
2451 (Vsplit_window_preferred_function): Move those vars to window.el.
2452 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
2453 (Fdisplay_buffer): Move those functions to window.el.
2454 (syms_of_window): Remove corresponding declarations.
2455 (display_buffer): New function.
2456 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
2457 * dispnew.c (Flast_nonminibuf_frame): New function.
2458 * buffer.c (Fpop_to_buffer): Move to window.el.
2459
9e0e0d77
SM
24602008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
2461
2462 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
2463
4a485df8
KH
24642008-06-05 Kenichi Handa <handa@m17n.org>
2465
2466 * coding.c (detect_coding): Fix previous change.
2467 (detect_coding_system): Likewise.
2468
8ba31f36
SM
24692008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
2470
c0dc8f64
SM
2471 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
2472
8ba31f36
SM
2473 * keymap.c (Vminibuffer_local_filename_must_match_map):
2474 Rename from Vminibuffer_local_must_match_filename_map.
2475 (syms_of_keymap):
2476 * minibuf.c (Fcompleting_read): Adjust accordingly.
2477 * commands.h: Rename declaration as well.
2478
7740d2c7
KH
24792008-06-05 Kenichi Handa <handa@m17n.org>
2480
e7438ece
KH
2481 * font.c (Ffont_spec): Don't use font_parse_family_registry for
2482 family name.
2483 (Ffont_put): Likewise.
2484
2485 * fontset.c (fontset_find_font): Call font_open_for_lface with the
2486 current font-spec.
2487
7740d2c7
KH
2488 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
2489 is unspecified.
2490
2491 * xfaces.c (realize_x_face): If the font-related face attributes
e7438ece
KH
2492 are the same as those of default face, realize a new fontset from
2493 default->fontset.
9e0e0d77 2494 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7740d2c7 2495
c876b227
SM
24962008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
2497
2498 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
2499 (move_it_in_display_line): New wrapper.
2500
2501 * window.c (window_scroll_pixel_based_preserve_x)
2502 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
2503 (window_scroll_pixel_based, window_scroll_line_based):
2504 Use them to preserve column positions.
2505 (syms_of_window): Initialize them.
2506
2507 * indent.c (Fvertical_motion): Extend first arg to allow passing an
2508 (HPOS . VPOS) pair.
2509
2510 * dispextern.h (move_it_in_display_line): Declare.
2511
927abf37
JB
25122008-06-05 Juanma Barranquero <lekktu@gmail.com>
2513
2514 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
2515 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
2516 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
2517
9d14503e
JB
25182008-06-04 Juanma Barranquero <lekktu@gmail.com>
2519
2520 * window.c (Fset_window_parameter): Doc fix.
2521 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
2522
e6841c3b
JB
25232008-06-04 Joakim Verona <joakim@verona.se>
2524
2525 * window.h (struct window): Add new member window_parameters.
2526
2527 * window.c (Fwindow_parameters, Fwindow_parameter)
2528 (Fset_window_parameter): New defuns.
2529 (syms_of_window): Defsubr the new defuns.
2530 (make_window): Initialize window_parameters to nil.
2531
4ba50634
JPW
25322008-06-04 John Paul Wallington <jpw@pobox.com>
2533
2534 * eval.c (Fdefmacro): Doc fix.
2535
c0e16b14
KH
25362008-06-04 Kenichi Handa <handa@m17n.org>
2537
2538 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9e0e0d77 2539 Be sure to call setup_coding_system when we find a proper coding system.
c0e16b14
KH
2540 (detect_coding_system): Fix handling of coding->head_ascii.
2541
0615d903
AS
25422008-06-03 Andreas Schwab <schwab@suse.de>
2543
2544 * font.c (font_prop_validate_spacing): Fix last change.
2545
8a1816bb
KH
25462008-06-03 Kenichi Handa <handa@m17n.org>
2547
eea9c5c4
KH
2548 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
2549 (font_parse_fcname): Fix handling of unknown key.
2550
2551 * xfont.c (xfont_list): Try an alias.
2552
8a1816bb
KH
2553 * charset.c (char_charset): Return NULL if the arg charset_list is
2554 specified and C doesn't belong to any of them.
2555
2f593f4c 25562008-06-02 Chip Coldwell <coldwell@redhat.com>
6c5e8775
CY
2557
2558 * font.c (font_pixel_size): Don't take cdr of an integer.
2559
c2cd06e6
JM
25602008-06-02 Jim Meyering <meyering@redhat.com>
2561
70fdbb46
JM
2562 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
2563 * alloc.c (xfree): Return right away for a NULL arg.
2564 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
2565 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
2566 * mac.c (create_apple_event_from_event_ref): Likewise.
2f593f4c
JB
2567 (create_apple_event_from_drag_ref, cfstring_create_normalized):
2568 Likewise.
70fdbb46
JM
2569 * doprnt.c (doprnt1): Likewise.
2570 * frame.c (frame): Likewise.
2571 * keyboard.c (wipe_kboard): Likewise.
1f204af3 2572 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
70fdbb46
JM
2573 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
2574 * term.c (tty_default_color_capabilities, maybe_fatal)
2575 (delete_tty): Likewise.
2576 * w16select.c (string): Likewise.
2577 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
2578 * w32bdf.c (w32_free_bdf_font): Likewise.
2579 * w32fns.c (w32_unload_font): Likewise.
2580 * w32font.c (w32font_close): Likewise.
2581 * window.c (size_window): Likewise.
2582 * xselect.c (receive_incremental_selection): Likewise.
2583 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
2584 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
2585 * w32.c (stat): Likewise.
2586
2f593f4c 2587 Remove useless if-before-free tests.
70fdbb46
JM
2588 * editfns.c (Fset_time_zone_rule): Likewise.
2589 * lread.c (nosuffix): Likewise.
2590 * ralloc.c (get_bloc): Likewise.
2591 * regex.c (reg_free): Likewise.
2592 * xftfont.c (xftfont_open, xftfont_close): Likewise.
2593 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
2594 * xsmfns.c (smc_save_yourself_CB): Likewise.
c2cd06e6 2595
4fc1984a
KH
25962008-06-02 Kenichi Handa <handa@m17n.org>
2597
1d1e1245
KH
2598 * font.c (font_find_for_lface): Handle float font size.
2599 (font_open_for_lface): Likewise.
2600
4fc1984a
KH
2601 * xfaces.c (x_supports_face_attributes_p): Check face->font before
2602 comparing the properties.
2603
aee986fd
JR
26042008-06-01 Jason Rumney <jasonr@gnu.org>
2605
e6841c3b
JB
2606 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
2607 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
2608 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
2609 Don't add empty script list.
2610 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
aee986fd 2611
60a3d7ee
DN
26122008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
2613
aee986fd 2614 * Makefile.in (dot, dotdot): Remove, update users.
60a3d7ee
DN
2615 ".." has been used elsewhere in the file for a long time.
2616 (LIBXT_STATIC): Remove conditional based on unused variable.
2617
f2cec7a9
MB
26182008-06-01 Miles Bader <miles@gnu.org>
2619
2620 * xfaces.c (Vface_remapping_alist): New variable.
2621 (syms_of_xfaces): Initialize it.
2622 (enum named_merge_point_kind): New type.
2623 (struct named_merge_point): Add `named_merge_point_kind' field.
2624 (push_named_merge_point): Make cycle detection respect different
2625 named-merge-point kinds.
c876b227 2626 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
f2cec7a9
MB
2627 Remove face-name alias resolution.
2628 (lface_from_face_name): New definition using
2629 `lface_from_face_name_no_resolve'.
c876b227 2630 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
f2cec7a9
MB
2631 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
2632 (get_lface_attributes): New definition that layers face-remapping on
2633 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
2634 (lookup_basic_face): New function.
2635 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
2636 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
2637 `get_lface_attributes'.
2638 (face_at_buffer_position): Use `lookup_basic_face' to lookup
2639 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
2640 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
2641
2642 * xdisp.c (init_iterator): Pass base_face_id through
2643 `lookup_basic_face' when we actually use it as a face-id.
2644 (handle_single_display_prop): Use `lookup_basic_face' to lookup
2645 DEFAULT_FACE_ID.
2646
2647 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
2648 lookup the initial face-id.
2649
2650 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
2651
518c0b83
JB
26522008-06-01 Juanma Barranquero <lekktu@gmail.com>
2653
2654 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
2655 (Fremove_text_properties): Fix typos in docstrings.
2656
719b3d63
KH
26572008-05-31 Kenichi Handa <handa@m17n.org>
2658
e4c93315
KH
2659 * font.c (font_list_entities): Fix the car part of data to be
2660 stored in the cache.
2661
719b3d63
KH
2662 * ftfont.c (ftfont_font_format): Don't use strcasestr.
2663
d0827857
SM
26642008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
2665
2666 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
2667 Add a `test' argument so another predicate than `equal' can be used.
2668 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
2669 (map_char_table): Remove unused vars `c' and `i'.
2670 * lisp.h (Foptimize_char_table): Adjust declaration.
2671 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
2672
a266686a
KH
26732008-05-30 Kenichi Handa <handa@m17n.org>
2674
d0827857 2675 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
a266686a
KH
2676 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
2677 defined.
2678
fd9440c5
SM
26792008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
2680
2681 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
2682 (Fmake_variable_frame_local): Disallow mixing buffer-local and
2683 frame-local settings for the same variable.
2684
fd2ae9b2
KH
26852008-05-30 Kenichi Handa <handa@m17n.org>
2686
9e0e0d77 2687 * fontset.c (Ffont_info): Move to font.c.
fd2ae9b2
KH
2688 (syms_of_fontset): Delete defsubr of Sfont_info.
2689
2690 * font.c (font_style_to_value, font_score): Delete casting of the
2691 args to xstcasecmp.
2692 (register_font_driver): Increment num_font_drivers only when
2693 registering the driver globally.
9e0e0d77 2694 (Ffont_info): Move from fontset.c. Handle a font object too.
fd2ae9b2
KH
2695 (syms_of_font): Defsubr Sfont_info.
2696
eaf11618
KH
26972008-05-29 Kenichi Handa <handa@m17n.org>
2698
2699 * coding.h (enum define_coding_utf8_arg_index): New enum.
2700 (enum coding_attr_index): Change coding_attr_utf_16_bom to
2701 coding_attr_utf_bom.
fd9440c5
SM
2702 (enum utf_bom_type): Rename from utf_16_bom_type.
2703 (struct utf_16_spec): Adjust for the above change.
eaf11618
KH
2704 (struct coding_system): Add utf_8_bom in `spec' union.
2705
2706 * coding.c (CODING_UTF_8_BOM): New macro.
2707 (enum coding_category): Delete coding_category_utf_8, add
2708 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
2709 coding_category_utf_8_sig.
2710 (CATEGORY_MASK_UTF_8): Delete it.
2711 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
2712 (CATEGORY_MASK_UTF_8_SIG): New macros.
2713 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
2714 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
2715 CATEGORY_MASK_UTF_8_SIG.
2716 (CATEGORY_MASK_UTF_8): New macro.
2717 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
2718 (detect_coding_utf_8): Check BOM.
2719 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
fd9440c5 2720 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
eaf11618
KH
2721 (encode_coding_utf_16): Likewise.
2722 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
2723 (detect_coding, detect_coding_system): Handle utf-8-auto.
2724 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
2725 (syms_of_coding): Fix setting up of Vcoding_category_table.
2726
891bd142
SM
27272008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
2728
2729 * process.c (Faccept_process_output): If `millisec' is non-nil,
2730 `seconds' default to 0.
2731 (wait_reading_process_output): Also return non-nil if we read output
2732 from a non-running process.
2733
1519d52e
JR
27342008-05-29 Jason Rumney <jasonr@gnu.org>
2735
fd9440c5
SM
2736 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
2737 `raster' specified.
2738 (add_font_entity_to_list): Allow non-opentype truetype fonts back
2739 in the uniscribe backend, but disallow any font that has no
2740 unicode subrange support.
1519d52e 2741
d5ab09cd
JB
27422008-05-29 Juanma Barranquero <lekktu@gmail.com>
2743
2744 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
2745 Fix typos in docstrings.
2746
a4eec626
KH
27472008-05-29 Kenichi Handa <handa@m17n.org>
2748
2749 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
e887f2ac 2750 (Fx_family_fonts): Set frame correctly.
a4eec626 2751
a6e0b7e5
JR
27522008-05-28 Jason Rumney <jasonr@gnu.org>
2753
d5ab09cd 2754 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
a6e0b7e5 2755
6b3d752c
SM
27562008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2757
2758 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
2759 calling build_annotations.
2760
c3f9fba8
JB
27612008-05-28 Juanma Barranquero <lekktu@gmail.com>
2762
2763 * coding.c (Fdecode_coding_region, Fencode_coding_region)
2764 (Fencode_coding_string):
2765 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
2766 <latin-extra-code-table>: Fix typos in docstrings.
2767 (syms_of_coding) <coding-system-alist>: Doc fix.
2768 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
2769
00c670e1
KH
27702008-05-28 Kenichi Handa <handa@m17n.org>
2771
b75d7f28
KH
2772 * fontset.c (Ffont_info): Don't call font_close_object.
2773
2774 * font.c (font_parse_family_registry): Use Ffont_put to validate
2775 foundry and family.
2776 (font_delete_unmatched): Don't check spacing.
2777 (font_list_entities): Add spacing to the spec to list fonts.
2778
2779 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
d5ab09cd 2780 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
b75d7f28 2781
00c670e1
KH
2782 * coding.c (encode_coding_raw_text): Fix previous change.
2783 (encode_coding_object): When the dst_object is a buffer and is
2784 different from src_object, move gap to PT.
2785
45feca91
CY
27862008-05-27 Chong Yidong <cyd@stupidchicken.com>
2787
c3f9fba8 2788 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
45feca91 2789
5dd5d9eb
SM
27902008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
2791
01d45367
SM
2792 * coding.c (encode_coding_raw_text): Set coding->produced_char for
2793 all branches. Compute it differently.
2794
5dd5d9eb
SM
2795 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
2796
9c623c85
JB
27972008-05-27 Juanma Barranquero <lekktu@gmail.com>
2798
2799 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
2800 into "else if () ... else ...".
2801
943f2093
JR
28022008-05-27 Jason Rumney <jasonr@gnu.org>
2803
5dd5d9eb
SM
2804 * w32font.c (w32font_open_internal): Determine if glyph indices
2805 are likely to work here.
943f2093 2806
7385fe74
CY
28072008-05-27 Chong Yidong <cyd@stupidchicken.com>
2808
2809 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
2810 draw overlap glyphs with appropriate highlighting.
2811
4f64a164
KH
28122008-05-27 Kenichi Handa <handa@m17n.org>
2813
2814 * xfont.c (xfont_open): Fix calculation of font->average_width.
2815
1fb5aad7
SM
28162008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
2817
2818 * casefiddle.c (casify_object): Try to guess better whether the
2819 argument is a byte or a char.
2820
f8eb1603
AS
28212008-05-26 Andreas Schwab <schwab@suse.de>
2822
1fb5aad7
SM
2823 * xselect.c (x_reply_selection_request): Properly handle format == 32.
2824 Always send multiples of format size.
5a9c35e5 2825
f8eb1603
AS
2826 * xterm.c (x_set_frame_alpha): Fix type mismatch.
2827
ba93d684
JR
28282008-05-26 Jason Rumney <jasonr@gnu.org>
2829
1fb5aad7
SM
2830 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
2831 (compute_metrics): Don't set failure if we just cleared the cache.
2832 (w32_weight_table): Remove unused variable.
2833 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
2834 backwards compatibility.
ba93d684 2835
505ecc49
KH
28362008-05-25 Kenichi Handa <handa@m17n.org>
2837
1fb5aad7
SM
2838 * w32term.c (x_draw_glyph_string):
2839 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
505ecc49
KH
2840
2841 * xfaces.c: Delete unused function prototypes.
2842 (xstrlwr, font_frame): Delete them.
2843 (clear_face_cache): Delete unused variable.
2844
1fb5aad7
SM
2845 * xftfont.c (xftfont_open): Delete unused variable.
2846 If underline_thickness is not 1, adjust underline_position.
505ecc49
KH
2847
2848 * ftxfont.c (ftxfont_open): Delete unused variable.
2849
2850 * fontset.c (face_for_char): Optimize for the case of no charset
2851 property.
2852
2853 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
2854 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
2855 (otf_open, font_otf_capability, generate_otf_features)
2856 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
1fb5aad7 2857 Comment out by surrounding "#if 0" and "#endif" for the moment.
505ecc49
KH
2858 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
2859 (syms_of_font): Codes for accessing above commented out.
2860
f481eb31
EZ
28612008-05-24 Eli Zaretskii <eliz@gnu.org>
2862
2863 * w32proc.c: Include dispextern.h.
2864
2865 * w32.c: Include dispextern.h.
2866
20746fe4
JB
28672008-05-23 Juanma Barranquero <lekktu@gmail.com>
2868
2869 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
2870 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
2871 Fix typos in docstrings.
2872
e7150846
JR
28732008-05-23 Jason Rumney <jasonr@gnu.org>
2874
20746fe4 2875 * xsmfns.c: Remove includes that are already included by config.h.
e7150846 2876
dbf46ba6
KH
28772008-05-23 Kenichi Handa <handa@m17n.org>
2878
6c652beb
KH
2879 * charset.c (Qemacs, charset_emacs): New variables.
2880 (char_charset): Fix for non-Unicode characters.
2881 (syms_of_charset): Define charset_emacs.
2882
baf4d3b3 2883 * w32term.c (x_draw_glyph_string): Be sure to update
328fab2a
KH
2884 s->underline_thickness and s->underline_position. Be sure to draw
2885 underline within the current line area.
baf4d3b3
KH
2886
2887 * xterm.c (x_draw_glyph_string): Be sure to update
328fab2a 2888 s->underline_thickness and s->underline_position. Be sure to draw
90dc78a3 2889 underline within the current line area.
baf4d3b3 2890
dbf46ba6
KH
2891 * fontset.c: Delete unused variables and add casting for char *
2892 throughout the file.
2893 (fontset_font): Try the fallback fonts of the current fontset
2894 before consulting the default fontset.
2895
2896 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
2897
9e0e0d77 2898 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
dbf46ba6 2899
3b780338
JR
29002008-05-22 Jason Rumney <jasonr@gnu.org>
2901
20746fe4 2902 * font.c: Don't include strings.h.
577eba22 2903
9e0e0d77 2904 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
05131107 2905
20746fe4
JB
2906 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
2907 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
b1722a46
EZ
2908 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
2909 to call xstrcasecmp.
05131107 2910
b1722a46 2911 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
3b780338 2912
b1722a46 2913 * fontset.c (fs_query_fontset): Use xstrcasecmp.
3b780338 2914
b1722a46 2915 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
3b780338 2916
b1722a46 2917 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
3b780338 2918
a30e1957
KH
29192008-05-22 Kenichi Handa <handa@m17n.org>
2920
20746fe4 2921 * puresize.h (BASE_PURESIZE): Increase to 1220000.
955b979c 2922
20746fe4 2923 * font.c (font_prop_validate_style): Adjust for the format
64b900e3
KH
2924 change of font_style_table.
2925
a30e1957
KH
2926 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
2927 two args.
2928
2929 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
2930 two args.
2931
631248e5
SM
29322008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
2933
2934 * minibuf.c (keys_of_minibuf): Delete.
2935 * lisp.h (keys_of_minibuf): Delete.
2936 * emacs.c (main): Don't call keys_of_minibuf.
2937
318548be
KH
29382008-05-22 Kenichi Handa <handa@m17n.org>
2939
631248e5 2940 * ftfont.c (ftfont_resolve_generic_family): Rename from
318548be
KH
2941 ftfont_list_generic_family. Return a single family for each
2942 generic family.
2943 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
20746fe4
JB
2944 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
2945 Call font_add_log.
318548be
KH
2946 (ftfont_match): Call font_add_log.
2947
2948 * font.h (Ffont_xlfd_name): EXFUN adjusted.
2949 (FONT_DEBUG): Define it.
2950 (font_add_log): Extern it.
631248e5 2951 (font_assert): Rename from xassert.
318548be
KH
2952
2953 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
2954 (xfont_list_family): Call font_add_log.
2955 (xfont_match): Likewise.
631248e5 2956 (memq_no_quit): Delete.
318548be
KH
2957
2958 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
2959 call of Ffont_xlfd_name.
2960
2961 * xfaces.c (struct table_entry, slant_table, weight_table)
631248e5 2962 (swidth_table): Move to font.c.
318548be
KH
2963
2964 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
631248e5 2965 xassert are changed to font_assert. Delete many unused variables.
20746fe4
JB
2966 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
2967 New variables.
631248e5
SM
2968 (struct table_entry): Move from xfaces.c and modified.
2969 (weight_table, slant_table, width_table): Move from xfaces.c and
318548be 2970 contents adjusted for the change of struct table_entry.
20746fe4 2971 (font_style_to_value, font_style_symbolic): Adjust for the
64b900e3 2972 format change of font_style_table.
318548be
KH
2973 (font_parse_family_registry): Don't overwrite existing foundry and
2974 family of font_spec.
2975 (font_score): Fix calculation of diff for sizes.
2976 (font_sort_entites): Call font_add_log.
2977 (font_delete_unmatched): Return a newly created list.
2978 (font_list_entities): Fix previous change. Call font_add_log.
20746fe4
JB
2979 (font_matching_entity, font_open_entity, font_close_entity):
2980 Call font_add_log.
318548be 2981 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
631248e5 2982 (Finternal_set_font_style_table): Delete.
318548be
KH
2983 (BUILD_STYLE_TABLE): New macro.
2984 (build_style_table): New function.
2985 (Vfont_log, font_log_env_checked): New variables.
2986 (font_add_log): New function.
2987 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
2988 Declare Lisp variables "font-weight-table", "font-slant-table",
2989 "font-width-table", and "font-log". Initialize font_style_table.
2990
6aac1c03
DN
29912008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
2992
bcc850aa 2993 * xterm.c (x_set_frame_alpha): Move declarations before statements.
6aac1c03 2994
7950790f
GM
29952008-05-21 Seiji Zenitani <zenitani@mac.com>
2996 Ryo Yoshitake <ryo@shiftmode.net>
a2979e8e 2997
7950790f 2998 * frame.c (Qalpha): Add a new frame parameter `alpha'.
bcc850aa 2999 (Vframe_alpha_lower_limit): New variable.
b9fb2c45 3000 (x_set_alpha): New function.
a2979e8e 3001
7950790f 3002 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
a2979e8e 3003
7950790f
GM
3004 * xfns.c (x-create-frame, Qalpha):
3005 Initialize the frame parameter `alpha'.
b9fb2c45
GM
3006 * xterm.c (OPAQUE, OPACITY): New.
3007 (x_set_frame_alpha): New function.
3008 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
a2979e8e 3009
7950790f
GM
3010 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
3011 * w32fns.c (w32_frame_parm_handlers): Likewise.
a2979e8e 3012
5c2a72d9
JR
30132008-05-20 Jason Rumney <jasonr@gnu.org>
3014
20746fe4
JB
3015 * w32font.c (add_font_entity_to_list): Don't add non-opentype
3016 truetype fonts to opentype list.
5c2a72d9 3017
eb152aa9
JB
30182008-05-20 Juanma Barranquero <lekktu@gmail.com>
3019
3020 * fontset.c (Ffontset_info): Doc fix.
3021 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
3022 <ignore-relative-composition>: Fix typos in docstrings.
3023
3024 * font.c (syms-of-font) <font-encoding-alist>:
3025 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
3026 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
3027 (Ffont_otf_alternates): Doc fixes.
3028
ad00e1a3
KH
30292008-05-20 Kenichi Handa <handa@m17n.org>
3030
3031 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
3032 font.h through out the file.
9e0e0d77 3033 (FONT_DRIVERS): Rename from FONTOBJ.
12855572 3034 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
ad00e1a3
KH
3035 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
3036
3037 * emacs.c (main): Call syms_of_font unconditionally.
3038
3039 * font.h (find_font_encoding): Extern it.
3040
9e0e0d77 3041 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
ad00e1a3
KH
3042 fontset.c.
3043 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
3044 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
3045 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
3046 only when HAVE_WINDOW_SYSTEM is defined.
3047 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
3048 when HAVE_WINDOW_SYSTEM is defined.
3049
9e0e0d77
SM
3050 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
3051 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
ad00e1a3
KH
3052
3053 * xfaces.c: Include font.h unconditionally.
3054 (merge_face_ref, merge_face_vectors)
3055 (Finternal_set_lisp_face_attribute): Cancel the previous change.
3056
40a69fac
SM
30572008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
3058
3059 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
3060 indirect_variable.
3061 * eval.c (lisp_indirect_variable): New fun.
3062 (Fuser_variable_p): Use it.
3063
8c2dccbf
SM
30642008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
3065
ad97b375
SM
3066 * lisp.h (indirect_variable):
3067 * data.c (indirect_variable, let_shadows_buffer_binding_p):
3068 Use Lisp_Symbol pointers rather than Lisp_Object.
3069 Adjust callers.
3070 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
3071 To this end, change calling-convention.
3072
8c2dccbf
SM
3073 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
3074 if some non-hidden buffers are selected by string&pred.
3075
ad97b375
SM
30762008-05-19 Chong Yidong <cyd@stupidchicken.com>
3077
3078 * process.c (wait_reading_process_output): Always check status
3079 when in batch mode.
3080
25b81df4
KH
30812008-05-19 Kenichi Handa <handa@m17n.org>
3082
3083 * font.c (font_list_entities): Fix handling of cache.
3084 (font_matching_entity): Likewise.
3085
8c2dccbf 3086 * ftfont.c (cs_iso8859_1): Delete.
25b81df4 3087 (ft_face_cache): New variable.
1f204af3 3088 (struct ftfont_info): New member fc_charset_idx.
8c2dccbf 3089 (ftfont_build_basic_charsets): Delete.
25b81df4
KH
3090 (fc_charset_table): New variable.
3091 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
3092 . FC_CHARSET_IDX) as :font-entity property in the font entity.
3093 Callers changed.
dde8403f 3094 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8c2dccbf
SM
3095 (ftfont_spec_pattern): New argument fc_charset_idx.
3096 Check registry more rigidly. Change callers.
a2979e8e 3097 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
25b81df4
KH
3098 change of :font-entity property of the font.
3099
a2979e8e 3100 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
25b81df4
KH
3101 property of the font.
3102
d4a1d553
JB
31032008-05-18 Juanma Barranquero <lekktu@gmail.com>
3104
3105 * coding.c (Fcoding_system_p): Rename argument to match docstring.
3106 (Funencodable_char_position, Fcheck_coding_systems_region)
3107 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
3108 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
3109 (Ffind_operation_coding_system, Fset_coding_system_priority)
3110 (Fcoding_system_eol_type): Doc fixes.
3111
07cfc4e7
GM
31122008-05-17 Glenn Morris <rgm@gnu.org>
3113
3114 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
3115
1cab27d2
EZ
31162008-05-16 Eli Zaretskii <eliz@gnu.org>
3117
3118 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
3119 and st_gid.
3120
dde8403f 3121 * frame.c (Fdelete_frame): Don't call font_update_drivers if
1cab27d2
EZ
3122 HAVE_WINDOW_SYSTEM is not defined.
3123
3124 * xfaces.c (merge_face_ref, merge_face_vectors)
3125 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
3126 HAVE_WINDOW_SYSTEM is defined.
3127 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
3128
86b89713
SM
31292008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
3130
3131 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
3132
6750bd93
YM
31332008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3134
62867b11 3135 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
6750bd93 3136
79f105c9
KH
31372008-05-15 Kenichi Handa <handa@m17n.org>
3138
3139 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
3140 preference.
3141
6b33da9f
GM
31422008-05-15 Glenn Morris <rgm@gnu.org>
3143
3144 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
3145
d0e4433b
CY
31462008-05-15 Chong Yidong <cyd@stupidchicken.com>
3147
3148 * fns.c (init_fns): Don't initialize weak_hash_tables here.
3149 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
3150
3151 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
3152
5f2d79e0
KH
31532008-05-15 Kenichi Handa <handa@m17n.org>
3154
fd8a1cae
KH
3155 * ftfont.c (ftfont_list): Downcase family name to check generic
3156 families.
3157
3158 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
3159 font-spec for QCfont value.
3160
5f2d79e0
KH
3161 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
3162 buffer. Check the return value of it.
3163
e5e29349
JR
31642008-05-14 Jason Rumney <jasonr@gnu.org>
3165
3166 * w32term.c (w32_get_glyph_overhangs): Remove.
3167 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
3168
1f09f444
KH
31692008-05-14 Kenichi Handa <handa@m17n.org>
3170
3171 * font.c (font_prop_validate): Make nil a valid value.
be9442ad
KH
3172 (font_clear_cache): Check if the cached vector of entities is nil
3173 or not.
1f09f444 3174
ecae6af9 31752008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
f8240abd
YM
3176
3177 * emacs.c (main_thread): Conditionalize on
3178 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
3179 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
3180
3181 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
3182 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
3183 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
3184
c6b278e7
KH
31852008-05-14 Kenichi Handa <handa@m17n.org>
3186
3187 * coding.c (detect_coding_iso_2022): Ignore a coding category that
3188 has no corresponding coding system.
3189
31902008-05-14 Jason Rumney <jasonr@gnu.org>
3191
3192 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
3193
3194 * w32font.h (w32font_open_internal): Update declaration.
3195
3196 * w32font.c (w32font_open_internal): Change last argument from
3197 w32font_info struct to font object. Fill in font object from
3198 font_entity. Get Outline metrics if possible. Use them to
3199 calculate underline position and thickness. Use xlfd name as name
3200 property. Don't set codepage.
3201 (w32font_open): Pass font_object to w32font_open_internal. Don't
a879ee6f 3202 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
c6b278e7
KH
3203 (w32font_draw): Use s->font.
3204 (clear_cached_metrics): Don't clear non-existent blocks.
3205
3206 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
3207 font was not found.
a879ee6f 3208 (x_draw_glyph_string): Use underline position and thickness from font.
c6b278e7
KH
3209
3210 * w32uniscribe.c (uniscribe_open): Pass font_object to
3211 w32font_open_internal.
3212
32132008-05-14 Kenichi Handa <handa@m17n.org>
3214
3215 These changes are to delete all legacy font-handling codes, and
3216 make Emacs use only font-backends.
3217
3218 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
3219 (frame.o, image.o, print.o): Depend on $(FONTSRC).
3220
3221 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
3222
3223 * charset.h (Vcharset_non_preferred_head)
3224 (Vcurrent_iso639_language): Extern them.
3225
3226 * charset.c (Vcharset_non_preferred_head): New variable.
3227 (Vcurrent_iso639_language): New variable.
3228 (syms_of_charset): Declare it as a Lisp variable.
3229 (char_charset): Don't check non preferred charsets. As a last
3230 resort, return charset_unicode.
3231 (Fset_charset_priority): Update Vcharset_non_preferred_head.
3232
3233 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
3234 conditionals. Don't check enable_font_backend. Delete all codes
3235 used only when USE_FONT_BACKEND is not defined.
3236
3237 * dispextern.h (struct glyph_string): Change type of `font' to
3238 `struct font *'.
3239 (struct glyph_string): New member underline_position and
3240 underline_thickness.
3241 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
3242 (struct face): Change type of `font' to `struct font *'. Remove
3243 members `font_name', `font_info_id'.
3244 (per_char_metric, encode_char): Delete externs.
3245 (calc_pixel_width_or_height): Adjust the prototype.
3246
3247 * emacs.c (enable_font_backend): Delete extern.
3248 (main): Don't set enable_font_backend. Don't check the command
3249 line argument "-disable-font-backend".
3250
3251 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
3252 (enum font_property_index): New members FONT_DPI_INDEX,
3253 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
3254 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
3255 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
3256 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
3257 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
3258 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
3259 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
3260 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
3261 (struct font_spec, struct font_entity): New structs.
3262 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
3263 (struct font): Many members from old "struct font_info" moved to
3264 here. Members font and entity deleted.
3265 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
3266 the new font-related objects.
3267 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
3268 (CHECK_FONT_GET_OBJECT): Likewise.
3269 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
3270 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
3271 (struct font_driver): New members case_sensitive anc check. Type
3272 of the member list and open changed.
3273 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
3274 (font_symbolic_width, font_find_object, font_get_spec)
3275 (font_set_lface_from_name): Delete extern.
20746fe4 3276 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
c6b278e7
KH
3277
3278 * font.c: Include <strings.h>.
3279 (enable_font_backend): Delete it.
3280 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
3281 (CHECK_VALIDATE_FONT_SPEC): Delete it.
3282 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
3283 (null_string): Delete it.
3284 (null_vector): Make it static.
3285 (font_family_alist): Delete it.
3286 (Qnormal): Extern it.
3287 (QCextra, QClanguage): Delete it.
1f204af3 3288 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
c6b278e7
KH
3289 (font_make_spec, font_make_entity, font_make_object)
3290 (font_intern_prop): Renamed from intern_downcase. Don't downcase
3291 the string. Callers changed.
3292 (font_pixel_size): Adjusted for the format change of font-related
3293 objects.
3294 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
3295 (font_style_to_value, font_style_symbolic): New function.
3296 (build_font_family_alist): Delete it.
3297 (font_registry_charsets): Use Fassoc_string instead of
3298 assq_no_quit.
3299 (font_prop_validate_symbol): Don't return null_string.
3300 (font_prop_validate_style): Adjusted for the change of
3301 style-related values in a font vector.
20746fe4 3302 (font_property_table): Delete entries for QClanguage and
c6b278e7
KH
3303 QCantialias, add entries for QCavgwidth.
3304 (get_font_prop_index): Delete the 2nd argument FROM.
3305 (font_prop_validate): Arguments changed.
3306 (font_put_extra): Adjusted for the change of font-related objects.
3307 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
3308 (font_parse_fcname, font_unparse_fcname)
3309 (font_prepare_composition): Likewise.
3310 (font_parse_family_registry): Renamed from font_merge_old_spec.
3311 (otf_open): Delete the 1st arg entity.
3312 (font_otf_capability): Adjusted for the above change.
3313 (font_score): New arg alternate_families. Adjusted for the change
3314 of font-related objects.
3315 (font_sort_entites): New arg best_only.
3316 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
3317 Delete them.
3318 (font_match_p): Check alternate families.
3319 (font_find_object): Delete it.
3320 (font_check_object): New function.
c3f9fba8 3321 (font_clear_cache): Adjusted for the change of font-related objects.
c6b278e7
KH
3322 (font_delete_unmatched): New arg.
3323 (font_list_entities): Call font_driver->list with a spec that
3324 doesn't specify style-related properties.
3325 (font_matching_entity): Arguments changed. Caller changed.
c3f9fba8 3326 (font_open_entity): Adjusted for the change of font-related objects.
c6b278e7
KH
3327 (font_close_object, font_has_char, font_encode_char)
3328 (font_get_name, font_get_spec): Likewise.
c3f9fba8
JB
3329 (font_spec_from_name, font_clear_prop, font_update_lface):
3330 New functions.
3331 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
c6b278e7
KH
3332 (font_prepare_for_face, font_done_for_face, font_open_by_name)
3333 (font_at): Adjusted for the change of font-related objects.
3334 (font_range): New function.
3335 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
c3f9fba8 3336 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
c6b278e7
KH
3337 (Fcopy_font_spec, Fmerge_font_spec): New function.
3338 (Ffont_family_list): Renamed from list-families.
3339 (Finternal_set_font_style_table): Arguments changed.
3340 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
3341 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
3342 change of font-related objects.
c3f9fba8 3343 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
c6b278e7 3344
3554e566 3345 * fontset.h (struct font_info): Delete it. Most members go to
c6b278e7
KH
3346 struct font.
3347 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
3348 (enum FONT_SPEC_INDEX): Delete it.
3349 (font_info, list_fonts_func, load_font_func, query_font_func)
3350 (set_frame_fontset_func, find_ccl_program_func)
3351 (get_font_repertory_func, new_fontset_from_font_name): Delete
3352 externs.
3353 (fontset_from_font_name): Extern it.
3354 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
3355 (FONT_INFO_FROM_FACE): Deleted.
3356 (face_for_font): Adjust prototype.
3357
3358 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
3359 conditionals. Don't check enable_font_backend. Delete all codes
3360 used only when USE_FONT_BACKEND is not defined.
3361 (get_font_info_func, list_font_func, load_font_func)
3362 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
3363 (get_font_repertory_func): Delete them.
3364 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
3365 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
3366 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
3367 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
3368 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
3369 (fontset_compare_rfontdef): New function.
3370 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
3371 ront-defs by qsort. Adjusted for the change of font-group vector.
3372 (load_font_get_repertory): Deleted.
3373 (fontset_find_font): Use new macros to ref/set elements of
3374 font-def and rfont-def.
3375 (fontset_font): Fix the timing of remembering that no font for C.
3376 (free_face_fontset): Do nothing if the face has no fontset.
3377 (face_suitable_for_char_p): Use new macros to ref/set elements of
3378 rfont-def.
3379 (face_for_char): Likewise. Call face_for_char with font_object.
3380 (fs_load_font): Delete. Delete #pragma surrounding it.
3381 (fs_query_fontset): Use strcasecmp instead of strcmp.
3382 (generate_ascii_font_name): Adjusted for the format change of
3383 font-spec.
3384 (Fset_fontset_font): Likewise. Use new macros to set elements of
3385 font-def.
3386 (Fnew_fontset): Use font_unparse_xlfd to generate
3387 FONTSET_ASCII (fontset).
3388 (new_fontset_from_font_name): Deleted.
3389 (fontset_from_font): Renamed from new_fontset_from_font. Check if
3390 a fontset is already created for the font. FIx updating of
3391 Vfontset_alias_alist.
3392 (fontset_ascii_font): Deleted.
3393 (Ffont_info): Adjusted for the format change of font-spec.
3394 (Finternal_char_font): Likewise.
3395 (Ffontset_info): Likewise.
3396 (syms_of_fontset): Don't check load_font_func.
3397
3398 * fns.c (internal_equal): Handle PREV_FONT.
3399
3400 * frame.h: Delete USE_FONT_BACKEND conditional.
3401
3402 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
3403 conditionals. Don't check enable_font_backend. Delete all codes
3404 used only when USE_FONT_BACKEND is not defined.
3405 (x_set_font): Call x_new_font, not x_new_fontset2.
3406 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
3407 already set for the frame.
3408
3409 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
3410 a font-entity by font_make_entity. Use font_intern_prop instead
3411 of intern_downcase. Use FONT_SET_STYLE to set a style-related
3412 font property. If a font is scalable, set avgwidth property to 0.
3413 Set font-entity property by font_put_extra.
3414 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
3415 (ffont_driver): Adjusted for the change of struct font_driver.
3416 (ftfont_spec_pattern): New function.
3417 (ftfont_list): Return a list, not vector.
3418 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
3419 (ftfont_list_family): Don't downcase names.
3420 (ftfont_free_entity): Deleted.
3421 (ftfont_open): Return a font-ojbect. Adjusted for the change of
3422 struct font. Get underline_thickness and underline_position from
3423 font property. Don't update dpyinfo->smallest_font_height and
3424 dpyinfo->smallest_char_width.
3425 (ftfont_close): Don't free `struct font'.
3426 (ftfont_has_char): Adjusted for the format change of font-entity.
3427 (ftfont_encode_char, ftfont_text_extents): Likewise.
3428
3429 * ftxfont.c (ftxfont_list): Return a list, not vector.
3430 (ftxfont_open): Return a font-ojbect. Adjusted for the change of
3431 struct font. Get underline_thickness and underline_position from
3432 font property. Don't update dpyinfo->smallest_font_height and
3433 dpyinfo->smallest_char_width.
3434 (ftxfont_close): Don't decrese FRAME_X_DISPLAY_INFO (f)->n_fonts.
3435 (ftxfont_draw): Adjusted for the change of struct font.
3436
3437 * image.c (image_ascent): Don't include "charset.h". Include
3438 "character.h" and "font.h".
3439
3440 * lisp.h (enum pvec_type): New member PREV_FONT.
3441 (Fassoc_string): EXFUN it.
3442
3443 * print.c: Include font.h.
3444 (print_object): Handle font-related objects.
3445
3446 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
3447 conditionals. Don't check enable_font_backend. Delete all codes
3448 used only when USE_FONT_BACKEND is not defined.
3449 (handle_auto_composed_prop): Do nothing if it->f is not on a
3450 window system. Check how many following characters can be
3451 displayed by the same font.
3452 (calc_pixel_width_or_height): Type of the 4th arg is changed to
3453 'struct font *'.
3454 (get_char_face_and_encoding): Assign the whole encoding task to
3455 the `encode-char' method of a font driver.
3456 (fill_composite_glyph_string): Adjusted for the change of `struct
3457 face' and `struct glyph_string'.
3458 (fill_glyph_string): Likewise.
3459 (get_per_char_metric): Arguments changed.
3460 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
3461 and `struct glyph_string'.
3462 (produce_stretch_glyph, calc_line_height_property)
3463 (x_produce_glyphs): Likewise.
3464
3465 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
3466 conditionals. Don't check enable_font_backend. Delete all codes
3467 used only when USE_FONT_BACKEND is not defined. Use
3468 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
3469 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
3470 (Qp): Extern them.
3471 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
3472 Deleted.
3473 (struct font_name): Deleted.
3474 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
3475 (compare_fonts_by_sort_order): New function.
3476 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
3477 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
3478 Deleted.
3479 (Fx_family_fonts): Use font_list_entities, and sort fonts by
3480 compare_fonts_by_sort_order.
3481 (Fx_font_family_list): Call Ffont_family_list.
3482 (face_numeric_value, face_numeric_weight, face_numeric_slant)
3483 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
3484 (face_symbolic_slant, face_symbolic_swidth)
3485 (split_font_name_into_vector, build_font_name_from_vector)
3486 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
3487 (font_rescale_ratio, split_font_name, build_font_name)
3488 (free_font_names, sort_fonts, x_face_list_fonts)
3489 (face_font_available_p, sorted_font_list, cmp_font_names)
3490 (font_list_1, concat_font_list, font_list, remove_duplicates):
3491 Deleted.
3492 (Fx_list_fonts): Use Ffont_list.
3493 (LFACE_AVGWIDTH): Deleted.
3494 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
3495 by FONTP.
3496 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
3497 (set_lface_from_font_name): Delete it.
3498 (set_lface_from_font): Renamed from
3499 set_lface_from_font_and_fontset. Caller changed. Don't set
3500 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
3501 for face.
c3f9fba8
JB
3502 (merge_face_vectors): Copy font-spec if necessary.
3503 Clear properties of the font-spec if necessary.
c6b278e7
KH
3504 (merge_face_ref): Clear properties of the font-spec if necessary.
3505 (Finternal_set_lisp_face_attribute): Likewise.
3506 (set_font_frame_param): Use font_load_for_lface to load a
3507 font-object, and call Fmodify_frame_parameters with it.
3508 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
3509 font name by Ffont_xlfd_name.
3510 (Finternal_lisp_face_attribute_values): Don't check QCweight,
3511 QCslant, and QCwidth.
3512 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
3513 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
3514 Compare fonts by EQ.
3515 (lookup_non_ascii_face): Deleted.
3516 (face_for_font): The 2nd argument changed.
c3f9fba8
JB
3517 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
3518 Check atomic font properties by case insensitive.
c6b278e7
KH
3519 (realize_non_ascii_face): Set face->overstrike correctly.
3520 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
3521 (dump_realized_face): Get font name from
3522 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
3523
3524 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
3525 conditionals. Don't check enable_font_backend. Delete all codes
3526 used only when USE_FONT_BACKEND is not defined.
3527 (xic_create_xfontset): Original code deleted and renamed from
3528 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
3529 (x_make_gc): Don't set GCFont in GCs.
3530 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
3531 opened by "fixed".
3532 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
3533 find_ccl_program_func, query_font_func, set_frame_fontset_func,
3534 get_font_repertory_func.
3535
3536 * xfont.c: Include <stdlib.h> and "ccl.h".
3537 (struct xfont_info): New structure.
3538 (xfont_query_font): Deleted.
3539 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
3540 moved from xterm.c.
3541 (xfont_driver): Adjusted for the change of struct font_driver.
3542 (compare_font_names): New function.
3543 (xfont_list_pattern): Sort font names case insensitively. Make
3544 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
3545 (xfont_list): Return a list, not vector.
3546 (xfont_match): If the font doesn't have QCname property, generate
3547 a name from the other font properties.
3548 (xfont_open): Return a font-ojbect. Adjusted for the change of
3549 struct font. Get underline_thickness and underline_position from
3550 font property. Don't update dpyinfo->smallest_font_height and
3551 dpyinfo->smallest_char_width.
3552 (xfont_close): Don't free struct font.
3553 (xfont_prepare_face): Adjusted for the change of struct font.
3554 (xfont_done_face): Deleted.
3555 (xfont_has_char): Adjusted for the change of struct font.
3556 (xfont_encode_char, xfont_draw): Likewise.
3557 (xfont_check): New function.
3558
3559 * xftfont.c (xftfont_list): Adjusted for the change of `list'
3560 callback function.
3561 (xftfont_match): Adjusted for the fontmat change of font-entity.
3562 (xftfont_open): Adjusted for the format change of font-entity and
3563 font-object. Adjusted for the change of struct font. Return a
3564 font-object. Don't update dpyinfo->smallest_font_height and
3565 dpyinfo->smallest_char_width.
3566 (xftfont_close): Block input while calling XftFontClose.
3567 (xftfont_prepare_face): Don't block input while calling
3568 xftfont_get_colors. Adjusted for the change of struct font.
3569 (xftfont_shape): Return value of error case fixed.
3570
3571 * xrdb.c (x_load_resources): Don't setup a fontset resource.
3572
3573 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
3574 conditionals.
3575 (FONT_WIDTH): Return (f)->max_width.
3576 (struct x_display_info): Delete member `font'.
3577 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
3578 (x_find_ccl_program, x_get_font_repertory): Delete externs.
3579 (struct x_output): Change type of `font' to `struct font *'.
3580
3581 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
3582 conditionals. Don't check enable_font_backend. Delete all codes
c3f9fba8 3583 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
c6b278e7
KH
3584 (x_per_char_metric, x_encode_char): Deleted.
3585 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
3586 (x_compute_glyph_string_overhangs): Adjusted for the change of
c3f9fba8 3587 `struct face'.
c6b278e7
KH
3588 (x_draw_glyph_string_foreground)
3589 (x_draw_composite_glyph_string_foreground): Likewise.
3590 (x_draw_glyph_string): Likewise. Use font->underline_position and
3591 font->underline_thickness.
3592 (x_new_font): Renamed from x_new_fontset2.
3593 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
3594 (x_check_font): Call `check' method of a font driver.
3595 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
3596 (x_query_font, x_get_font_repertory): Deleted.
3597 (x_find_ccl_program): Renamed and moved to xfont.c.
3598 (x_redisplay_interface): Adjusted for the change of `struct
3599 redisplay_interface'.
3600
3601 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
3602 conditionals. Don't check enable_font_backend. Delete all codes
3603 used only when USE_FONT_BACKEND is not defined. Surround non-used
3604 code by "#ifdef OLD_FONT" and "endif".
3605 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
3606
3607 * w32font.h (struct w32font_info): New member.
3608 (FONT_COMPAT): New macro.
3609 (w32font_open_internal): Prototype adjusted.
3610
3611 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
3612 OLD_FONT" and "endif".
3613
3614 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
3615 conditionals. Don't check enable_font_backend. Delete all codes
3616 used only when USE_FONT_BACKEND is not defined.
3617 (w32font_open): Return a font-object. Make a font-object by
3618 font_make_object. Adjusted for the change of struct w32font_info.
3619 (w32font_close): Don't free struct font. Adjusted for the change
3620 of struct w32font_info.
3621 (w32font_encode_char, w32font_text_extents, w32font_draw):
3622 Adjusted for the change of struct w32font_info.
3623 (w32font_draw): Likewise.
3624 (w32font_list_internal): Return a list, not vector.
3625 (w32font_open_internal): Change the 4th arg to font-object.
c3f9fba8 3626 Adjusted for the change of struct w32font_info and font-object format.
c6b278e7
KH
3627 (add_font_name_to_list): Don't downcase names.
3628 (w32_enumfont_pattern_entity): Make a font-entity by
3629 font_make_entity. Adjusted for the format change of font-entity.
3630 Use FONT_SET_STYLE to set a style-related font property. If a
3631 font is scalable, set avgwidth property to 0. Set font-entity
3632 property by font_put_extra.
c3f9fba8 3633 (font_matches_spec): Adjusted for the format change of font-entity.
c6b278e7
KH
3634 (w32_weight_table, w32_decode_weight): New variables.
3635 (w32_encode_weight): New function.
3636 (fill_in_logfont): Adjusted for the format change of font-spec.
3637 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
3638 weight value.
3639 (w32font_driver): Adjusted for the change of struct font_driver.
3640
3641 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
f245f2c6 3642 conditionals. Don't check enable_font_backend. Surround non-used
c6b278e7
KH
3643 code by "#ifdef OLD_FONT" and "endif".
3644 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
3645 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
3646
3647 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
3648 conditionals. Don't check enable_font_backend. Delete all codes
3649 used only when USE_FONT_BACKEND is not defined. Surround non-used
3650 code by "#ifdef OLD_FONT" and "endif".
3651
3652 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
c3f9fba8
JB
3653 (uniscribe_open): Return value changed to font-object.
3654 Adjusted for the format change of font-object.
3655 (uniscribe_otf_capability): Adjusted for the change of struct font.
c6b278e7
KH
3656 (add_opentype_font_name_to_list): Don't downcase names.
3657 (uniscribe_font_driver): Adjusted for the change of struct
3658 font_driver.
3659
f9d4c199
CY
36602008-05-13 Chong Yidong <cyd@stupidchicken.com>
3661
3662 * dispnew.c (update_frame_1): Check if tty output is still valid
3663 before flushing it.
3664
44f249c0
JD
36652008-05-13 Jan Djärv <jan.h.d@swipnet.se>
3666
3667 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
3668 to Gtk+ menus.
3669
01bb4018
SM
36702008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
3671
3271a8f5
SM
3672 * dired.c (file_name_completion): Tweak the code so as to always do it
3673 in a single pass. Tighten the scope of some variables.
3674
01bb4018
SM
3675 * dired.c (Qdefault_directory): New var.
3676 (file_name_completion): Use it instead of Fexpand_file_name.
3677 (syms_of_dired): Initialize it.
3678
728bb8e0
SM
36792008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
3680
3681 * fileio.c (double_dollars): Remove dead code.
3682
ed4c17bb
EZ
36832008-05-10 Eli Zaretskii <eliz@gnu.org>
3684
6c5665e9
EZ
3685 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
3686 Mention w32-get-true-file-attributes in doc string.
3687
ed4c17bb
EZ
3688 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
3689
71e1f69d
GM
36902008-05-09 Glenn Morris <rgm@gnu.org>
3691
3692 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
3693 2008-04-23.
3694
ee7a2e7a
EZ
36952008-05-09 Eli Zaretskii <eliz@gnu.org>
3696
8aaaec6b
EZ
3697 Support for reporting owner and group of each file on MS-Windows:
3698 * dired.c (stat_uname, stat_gname): New functions, with special
3699 implementation for w32.
3700 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
3701
ee7a2e7a
EZ
3702 * w32.c: Rename the_passwd_* to dflt_passwd_*.
3703 (dflt_group_name): New static variable.
728bb8e0 3704 (dflt_group): Rename from the_group.
ee7a2e7a
EZ
3705 (init_user_info): Init dflt_group fields. Get user's group name
3706 from LookupAccountSid.
8aaaec6b
EZ
3707 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
3708 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
3709 New initialization states.
3710 (globals_of_w32): Initialize them to zero. Initialize the default
3711 group name to "None".
3712 (GetFileSecurity_Name): New global var, the name of the function
3713 to call for GetFileSecurity.
3714 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
3715 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
3716 (get_file_security, get_security_descriptor_owner)
3717 (get_security_descriptor_group, is_valid_sid)
3718 (get_file_security_desc, get_rid, get_name_and_id)
3719 (get_file_owner_and_group): New functions.
3720 (stat): Use get_file_security_desc and get_file_owner_and_group to
3721 report the owner and primary group of each file. Don't ignore the
728bb8e0
SM
3722 high 32 bits of file's size, now that st_size is 64-bit wide.
3723 Fix test when to get true file attributes.
8aaaec6b
EZ
3724 (init_user_info): Use get_rid instead of equivalent inline code.
3725 (fstat): Don't ignore the high 32 bits of file's size.
ee7a2e7a 3726
b199c436
CY
37272008-05-09 Chong Yidong <cyd@stupidchicken.com>
3728
3729 * image.c (png_load): Use correct bit-depth for setting background
3730 color.
3731
86914123
EZ
37322008-05-08 Eli Zaretskii <eliz@gnu.org>
3733
3734 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
3735 epa-hook.elc.
3736
67b5d7de
JB
37372008-05-08 Juanma Barranquero <lekktu@gmail.com>
3738
3739 * font.c (Ffont_match_p): Don't use `iff' in docstring.
3740
1a111394
DN
37412008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
3742
3743 * macfns.c (Fx_create_frame): Make a copy of frame parameters
3744 because the original parameters are in pure storage now.
3745 (mac_window): Remove unused params. Update callers.
3746
6d77fa95
SM
37472008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3748
7a3d90dc
SM
3749 * lread.c (substitute_object_recurse): Use lower-level primitives.
3750 Don't signal errors when traversing sub-char-tables.
3751 Don't loop over all the possible characters when traversing char-tables.
3752
6d77fa95
SM
3753 * print.c (print_preprocess): Add sub-char-tables to the print-table,
3754 just like we do in print.c.
3755
140eb764
SM
37562008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
3757
3758 * minibuf.c (Ftry_completion): Remove code left over from when we used
3759 scmp instead of Fcompare_strings.
3760
e9184ccb
JB
37612008-05-04 Juanma Barranquero <lekktu@gmail.com>
3762
3763 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
3764
0e9378b3
YM
37652008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3766
3767 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
3768 Create bitmap context in native byte order.
3769
f67e15be
MB
3770 * macterm.c (XDrawLine)
3771 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
3772 context in native byte order.
064032d0 3773
f67e15be 37742008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
50eff40f
YM
3775
3776 * config.in: Regenerate.
3777
3778 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
3779 New definitions for Image I/O support.
3780 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3781 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
3782 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
3783 (mac_data_provider_release_data, image_load_image_io)
3784 [USE_MAC_IMAGE_IO]: New functions.
3785 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
3786 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
3787 (init_image_func_pointer) [MAC_OSX]: Remove function.
3788 (image_load_quartz2d) [MAC_OSX]: Check availability of
3789 CGImageCreateWithPNGDataProvider at compile time.
3790 Use lowercase `false' for boolean constant.
3791 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
3792 Use image_load_image_io.
3793 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
3794 Don't check MyCGImageCreateWithPNGDataProvider.
3795 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
3796 Don't call init_image_func_pointer.
3797
3798 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
3799
3800 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
3801 Make variable non-static.
3802 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3803 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
3804
3805 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
3806 (RED_FROM_ULONG): Mask off higher bits.
3807 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
3808
3809 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
3810 Include AvailabilityMacros.h.
3811 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
3812 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
3813
c6bff69e
SM
38142008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
3815
3816 * chartab.c (Fset_char_table_range): If range is t, really set all
3817 chars to that value.
3818
7412d429
EZ
38192008-05-03 Eli Zaretskii <eliz@gnu.org>
3820
3821 * dired.c (Ffile_attributes): Don't allow the device number become
3822 negative.
3823
f83bbfac
DU
38242008-05-02 Daiki Ueno <ueno@unixuser.org>
3825
5a81d3d7 3826 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
f83bbfac 3827
2e3148e2
JL
38282008-05-02 Juri Linkov <juri@jurta.org>
3829
3830 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
728bb8e0
SM
3831 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
3832 DEFAULT argument as a list of default values in docstrings.
2e3148e2 3833
923fb88c
CY
38342008-05-01 Chong Yidong <cyd@stupidchicken.com>
3835
3836 * puresize.h (BASE_PURESIZE): Increase to 1210000.
3837
047aaeb9
MR
38382008-05-01 Martin Rudalics <rudalics@gmx.at>
3839
3840 * dispnew.c (change_frame_size_1): Preserve small windows when
3841 shrinking frames by calling set_window_height|width with third
3842 arg 2.
3843
3844 * window.h (struct window): Replace field too_small_ok by field
3845 resize_proportionally.
3846
3847 * window.c (make_window): Initialize resize_proportionally.
3848 (enlarge_window): Temporarily set resize_proportionally to make
3849 sure that shrink_windows does scale the window proportionally.
3850 (shrink_windows): When window has resize_proportionally set try
3851 to shrink it proportionally by stealing from other windows.
3852 (struct saved_window, Fset_window_configuration)
3853 (compare_window_configurations): Handle resize_proportionally.
3854 (WINDOW_TOTAL_SIZE): New macro.
3855 (window_min_size, shrink_windows, size_window): Use it.
c6bff69e 3856 (check_min_window_sizes): Remove. Invalid values of
047aaeb9
MR
3857 window-min-height|width are handled by window_min_size_2 now.
3858 (size_window, Fsplit_window, enlarge_window)
3859 (adjust_window_trailing_edge, grow_mini_window): Don't call
3860 check_min_window_sizes.
c6bff69e
SM
3861 (window_min_size_2, window_min_size_1, window_min_size):
3862 New argument safe_p for retrieving "safe" minimum sizes.
c3f9fba8 3863 (Fdisplay_buffer, Fsplit_window, enlarge_window)
c6bff69e
SM
3864 (adjust_window_trailing_edge, grow_mini_window):
3865 Adjust arguments of window_min_size... functions.
047aaeb9
MR
3866 (shrink_windows): Argument min_size removed. New argument
3867 safe_p allows shrinking windows to their safe minimum sizes.
3868 Calculate minimum size and decide whether a window shall be
3869 deleted for each window individually.
3870 (size_window): When nodelete_p equals 2, tell shrink_windows to
3871 delete windows only if their new minimum size is no more safe.
3872 (shrink_window_lowest_first): Call window_min_size_1 to make
3873 sure to preserve modeline of bottom-most window when resizing
3874 the minibuffer.
3875 (Fset_window_configuration, Fcurrent_window_configuration)
3876 (compare_window_configurations): Do not handle
3877 window-min-height|width any more.
3878 (syms_of_window): Clarify window-min-height|width doc-strings.
3879
2a54a229
SM
38802008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
3881
3882 * dired.c (file_name_completion): Fix up the encoding/decoding issue
3883 some more. Copy some of the code from Ftry_completions.
3884 Remove special case code that dates back to initial revision when the
3885 slash was only added when necessary and that can't trigger nowadays.
3886
384bc634
KH
38872008-04-27 Kenichi Handa <handa@m17n.org>
3888
3889 * font.c (font_prop_validate): Signal `error' instead of `font'.
3890
2c2279c6
JR
38912008-04-29 Jason Rumney <jasonr@gnu.org>
3892
3893 * w32fns.c (Fw32_battery_status): New defun.
3894 (syms_of_w32fns): Defsubr it.
3895
fb4a622a
AS
38962008-04-28 Andreas Schwab <schwab@suse.de>
3897
3898 * dired.c (file_name_completion): Fix another mixing of encoded
3899 and decoded names.
3900
23f250f4
JB
39012008-04-28 Juanma Barranquero <lekktu@gmail.com>
3902
3903 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
3904
d8d30dff
JB
39052008-04-27 Juanma Barranquero <lekktu@gmail.com>
3906
3907 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
3908
ea6104a8
AS
39092008-04-27 Andreas Schwab <schwab@suse.de>
3910
9c691c00
AS
3911 * dired.c (file_name_completion): Fix inappropriate mixing of
3912 encoded and decoded names.
3913
ec1bf773
AS
3914 * xterm.c (XTread_socket): Fix use of uninitialized variable.
3915
ea6104a8
AS
3916 * puresize.h (BASE_PURESIZE): Increase to 1200000.
3917
01388a3d
EZ
39182008-04-26 Eli Zaretskii <eliz@gnu.org>
3919
3920 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
3921 2008-03-31, it's not needed anymore with `struct stat' definition
3922 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
3923 for the same reasons.
3924
175aea10 39252008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
27af566c
CY
3926
3927 * m/sparc.h: Additional redefinitions for GNU/Linux.
3928
1289aeb8
YM
39292008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3930
3931 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
3932 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
3933 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
3934 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
3935 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
3936 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
3937 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
3938 Likewise.
3939
3940 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
c3f9fba8 3941 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
1289aeb8
YM
3942 (mac_ax_number_of_characters): Add externs.
3943 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
3944 [USE_MAC_TSM]: Likewise.
3945 (mac_handle_text_input_event) [MAC_OSX]:
3946 Handle kEventTextInputOffsetToPos for no active input area case.
3947 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
3948 (mac_handle_document_access_event)
3949 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
3950 (install_application_handler) [MAC_OSX]: Register handlers for
3951 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
3952 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
3953 Register mac_handle_document_access_event.
3954
3955 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
3956 Make functions non-static.
3957
dbd50d4b
SM
39582008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
3959
3960 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
3961 (read_file_name_completion_ignore_case, insert_default_directory)
3962 (Qdefault_directory): Move to minibuffer.el.
3963 (Fread_file_name): Call the new `read-file-name' instead.
3964
9ea37b9d 39652008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
81fe843b
YM
3966
3967 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
3968 Make function non-static.
3969 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
3970 Remove function.
3971 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
3972 Move to mactoolbox.c.
3973 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
3974
3975 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
3976 (mac_rect_make): New macro.
3977
3978 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
3979 instead of float.
3980 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
3981 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
3982 (XSetBackground) [USE_CG_DRAWING]: Likewise.
3983 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
3984 CGRectMake.
3985 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
3986 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
3987 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
3988 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
3989 instead of WindowRef in argument type.
3990 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
3991 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
3992 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
3993 instead of DISPLAY. All uses changed.
3994 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
3995 (x_calc_absolute_position): Simplify so as not to use
3996 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
81fe843b
YM
3997
3998 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
3999 instead of WindowRef in argument type.
4000 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
4001 [TARGET_API_MAC_CARBON]: Remove externs.
4002 (create_apple_event, mac_event_parameters_to_lisp)
4003 [TARGET_API_MAC_CARBON]: Add externs.
4004
d8d30dff 4005 * mactoolbox.c (Vmac_ts_script_language_on_focus)
81fe843b
YM
4006 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
4007 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
4008 is clicked.
4009 (x_activate_menubar): Remove extern for saved_menu_event_location.
4010 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
4011 Move from mac.c.
4012
9ea37b9d 40132008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a1b41389
YM
4014
4015 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
4016 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
4017
9ea37b9d 40182008-04-23 Jason Rumney <jasonr@gnu.org>
bd735631
JR
4019
4020 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
4021 attributes only for local files.
4022
4023 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
e9184ccb 4024 default to Qlocal.
bd735631 4025
88970542
JL
40262008-04-22 Juri Linkov <juri@jurta.org>
4027
4028 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
4029 read-buffer-to-switch instead of using the letter "B".
4030
92ec67e3
SM
40312008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
4032
4033 * fileio.c (Qdefault_directory): New variable.
4034 (Fread_file_name): Use it to pass `dir' to the completion functions.
4035
a32b2382
CY
40362008-04-20 Chong Yidong <cyd@stupidchicken.com>
4037
2a2e8de7 4038 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
a32b2382 4039
6c8b4f07
SM
40402008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
4041
ece5f847
SM
4042 * keyboard.c (Vpre_help_message): Remove.
4043 (show_help_echo): Remove default C code.
4044
6c8b4f07
SM
4045 * dired.c (directory_files_internal, file_name_completion):
4046 Only call ENCODE_FILE if the string is indeed decoded.
4047
73d798d5
SM
40482008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
4049
4050 * Makefile.in (TOOLKIT_DEFINES): Remove.
4051 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
4052
d8d30dff 40532008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9e13f0c3
YM
4054
4055 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
4056 (mactoolbox.o): New target.
4057
4058 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
4059 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
4060
4061 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
4062 Use mac_set_frame_window_background instead of XSetWindowBackground.
4063 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
4064 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
4065 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
4066 instead of SetWindowTitleWithCFString.
4067 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
4068 Move function to mactoolbox.c.
4069 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
4070 Use mac_set_window_modified instead of SetWindowModified.
4071 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
4072 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
4073 (Fx_focus_frame): Use mac_front_non_floating_window instead of
4074 FrontNonFloatingWindow. Use mac_activate_window instead of
4075 ActivateWindow. Use mac_active_non_floating_window instead of
4076 ActiveNonFloatingWindow.
4077 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
4078 Use mac_show_hourglass and mac_hide_hourglass.
4079 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
4080 instead of GetGlobalMouse.
4081 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
4082 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
4083 Use mac_bring_window_to_front instead of BringToFront.
4084 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
4085 mactoolbox.c.
4086 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
4087 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
4088 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
4089 mactoolbox.c.
4090
4091 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
4092 (XtPointer): Move typedef from macmenu.c.
4093 (enum button_type): Move enum from macmenu.c.
4094 (widget_value): Move typedef from macmenu.c.
4095 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
4096 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
4097 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
4098 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
4099 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
4100 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
4101 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
4102 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
4103 (Selection): Move typedef from macselect.c.
4104 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
4105 macterm.c.
4106 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
4107 (mac_is_window_collapsed, mac_bring_window_to_front)
4108 (mac_send_window_behind, mac_hide_window, mac_show_window)
4109 (mac_collapse_window, mac_front_non_floating_window)
4110 (mac_active_non_floating_window, mac_activate_window)
4111 (mac_move_window_structure, mac_move_window, mac_size_window)
4112 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
4113
4114 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
4115 (enum mac_menu_kind): Move enum to mactoolbox.c.
4116 (min_menu_id): Move variable to mactoolbox.c.
4117 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
4118 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
4119 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
4120 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
4121 [TARGET_API_MAC_CARBON]: Likewise.
4122 (XtPointer): Move typedef to macgui.h.
4123 (enum button_type): Move enum to macgui.h.
d02fe47d
MB
4124 (widget_value): Move typedef to macgui.h.
4125 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
4126 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
4127 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
4128 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
4129 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
4130 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
4131 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
4132 (popup_activated_flag): Make variable non-static.
4133 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
4134 (add_menu_item, fill_menu, dispose_menus):
4135 Move functions to mactoolbox.c.
4136 (restore_show_help_function, menu_target_item_handler)
4137 (install_menu_target_item_handler, mac_handle_dialog_event)
4138 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
4139 [TARGET_API_MAC_CARBON]: Likewise.
4140 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
4141 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
4142 (find_and_call_menu_selection, name_is_separator): Make function
4143 non-static.
4144 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
4145 to mactoolbox.c.
4146 (set_frame_menubar): Don't call install_menu_quit_handler.
4147 (menu_item_selection): New variable.
4148 (mac_menu_show): Use create_and_show_popup_menu.
4149 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
4150 selection but set variable menu_item_selection. All uses changed.
4151 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
4152 Call install_menu_quit_handler. Move to mactoolbox.c.
edd3ff1d 4153
d02fe47d
MB
4154 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
4155 (Selection): Move typedef to macgui.h.
4156 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
4157 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
4158 Make variables non-static.
4159 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
4160 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
4161 Make functions non-static.
4162 (Vmac_service_selection) [MAC_OSX]: Likewise.
4163 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
4164 (mac_valid_selection_target_p, mac_clear_selection)
4165 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
4166 (mac_put_selection_value, mac_selection_has_target_p)
4167 (mac_get_selection_value, mac_get_selection_target_list)
4168 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
4169 Move functions to mactoolbox.c.
4170 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
4171 Likewise.
4172 (copy_scrap_flavor_data, mac_handle_service_event)
4173 (install_service_handler) [MAC_OSX]: Likewise.
4174 (syms_of_macselect) <Vmac_dnd_known_types>:
4175 Use mac_dnd_default_known_types.
463f55ee 4176
d02fe47d
MB
4177 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
4178 Move to mactoolbox.c.
4179 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
4180 (Fx_selection_owner_p): Add EXFUN.
4181 (install_window_handler, remove_window_handler, XSetWindowBackground):
4182 Remove externs.
4183 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
4184 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
4185 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
4186 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
4187 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
4188 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
4189 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
4190 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
4191 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
4192 (create_and_show_popup_menu, mac_get_selection_from_symbol)
4193 (mac_valid_selection_target_p, mac_clear_selection)
4194 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
4195 (mac_put_selection_value, mac_selection_has_target_p)
4196 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
4197 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
4198 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
4199 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
4200 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
4201 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
4202 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
4203 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
4204 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
463f55ee 4205
d02fe47d 4206 * mactoolbox.c: New file.
af253914 4207
d8d30dff 42082008-04-18 Jason Rumney <jasonr@gnu.org>
af253914 4209
d02fe47d 4210 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
af253914 4211
8ee085a4
SM
42122008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
4213
73d798d5
SM
4214 * character.c (Fmultibyte_char_to_unibyte):
4215 Return latin1 chars unchanged.
5556875b 4216
8ee085a4
SM
4217 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
4218 relocated if it points to `name'.
4219
5dff5999
KH
42202008-04-17 Kenichi Handa <handa@m17n.org>
4221
4222 * data.c (Faset): Allow setting a multibyte character in an
4223 ASCII-only unibyte string.
4224
4225 * lisp.h (STRING_SET_MULTIBYTE): New macro.
4226
a51f4969
SM
42272008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
4228
4229 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
4230 done in config.h.
4231
add553ac
JB
42322008-04-16 Juanma Barranquero <lekktu@gmail.com>
4233
4234 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
4235 (Fchar_direction): Add usage in the docstring.
4236
8ad7b280
CY
42372008-04-15 Chong Yidong <cyd@stupidchicken.com>
4238
4239 * keyboard.c (read_key_sequence): Remove always-true checks.
4240
e157d7ba
JR
42412008-04-14 Jason Rumney <jasonr@gnu.org>
4242
4243 * w32font.c (w32font_open_internal): Set max_bounds.descent in
4244 compatibility struct, for better underline positioning.
4245
9ec3aaef 42462008-04-13 David Hansen <david.hansen@gmx.net>
48f7d213
MA
4247
4248 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
4249 string.
4250
36c08864
DN
42512008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
4252
4253 * m/hp800.h (XUINT, XSET): Remove.
4254
f5acc071
JB
42552008-04-12 Juanma Barranquero <lekktu@gmail.com>
4256
4257 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
4258 previous change.
4259
5b5a2ea1
SM
42602008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
4261
4262 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
4263 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
4264
492d9fd6
SM
42652008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
4266
4267 * keymap.h (map_keymap_canonical): Declare.
4268 * xmenu.c (single_keymap_panes): Use it.
4269
dd60787c
GM
42702008-04-11 Glenn Morris <rgm@gnu.org>
4271
4272 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
4273 set the target's value to that of the alias.
4274
c23b5410
SM
42752008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
4276
4277 * term.c (set_tty_color_mode): Left over typo.
4278
e89b536d
MA
42792008-04-10 Michael Albinus <michael.albinus@gmx.de>
4280
4281 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
f5acc071 4282 only after check for file name handler functions. Signal, when
e89b536d
MA
4283 native functionality is not supported.
4284 (syms_of_fileio): Declare it unconditionally.
4285
40a339c8
JR
42862008-04-10 Jason Rumney <jasonr@gnu.org>
4287
31403b24
JR
4288 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
4289 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
4290
40a339c8
JR
4291 * w32.c (logon_network_drive): Also logon to remote drives that
4292 are mapped to drive letters.
4293
96a7394f
GM
42942008-04-10 Glenn Morris <rgm@gnu.org>
4295
4296 * xdisp.c (truncate-partial-width-windows): Doc fix.
4297
34b67b0f
SM
42982008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
4299
4300 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
4301 Move functions to minibuffer.el.
4302 (syms_of_fileio): Don't declare them.
4303
c025fb0a
SM
43042008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
4305
ba5ff07b
SM
4306 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
4307 (syms_of_minibuf): Remove its initialization.
4308
c025fb0a
SM
4309 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
4310
7a6a86ad
JB
43112008-04-09 Juanma Barranquero <lekktu@gmail.com>
4312
4313 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
4314
cf907d69
JR
43152008-04-09 Jason Rumney <jasonr@gnu.org>
4316
3dc94c30
JR
4317 * makefile.w32-in (distclean): Delete makefile too.
4318 (maintainer-clean): New target.
4319
8d28646b
JR
4320 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
4321
cf907d69
JR
4322 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
4323 for new font backend and composite cases.
4324
ef5eb925
JD
43252008-04-09 Jan Djärv <jan.h.d@swipnet.se>
4326
4327 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
4328 Most of the code moved to run_timers.
4329 (do_pending_atimers): Call run_timers.
4330 (run_timers): New function.
4331
cf907d69
JR
4332 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
4333 run atimers.
ef5eb925
JD
4334
4335 * process.c (wait_reading_process_output): The same as above.
4336
9b2cd403
SM
43372008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
4338
32bae13c
SM
4339 * minibuf.c (last_exact_completion): Remove variable.
4340 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
4341 (complete_and_exit_1, complete_and_exit_2)
4342 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
4343 (Fdisplay_completion_list, display_completion_list_1)
4344 (Fminibuffer_completion_help, Fself_insert_and_exit)
8d28646b
JR
4345 (Fexit_minibuffer, Fminibuffer_message): Move functions to
4346 minibuffer.el.
32bae13c
SM
4347 (syms_of_minibuf): Remove corresponding initializations.
4348
5c4cc82a
SM
4349 * keyboard.c (Qdeactivate_mark): New var.
4350 (command_loop_1): Use it to call `deactivate-mark'.
4351 (syms_of_keyboard): Initialize it.
4352
9b2cd403
SM
4353 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
4354 to another frame.
4355 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
4356 Don't call set_tty_color_mode.
4357 (store_frame_param): Reset previous_frame rather than call
4358 set_tty_color_mode.
4359 * term.c (set_tty_color_mode): Rewrite.
4360 * dispextern.h (set_tty_color_mode): New type.
4361 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
4362
84cb7b45
SM
43632008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
4364
4365 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
4366 for generic chars, which do not exist any more in emacs-unicode.
4367
3ed051d4
MA
43682008-04-08 Michael Albinus <michael.albinus@gmx.de>
4369
4370 * coding.c (detect_coding_emacs_mule)
4371 (Ffind_operation_coding_system): Fix typo.
4372
58c3ea42
JR
43732008-04-08 Jason Rumney <jasonr@gnu.org>
4374
3bf8d230
JR
4375 * w32uniscribe.c (SNAME): Extract only symbol name.
4376
56a70cca
JR
4377 * w32font.h (struct w32_metric_cache): New struct.
4378 (w32font_info): Use it.
4379 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
4380 (CACHE_BLOCKSIZE): New constants.
3ed051d4 4381
58c3ea42
JR
4382 * w32font.c (Qja, Qko, Qzh): New symbols.
4383 (syms_of_w32font): Initialise them.
4384 (font_matches_spec): Use them to filter by language.
4385 (recompute_cached_metrics): Remove function.
4386 (compute_metrics, clear_cached_metrics): New functions.
4387 (w32font_encode_char): Use them to manage metric cache.
4388 (w32font_text_extents): Cache metrics for all glyphs on demand.
4389 Delay converting glyph indices to WORD until needed.
4390 (w32font_open_internal): Initialize metric cache to empty.
4391 (registry_to_w32_charset): Charset should always be a symbol.
4392 (fill_in_logfont, list_all_matching_fonts): Family should
4393 always be a symbol.
4394
0ce24b2d
JR
43952008-04-06 Jason Rumney <jasonr@gnu.org>
4396
4397 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
4398 Give up if glyph indices not supported. Use uniscribe obtained
4399 ABC widths for individual metrics. Map glyph clusters back to
4400 characters using fClusterStart flag. Return number of glyphs
4401 produced, not chars processed.
b7655e0c 4402 (uniscribe_shape): Map char at FROM to current glyph.
0ce24b2d 4403
5bc6ddff 44042008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
56613f06 4405
fbf57abb
JB
4406 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
4407 Use SetMenuItemHierarchicalMenu.
56613f06 4408
5bc6ddff 44092008-04-05 Jason Rumney <jasonr@gnu.org>
93421a1f 4410
5bc6ddff
MB
4411 * image.c (pbm_load): Allow color values up to 65535.
4412 Throw an error if max_color_idx is outside the supported range.
4413 Report an error when image size is invalid.
4414 Read two bytes at a time when raw images have max_color_idx above 255.
1f816871 4415
5bc6ddff 44162008-04-05 Eli Zaretskii <eliz@gnu.org>
5ed6ba5b 4417
5bc6ddff
MB
4418 * w32.c (readdir): If FindFirstFile/FindNextFile return in
4419 cFileName a file name that includes `?' characters, use the 8+3
4420 alias in cAlternateFileName instead.
5ed6ba5b 4421
5bc6ddff 44222008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
32c06229 4423
5bc6ddff
MB
4424 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
4425 append "CCL: Quitted" when the CCL program is quitted.
4426 (setup_ccl_program): Initialize ccl->quit_silently to zero.
32c06229 4427
5bc6ddff 4428 * ccl.h (struct ccl_program): New member quit_silently.
32c06229 4429
c36e15db
CY
44302008-04-05 Chong Yidong <cyd@stupidchicken.com>
4431
9605d567
CY
4432 * search.c (compile_pattern_1): Treat non-nil and non-string of
4433 search-spaces-regexp as nil.
4434
c36e15db
CY
4435 * minibuf.c (Fassoc_string): Tweak docstring.
4436
40beb147
EZ
44372008-04-05 Eli Zaretskii <eliz@gnu.org>
4438
4439 * dired.c (Ffile_attributes): Support inode numbers wider than 32
4440 bits. Remove ugly WINDOWSNT-specific kludge introduced on
4441 2008-03-14 to force inode be positive.
4442
4443 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
4444 _S_* ones, since we now use our own sys/stat.h.
4445 (stat, fstat): Don't mangle the inode number.
aa08d1ff 4446 (init_user_info): Don't restrict UID and GID to 0-60000 range.
40beb147 4447
4591d6cb
SM
44482008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
4449
d4417eb0
SM
4450 * frame.h (struct frame): Give one more bit to `visible' since we use
4451 values larger than 1 to indicate obscured frames on ttys.
4452
00f7c5ed
SM
4453 * keymap.c (Qkeymap_canonicalize): New var.
4454 (Fmap_keymap_internal): New fun.
4455 (describe_map): Use keymap-canonicalize.
4456
4591d6cb
SM
4457 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
4458 (Fundo_boundary): Set them.
4459 (syms_of_undo): Initialize them.
4460 (record_point): Use them instead of last_point_position*.
4461 (last_undo_buffer): Change type.
4462
3187540e
JR
44632008-04-04 Jason Rumney <jasonr@gnu.org>
4464
0ce24b2d
JR
4465 * w32font.c (w32font_text_extents): Use font's ascent and descent.
4466 (recompute_cached_metrics): Don't set ascent and descent per char.
4467
3187540e 4468 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
4591d6cb 4469 (uniscribe_check_otf): Add GC protection before consing.
d0bfec76 4470 Rearrange loop for counting features.
3187540e 4471
f1a6b216
SM
44722008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
4473
4474 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
4475 buffer with byte-size of source buffer.
4476
1d8dcf63
CY
44772008-04-03 Chong Yidong <cyd@stupidchicken.com>
4478
4479 * callint.c (Fcall_interactively): Handle temporary region even
4480 when shift-select-mode is off.
4481
6b8aa22a
JR
44822008-04-03 Jason Rumney <jasonr@gnu.org>
4483
4484 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
4485
2f3cbb32
KH
44862008-04-03 Kenichi Handa <handa@m17n.org>
4487
4488 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
4489 (CATEGORY_MASK_UTF_16): Likewise.
4490 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
4491 binary file.
4492 (detect_coding): Add null-byte detection for a binary file.
4493 (detect_coding_system): Likewise.
4494
43f4f91c
JR
44952008-04-03 Jason Rumney <jasonr@gnu.org>
4496
0c1b4ae2
JR
4497 * w32uniscribe.c: New file.
4498
4499 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
4500
4501 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
4502
4503 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
4504 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
4505 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
4506 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
4507 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
4508 (Qphonetic): New symbols.
4509 (syms_of_w32font): Initialize them.
4510 (font_supported_scripts): Use them.
4511 (w32font_list_family): List all charsets.
4512 (w32font_text_extents, recompute_cached_metrics): Fix metric
4513 calculations.
4514 (w32_enumfont_pattern_entity): Make full_type a DWORD.
4515 Give opentype fonts their own format.
4516 (font_matches_spec): New arguments backend and logfont.
4517 Handle :otf spec for uniscribe backend.
4518 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
4519 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
4591d6cb 4520
0c1b4ae2
JR
4521 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
4522 font backend.
4523 (globals_of_w32fns): Initialize uniscribe font backend.
4524
fbf57abb 4525 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
0c1b4ae2
JR
4526 dependencies.
4527 (w32uniscribe.$(O)): New file to build.
4528 (FONT_OBJ): Include w32uniscribe.$(O).
4529 (LIBS): Add uniscribe libraries.
4530
43f4f91c
JR
4531 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
4532
75043a7d
CY
45332008-04-02 Chong Yidong <cyd@stupidchicken.com>
4534
4535 * callint.c (Vshift_select_mode): New var.
4536 (Finteractive): Document new ^ spec.
4537 (Fcall_interactively): Call handle-shift-selection if the ^ spec
4538 is present.
4539
4540 * keyboard.c (Vthis_command_keys_shift_translated): New var.
4541 (command_loop_1): Avoid running the direct display versions of
4542 forward-char and backward-char if shift-selection may occur.
75043a7d
CY
4543 (read_key_sequence): Set Vthis_command_keys_shift_translated if
4544 shift-translation takes place.
4545
4546 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
4547 avoid clobbering by define-minor-mode.
4548
4549 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
4550 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
4551
4552 * syntax.c (Fforward_word): Add ^ interactive spec.
4553
4554 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
4555 (Fscroll_right): Add ^ interactive spec.
4556
b2b7f29e
SM
45572008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
4558
a432c0a6
SM
4559 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
4560
994b75e0
SM
4561 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
4562
b2b7f29e
SM
4563 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
4564
e99c7806
JL
45652008-03-31 Juri Linkov <juri@jurta.org>
4566
4567 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
4568
1c9c1270
JD
45692008-03-30 Jan Djärv <jan.h.d@swipnet.se>
4570
4571 * gtkutil.c (xg_set_geometry): Fix indentation.
994b75e0 4572 (xg_resize_outer_widget): Remove.
1c9c1270
JD
4573 (x_wm_size_hint_off): Fix indentation.
4574 (xg_frame_set_char_size): Call flush_and_sync after
4575 gtk_window_resize.
4576 (x_wm_set_size_hint): Pass NULL as geometry window to
4577 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
4578 Add menu bar and tool bar height to base height.
4579 (xg_update_frame_menubar, free_frame_menubar)
4580 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
994b75e0
SM
4581 (update_frame_tool_bar, free_frame_tool_bar):
4582 Change xg_resize_outer_widget to xg_frame_set_char_size.
1c9c1270 4583
90b3fc84
MA
45842008-03-30 Michael Albinus <michael.albinus@gmx.de>
4585
4586 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
4587 (Fdbus_call_method): New parameter TIMEOUT.
4588 (dbus-send-signal): Optimize UNGCPRO call.
4589
7ae6d1d1
JL
45902008-03-29 Juri Linkov <juri@jurta.org>
4591
4592 * window.c (Fdisplay_buffer): Move call to
4593 Vsplit_window_preferred_function out of conditions that check
4594 if window is eligible for vertical splitting.
4595 When Vsplit_window_preferred_function is non-nil, call it and use
4596 its non-nil return value as window. Otherwise, continue doing
4597 vertical splitting using Fsplit_window with arg horflag=nil.
4598 (syms_of_window) <Vsplit_window_preferred_function>: Change the
4599 default value from `split-window' to nil.
4600
f03f8f2c
JL
46012008-03-29 Juri Linkov <juri@jurta.org>
4602
4603 * callint.c (Fcall_interactively): Revert 2008-03-16 change
4604 for interactive code letters 'b' and 'B'.
4605
6d557778
EZ
46062008-03-29 Eli Zaretskii <eliz@gnu.org>
4607
4608 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
4609 multibyte string.
4610
58555d81
SM
46112008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
4612
4613 * keyboard.c (pending_funcalls): New var.
4614 (timer_check): Run it.
4615 (syms_of_keyboard): Initialize it.
4616 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
4617 (Vdelete_terminal_functions): New vars.
4618 (syms_of_terminal): Initialize them.
4619 (Fdelete_terminal): Run delete-terminal-functions.
4620 * xdisp.c (safe_eval): Rewrite.
4621 (safe_call2): New fun.
4622 * frame.c (Qdelete_frame_functions): New var.
4623 (syms_of_frame): Initialize it.
4624 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
4625 * lisp.h (safe_call2, pending_funcalls): Declare.
4626
4c92f429
AS
46272008-03-28 Andreas Schwab <schwab@suse.de>
4628
4629 * indent.c (Fmove_to_column): Move declaration before statements.
4630
a1567c45
SM
46312008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
4632
2806a183
SM
4633 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
4634 (struct frame): Use bit fields for boolean vars.
4635
eef60308
SM
4636 * process.c (server_accept_connection): Simplify naming.
4637 (emacs_get_tty_pgrp): Use SDATA.
4638
a1567c45
SM
4639 * coding.c (decode_coding_object): Fix last change.
4640
30076589
JR
46412008-03-27 Jason Rumney <jasonr@gnu.org>
4642
4643 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
4644
880820fe
KH
46452008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
4646
4647 * charset.c (Fdefine_charset_internal): Change the way of
4648 registering charsets in Vcharset_order_list.
4649 (syms_of_charset): Make the charset `eight-bit' supplementary.
4650
3cf8cdfb
CY
46512008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
4652
4653 * regex.c (EXTEND_BUFFER): Change order of pointer addition
4654 operations, to avoid having the difference between pointers
4655 overflow.
4656
ef6f5c0e
SM
46572008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
4658
80e3db56
SM
4659 * indent.c (check_display_width): New fun.
4660 (scan_for_column): Use it.
4661
c397dc7a
SM
4662 * data.c (syms_of_data): Mark most-positive-fixnum and
4663 most-negative-fixnum as constants.
4664
bf6b4d58
SM
4665 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
4666
ef6f5c0e
SM
4667 * indent.c (scan_for_column): Extract from current_column_1.
4668 Merge with the same code from Fmove_to_column.
4669 (current_column_1, Fmove_to_column): Use it.
4670
72d5003d
SM
46712008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
4672
12270607
SM
4673 * keymap.c (map_keymap_internal): New fun.
4674 (map_keymap): Use it.
4675 (Fmap_keymap_internal): New fun.
4676 (Fmap_keymap): Remove left-out test from before make_save_value.
4677
a10cca6c
SM
4678 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
4679
d7b10f4c
SM
4680 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
4681 Use XCAR/XCDR.
4682
5431bd6a
SM
4683 * process.h (struct Lisp_Process): Remove filter_multibyte.
4684 * process.c (QCfilter_multibyte): Remove.
4685 (setup_process_coding_systems): Don't use filter_multibyte.
4686 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
4687 (read_process_output): Don't adjust multibyteness to filter_multibyte.
4688 (Fset_process_filter_multibyte): Change the coding-system to
4689 approximate the previous behavior.
4690 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
4691 coding-system.
4692
72d5003d
SM
4693 * coding.c (decode_coding_object): When not decoding into a buffer,
4694 obey the coding system's preference of (uni|multi)byte.
4695
438eba3c
SM
46962008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
4697
4698 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
4699 every char is changed and has a different byte-length.
4700 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
4701 Fix int -> EMACS_INT.
4702
9ec3aaef 47032008-03-23 David Hansen <david.hansen@gmx.net>
a8e72f4f 4704
438eba3c 4705 * dbusbind.c (xd_read_message): Remove extra copying of message
a8e72f4f
MA
4706 strings. Check for NULL `interface' or `member'.
4707
b07103dc
EZ
47082008-03-22 Eli Zaretskii <eliz@gnu.org>
4709
4710 * w32.c (readdir): If FindFirstFile/FindNextFile return in
4711 cFileName a file name that includes `?' characters, use the 8+3
4712 alias in cAlternateFileName instead.
4713
5371d722
SM
47142008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
4715
4716 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
4717
6ba7f443
SM
47182008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
4719
4720 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
4721 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
4722 work on current_buffer only instead (that was already the case
4723 for some of the code anyway).
4724 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
4725 (temp_set_point, temp_set_point_both): Use EMACS_INT.
4726 (SET_PT, SET_PT_BOTH): Adjust.
4727 * intervals.h (set_point, temp_set_point, set_point_both)
4728 (temp_set_point_both): Remove redundant declarations.
4729
bf1c0f27
SM
47302008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
4731
4732 * fileio.c (Finsert_file_contents):
4733 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
4734 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
4735 when buffer != current_buffer anyway.
4736
acab783e
AS
47372008-03-20 Andreas Schwab <schwab@suse.de>
4738
4739 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
4740 as default.
4741
d148e14d
JR
47422008-03-19 Jason Rumney <jasonr@gnu.org>
4743
4744 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
4745 (syms_of_w32fns): Initialize them.
4746 (HOURGLASS_ID): New constant.
4747 (x_window_to_frame): Don't check hourglass_window.
4748 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
4749 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
4750 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
4751 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
4752 Only change the cursor if hourglass is not active.
4753 (Fx_create_frame): Initialize frame's current_cursor.
4754 (hourglass_atimer): Remove.
4755 (hourglass_started): New function.
4756 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
4757 (show_hourglass): Adapt to w32, changing argument to frame.
4758
4759 * w32term.h (struct w32_output): Remove hourglass_window.
4760 Add current_cursor.
4761
4762 * eval.c (call_debugger, Fsignal):
4763 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
4764 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
4765 (Fexecute_extended_command, cancel_hourglass_unwind):
4766 * minibuf.c (read_minibuf):
4767 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
63558020 4768
a5c54077
JB
47692008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
4770
4771 * window.c (run_funs): New fun.
4772 (run_window_configuration_change_hook): Use it to run the buffer-local
4773 and the global part of the hook.
4774
4775 * xdisp.c (format_mode_line_unwind_data): Add window argument.
4776 (unwind_format_mode_line): Restore selected window.
4777 (x_consider_frame_title, Fformat_mode_line): Set selected window.
4778
f9f3238f
SM
47792008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4780
253c3c82
SM
4781 * editfns.c (Fchar_equal): Check they are valid characters.
4782
f9f3238f
SM
4783 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
4784
065a118d
AS
47852008-03-17 Andreas Schwab <schwab@suse.de>
4786
0b8be006
AS
4787 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
4788 against a charset.
4789
065a118d
AS
4790 * lisp.h (Fbuffer_list): Declare.
4791
880820fe 47922008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d3b2a6da
JD
4793
4794 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
4795 handlebox_widget is != 0.
4796
6206d6c2
JL
47972008-03-16 Juri Linkov <juri@jurta.org>
4798
4799 * callint.c (Fcall_interactively): For interactive code letters
4800 'b' and 'B' put the buffer list into the list of default "future"
4801 values of the minibuffer.
4802
f5020181
AS
48032008-03-16 Andreas Schwab <schwab@suse.de>
4804
a864f6d6
AS
4805 * keyboard.c (read_key_sequence): Fix downcasing of letters with
4806 modifiers.
4807
f5020181
AS
4808 * regex.c (re_match_2_internal): Correct matching of a charset
4809 against latin-1 characters.
4810
03f244e2
KH
48112008-03-16 Kenichi Handa <handa@m17n.org>
4812
4813 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
4814 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
f9f3238f
SM
4815 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
4816 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
03f244e2
KH
4817 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
4818 CHAR_STRING_ADVANCE.
4819 (produce_chars): Fix for the case that the source and the
4820 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
4821 instead of CHAR_STRING_ADVANCE.
4822 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
4823 STRING_CHAR_ADVANCE.
4824
0e2501ed
AS
48252008-03-15 Andreas Schwab <schwab@suse.de>
4826
4827 * regex.c (re_match_2_internal): Correct matching of eight bit
4828 characters in unibyte strings.
4829
7723e095
MR
48302008-03-15 Martin Rudalics <rudalics@gmx.at>
4831
4832 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
4833 at end of range when it coincides with the end of the buffer.
4834
f507f365
EZ
48352008-03-14 Eli Zaretskii <eliz@gnu.org>
4836
294f1153
EZ
4837 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
4838
f507f365
EZ
4839 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
4840
64f0809d
JR
48412008-03-14 Jason Rumney <jasonr@gnu.org>
4842
956ae531
JR
4843 * editfns.c (initial_tz): New variable.
4844 (syms_of_editfns): Initialize it.
4845 (Fset_time_zone_rule): Set it when first called.
4846 Use it when TZSTRING is nil.
4847
64f0809d
JR
4848 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
4849 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
4850 (monitor_from_point_fn, get_monitor_info_fn): New globals.
4851 (globals_of_w32fns): Initialize them.
4852 (compute_tip_xy): Use them to position tooltips.
4853
21a4ff8e
GM
48542008-03-14 Glenn Morris <rgm@gnu.org>
4855
4856 * emacs.c (main): Revert previous change.
4857 (standard_args): Revert -internal-script back to -scriptload,
4858 and remove the long-option form.
4859
a09a5b5b
GM
48602008-03-13 Glenn Morris <rgm@gnu.org>
4861
4862 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
4863 Remove option -enable-font-backend.
4864
1c55ebd1
SM
48652008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
4866
4867 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
4868
880820fe 48692008-03-11 Jan Djärv <jan.h.d@swipnet.se>
c523e161
JD
4870
4871 * xterm.c (x_connection_closed): For GTK: If this is the last
4872 terminal just exit without closing the display.
4873
7145be81
JR
48742008-03-11 Jason Rumney <jasonr@gnu.org>
4875
4876 * w32font.c (w32font_full_name): Use floor to round.
4877
e6201af3 48782008-03-10 dhruva <dhruvakm@gmail.com> (tiny change)
ce9033f8
JD
4879
4880 * sound.c (alsa_configure): Declare vol at beginning of block.
4881
e6201af3 4882 * fontset.c (Ffontset_info): Remove extra semicolon.
ce9033f8 4883
390b81fa 48842008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
acd37560 4885
56388398
MB
4886 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
4887 size of resulting string.
af0ad939 4888
390b81fa 48892008-03-10 Jason Rumney <jasonr@gnu.org>
acd37560 4890
56388398 4891 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
acd37560 4892
390b81fa 48932008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
acd37560 4894
56388398
MB
4895 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
4896 Don't pretend as if characters with display property haven't been
4897 consumed for string-replacing-string case.
acd37560 4898
223ed6db
KS
48992008-03-08 Kim F. Storm <storm@cua.dk>
4900
4901 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
4902 (get_next_display_element, next_element_from_string)
4903 (next_element_from_ellipsis, next_element_from_buffer): Use it.
4904
28545f7c
AS
49052008-03-08 Andreas Schwab <schwab@suse.de>
4906
4907 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
4908
c960bff8
JR
49092008-03-06 Jason Rumney <jasonr@gnu.org>
4910
290afd83
JB
4911 * w32font.c (w32_registry): Take font_type argument. Use ANSI
4912 when charset not specified. Only translate ANSI to unicode when
c960bff8
JR
4913 font_type is truetype.
4914 (w32font_coverage_ok): New function.
4915 (add_font_entity_to_list): Use it to filter unsuitable fonts.
4916
87b8ce92
KH
49172008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
4918
4919 * lread.c (Fread_char): Resolve modifiers.
4920 (Fread_char_exclusive): Likewise.
4921
4922 * character.c (char_resolve_modifier_mask): New function.
4923 (char_string): Use char_resolve_modifier_mask.
4924 (Fchar_resolve_modifiers): New function.
4925 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
4926 function.
4927
cefd56f6
JR
49282008-03-04 Jason Rumney <jasonr@gnu.org>
4929
4930 * makefile.w32-in: Always include w32font.c in the build.
4931 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
4932
03bd3c1f
AS
49332008-03-04 Andreas Schwab <schwab@suse.de>
4934
4935 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
4936 (versionclean): Likewise.
4937
6f69e89b
JB
49382008-03-04 Juanma Barranquero <lekktu@gmail.com>
4939
4940 * .cvsignore: Add oo.
4941
f4a3cc44
AS
49422008-03-03 Andreas Schwab <schwab@suse.de>
4943
4944 * coding.c (decode_coding_object): Inhibit gap shrinking while
4945 decoding in place.
4946
73f838ad
DN
49472008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
4948
4949 * w32term.c: Remove unused include "gnu.h".
6f69e89b 4950 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
73f838ad
DN
4951
4952 * gnu.h: Rename to ...
4953 * emacs-icon.h: ... this.
4954 * xterm.c: Use emacs-icon.h instead of gnu.h.
4955 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
4956
ce9c1f06
JB
49572008-03-03 Juanma Barranquero <lekktu@gmail.com>
4958
4959 * w32font.c: Include math.h.
4960
34fd2d28
JR
49612008-03-03 Jason Rumney <jasonr@gnu.org>
4962
54efdcd1
JR
4963 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
4964 Compute options separately.
4965 (w32font_open_internal): Set glyph_idx before caching metrics.
4966
ce9c1f06
JB
4967 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
4968 Define if system headers don't.
4969 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
34fd2d28
JR
4970 (w32font_encode_char): Don't declare here.
4971
4972 * w32font.c (Quniscribe, QCformat): New symbols.
4973 (syms_of_w32font): Define them.
4974 (w32font_has_char): Indicate uncertainty.
ce9c1f06 4975 (w32font_encode_char): Encode as glyph point. Make static.
34fd2d28 4976 (recompute_cached_metrics): New function.
ce9c1f06
JB
4977 (w32font_open_internal): Use it. Set font to use glyph points
4978 initially. Set format based on type of font.
34fd2d28 4979 (w32font_text_extents, w32font_draw): Optionally use glyph points.
ce9c1f06
JB
4980 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
4981 on it. Set format based on information available here.
34fd2d28
JR
4982 (add_font_entity_to_list): Identify backend based on opentype_only.
4983
14daee73
AS
49842008-03-02 Andreas Schwab <schwab@suse.de>
4985
f907fb2e
AS
4986 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
4987
ce9c1f06
JB
4988 * coding.c (decode_coding_big5, produce_chars):
4989 Fix typos in last change.
14daee73 4990
c9cc6462
DN
49912008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
4992
4993 * gnu.h: New icon.
4994
119852e7
KH
49952008-03-02 Kenichi Handa <handa@m17n.org>
4996
4997 * coding.c (decode_coding_utf_8): When eol-type of CODING is
4998 `dos', don't decode '\r' if that is the last in the source.
4999 (decode_coding_utf_16, decode_coding_emacs_mule)
5000 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5001 (decode_coding_raw_text, decode_coding_charset): Likewise.
5002 (produce_chars): Don't decode EOL here. Use EMACS_INT.
5003
a823468b
JR
50042008-03-01 Jason Rumney <jasonr@gnu.org>
5005
5006 * w32font.c (w32font_full_name): Report point size for scalable fonts.
5007
4ddc7e30
KS
50082008-03-01 Kim F. Storm <storm@cua.dk>
5009
5010 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
5011
67997c79
JR
50122008-03-01 Jason Rumney <jasonr@gnu.org>
5013
5014 * w32font.c (w32font_full_name): New function.
5015 (w32font_open_internal): Use it.
5016
3f4e9c35
KS
50172008-03-01 Kim F. Storm <storm@cua.dk>
5018
5019 * dispnew.c (line_draw_cost): Fix invalid glyph check.
5020
f3b9e479
JR
50212008-03-01 Jason Rumney <jasonr@gnu.org>
5022
5023 * font.c (font_unparse_fcname): Increase len when style is a symbol.
5024
880820fe 50252008-03-01 Jan Djärv <jan.h.d@swipnet.se>
7ee480ce
JD
5026
5027 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
5028 xg_frame_resized when the event is for the edit widget.
5029
5030 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
5031
5032 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
5033 set_char_size.
5034 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
5035 operations on widgets here. Just set frame size if needed.
5036 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
5037 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
5038 (x_wm_set_size_hint): Set size hints on the edit widget only, not
5039 the whole frame.
5040 (xg_create_tool_bar): Move attachement of the tool bar to
5041 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
5042 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
5043
6c8acaa1
JR
50442008-03-01 Jason Rumney <jasonr@gnu.org>
5045
5046 * w32fns.c (w32_msg_pump): Disable debug code.
5047
51fb064b 50482008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
03eb5fab 5049
51fb064b 5050 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
cb681b34 5051
60221a33
CY
50522008-02-29 Chong Yidong <cyd@stupidchicken.com>
5053
5054 * xdisp.c (next_overlay_string): Don't set
5055 overlay_strings_at_end_processed_p if we're currently reading from
5056 a display string.
5057
10cbc34f
SM
50582008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
5059
5060 * xdisp.c (get_overlay_strings_1): Fix typo.
5061
73c0054e
CY
50622008-02-29 Chong Yidong <cyd@stupidchicken.com>
5063
5064 * xdisp.c (get_overlay_strings_1): Add missing argument type.
5065
ec1c4354
KH
50662008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
5067
55082642
KH
5068 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
5069
ec1c4354
KH
5070 * xdisp.c (display_mode_element): Cancel the previous change.
5071 (decode_mode_spec): Likewise.
ee548a94
KH
5072 (handle_auto_composed_prop): Don't make composition if it->string
5073 is a string.
ec1c4354 5074
b6d898a2
KS
50752008-02-27 Kim F. Storm <storm@cua.dk>
5076
5077 * lisp.h (GLYPH): Change type from int to struct with separate char
5078 and face_id members.
5079 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
5080 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
5081 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
5082 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
5083 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
5084 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
5085 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
5086 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
5087 handle new Lisp glyph code encoding, either an integer or a cons.
5088
5089 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
5090 (GLYPH_ALIAS): Delete.
5091 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
5092 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
5093 (GLYPH_FROM_CHAR): Replace macro by ...
5094 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
5095
5096 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
5097 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
5098 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
5099 (GLYPH_INVALID_P): New macro.
5100 (spec_glyph_lookup_face): Update prototype.
5101
5102 * dispnew.c (line_draw_cost): Adapt to new glyph type.
5103 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
5104 new glyph code encoding.
5105 (spec_glyph_lookup_face): No return value; update passed glyph instead.
5106 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
5107
5108 * xdisp.c (get_next_display_element, next_element_from_display_vector):
5109 Adapt to new glyph type and new glyph code encoding.
5110
5111 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
5112
5113 * indent.c (current_column, current_column_1, Fmove_to_column)
5114 (compute_motion): Adapt to new glyph code encoding.
5115
5116 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
5117
af2080a2
CY
51182008-02-27 Chong Yidong <cyd@stupidchicken.com>
5119
5120 * process.c (wait_reading_process_output): Check for window
5121 changes caused by timers.
880820fe 5122 Suggested by Johan Bockgård.
af2080a2 5123
253ed25e
GM
51242008-02-27 Glenn Morris <rgm@gnu.org>
5125
5126 * emacs.c (USAGE1): Add `--disable-font-backend'.
5127
18a9f8d9
SM
51282008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
5129
5130 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
5131 is made to the buffer.
5132
0f8b27ea
SM
51332008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
5134
5135 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
5136 (face_at_string_position):
5137 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
5138 (face_at_string_position):
5139 * xdisp.c (display_string, next_overlay_change):
5140 * buffer.h (overlays_at):
5141 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
5142 Update callers.
5143
4e7c53ca
CY
51442008-02-26 Chong Yidong <cyd@stupidchicken.com>
5145
5146 * editfns.c (Fformat): Doc fix.
5147
51c01100
JB
51482008-02-26 Juanma Barranquero <lekktu@gmail.com>
5149
5150 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
5151 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
5152 (Ffont_otf_alternates, Fquery_font): Doc fixes.
5153
13cda5f9
SM
51542008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
5155
5156 * buffer.c (Fbuffer_swap_text): New function.
5157 (syms_of_buffer): Defsubr it.
5158
8018d430
CY
51592008-02-25 Chong Yidong <cyd@stupidchicken.com>
5160
5161 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
5162
9bde1a21
JR
51632008-02-25 Jason Rumney <jasonr@gnu.org>
5164
5165 * w32font.c (w32font_draw): Draw one character at a time when padding.
5166
eeca6f6f
SM
51672008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
5168
5169 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
5170 Handle a nil arg. Use run_window_configuration_change_hook.
5171 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
5172 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
5173 Use run_window_configuration_change_hook.
5174
ec1c4354
KH
51752008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
5176
5177 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
5178 1-pixel width.
5179
ae185452
KH
51802008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
5181
5182 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
5183 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
5184 if the glyph in the font is zero pixel with.
5185
5186 * dispextern.h (struct glyph_string): New member padding_p.
5187
5188 * w32font.c (w32font_draw): Pay attention to s->padding_p.
5189
5190 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
5191
5192 * xfont.c (xfont_draw): Pay attention to s->padding_p.
5193
5194 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
5195
eeca6f6f 5196 * font.c: If the font driver doesn't have `shape' function, return Qnil.
ae185452 5197
ffe832ea 51982008-02-25 Jason Rumney <jasonr@gnu.org>
c9029fe5 5199
ffe832ea 5200 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
16782258 5201
06045130
SM
52022008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
5203
5204 Allow fine-grained image-cache flushing.
5205 * dispextern.h (struct image): Add `dependencies' field.
5206 (clear_image_caches): Change arg to Lisp_Object.
5207 * image.c (make_image): Initialize `dependencies' field.
5208 (clear_image_cache): Change arg to allow fine-grained flushing.
5209 Perform the flush even if image-cache-eviction-delay is nil.
5210 (clear_image_caches): Change arg to Lisp_Object.
5211 (Fclear_image_cache): Expand meaning of the argument.
5212 (mark_image): Mark `dependencies' field.
5213 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
5214 (lface_hash): Use XHASH rather than XFASTINT.
5215 (face_at_buffer_position): Fix int -> EMACS_INT position.
5216 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
5217 (select_frame_for_redisplay): Remove code duplication.
5218 (redisplay_internal): Adapt arg to call to clear_image_caches.
5219
9d2818d6
DN
52202008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
5221
5222 * s/vms4-0.h:
5223 * s/vms4-2.h:
5224 * s/vms4-4.h:
5225 * s/vms5-5.h: Remove, unused.
5226
5227 * s/irix5-2.h:
5228 * s/irix6-0.h:
5229 * s/riscos5.h:
5230 * s/mach-bsd4-3.h:
2a2e8de7 5231 * m/mips4.h: Remove files for obsolete systems.
9d2818d6
DN
5232
5233 * Makefile.in:
5234 * filelock.c:
5235 * unexmips.c:
5236 * m/hp9000s300.h:
5237 * m/iris4d.h:
5238 * s/aix3-1.h:
5239 * s/hpux.h:
5240 * s/msdos.h:
5241 * s/usg5-0.h:
5242 * s/usg5-2-2.h:
5243 * s/usg5-2.h:
5244 * s/usg5-3.h: Remove references to obsolete variables.
5245
5246 * s/irix5-0.h: Remove, move all the contents ...
5247 * s/irix6-5.h: ... here. Simplify.
5248 * config.in: Regenerate.
5249
2a36efcf
JR
52502008-02-24 Jason Rumney <jasonr@gnu.org>
5251
c5ad7a3d 5252 * w32term.c (x_draw_glyph_string_background): Clear the background
2face669
JR
5253 manually when cleartype is in use.
5254 (x_draw_glyph_string_foreground): Draw text transparently when
5255 cleartype is in use.
5256
2a36efcf
JR
5257 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
5258 a font into it unless we have to.
5259
b03f96dc 52602008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
92a8ce63 5261
b03f96dc
MB
5262 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
5263 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
92a8ce63 5264
b03f96dc 52652008-02-18 Jason Rumney <jasonr@gnu.org>
92a8ce63 5266
b03f96dc 5267 * w32fns.c (Fw32_shell_execute): Encode parameters.
92a8ce63 5268
b03f96dc 52692008-02-09 Eli Zaretskii <eliz@gnu.org>
20f1ef2e 5270
b03f96dc 5271 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
32d0a9dc 5272
b03f96dc 52732008-02-05 Juanma Barranquero <lekktu@gmail.com>
20f1ef2e 5274
b03f96dc 5275 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
77d1daf2 5276
d5958163
CY
52772008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
5278
5279 * xterm.c (x_set_offset): Don't change the gravity if
5280 CHANGE_GRAVITY is -1.
5281
9997701e
CY
52822008-02-23 Chong Yidong <cyd@stupidchicken.com>
5283
5284 * fileio.c (auto_save_error_occurred): New var.
5285 (auto_save_error): Set it.
5286 (Fdo_auto_save): Don't overwrite the error message if an auto-save
5287 error occurred.
5288
9d95a291
EZ
52892008-02-23 Eli Zaretskii <eliz@gnu.org>
5290
5291 * w32.c (globals_of_w32): Add initializations for
5292 g_b_init_get_sid_sub_authority and
5293 g_b_init_get_sid_sub_authority_count.
5294
43d1af23
SM
52952008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
5296
43a1d19b
SM
5297 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
5298 (font_parse_xlfd): Use them for sanity check.
608c3307 5299 (Finternal_set_font_style_table): Make sure the table is bijective.
43a1d19b 5300
354884c4
SM
5301 Consolidate the image_cache to the terminal struct.
5302 * termhooks.h (P_): Remove redundant def.
5303 (struct terminal): New field `image_cache'.
5304 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
5305 of FRAME_X_IMAGE_CACHE.
5306 * xterm.h (struct x_display_info): Remove image_cache field.
5307 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
5308 * w32term.h (struct w32_display_info): Remove image_cache field.
5309 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
5310 * macterm.h (struct mac_display_info): Remove image_cache field.
5311 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
5312 * xterm.c (x_term_init):
5313 * w32term.c (w32_term_init):
5314 * macterm.c (mac_term_init): Set the image_cache in the terminal.
5315 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
5316 Remove declarations.
5317 (clear_image_caches, mark_image_cache): New declarations.
5318 * xfaces.c (clear_face_cache):
5319 * xdisp.c (redisplay_internal): Use clear_image_caches.
5320 * image.c (clear_image_cache): Don't check that a frame is on
5321 a window-system before checking if it shares the same cache.
5322 (clear_image_caches): New function.
5323 (Fclear_image_cache): Use it.
5324 (mark_image): Move from allo.c.
5325 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
5326 * alloc.c (mark_image, mark_image_cache): Move to image.c.
5327 (mark_object): Don't call mark_image_cache for frames.
5328 (mark_terminals): Call mark_image_cache.
5329
c2e42690
SM
5330 * lisp.h (Fdelete_terminal): Declare.
5331
43d1af23
SM
5332 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
5333 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
5334 wrong_type_argument.
5335
cc8d1311
KH
53362008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
5337
5338 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
4a4bdfc7 5339 malayalam.el, and tamil.el. Add sinhala.el.
cc8d1311 5340
6bd92640
SM
53412008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
5342
5343 * xterm.c (x_connection_closed): Consolidate identical tests.
5344 (x_delete_terminal): Don't crash if called via x_connection_closed.
5345
a73b5627
KH
53462008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
5347
5348 * xdisp.c (decode_mode_spec): New arg string.
6bd92640 5349 (display_mode_element): Adjust for the above change.
a73b5627 5350
1b511542
SM
53512008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
5352
5353 * callint.c (Fcall_interactively): Use AREF.
5354
81aefea4
SM
53552008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
5356
5357 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
5358
880820fe 53592008-02-18 Jan Djärv <jan.h.d@swipnet.se>
2d7117fe
JD
5360
5361 * xfns.c (Fx_show_tip): Set string to " " if empty.
5362
a2b84f35
DN
53632008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
5364
5365 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
5366 with Qt.
5367
43c0454d
KH
53682008-02-17 Kenichi Handa <handa@m17n.org>
5369
5370 * ftfont.c (ftfont_shape): Return Lispy number.
5371
5372 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
5373 for GCs.
5374 (Finternal_set_font_selection_order): Call font_update_sort_order
5375 only when enable_font_backend is set.
5376 (realize_x_face): Set face->font_info to that of default face only
5377 when enable_font_backend is set.
5378
5379 * xdisp.c (handle_composition_prop): Set it->c to the fist
5380 characte of the composed region.
5381 (fill_composite_glyph_string): Set base_face->font_info to
5382 s->font_info. Get a face for ascii from base_face->ascii_face.
5383 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
5384 with a face already decided.
5385 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
5386 non-negative.
978bef9a
JB
5387 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
5388 call font_prepare_composition unconditionally.
43c0454d 5389
978bef9a 5390 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
43c0454d
KH
5391
5392 * xterm.h (struct x_display_info): New member font.
5393
5394 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
5395 (x_set_mouse_face_gc, x_new_font): Likewise.
5396 (x_term_init): Setup display_info->font.
5397 (x_delete_terminal): Free display_info->font.
5398
5399 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
5400
5401 * ftxfont.c (ftxfont_default_fid): Delete it.
5402 (ftxfont_open): Set xfont->fid to 0.
978bef9a 5403 (ftxfont_end_for_frame): Clear data specific to the frame and the
43c0454d
KH
5404 font-driver.
5405
5406 * xftfont.c (xftfont_default_fid): Delete it.
5407 (xftfont_open): Set xfont->fid to 0.
5408
5409 * fontset.c (FONTSET_OBJLIST): New macro.
5410 (fontset_find_font): Update font-object list of the fontset.
5411 (free_realized_fontset): New function.
5412 (free_face_fontset): Call free_realized_fontset.
5413 (Ffont_info): Call font_close_object only when enable_font_backend
5414 is set.
5415
5416 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
5417 [HAVE_NTGUI]: Include w32term.h.
5418 [MAC_OS]: Include macterm.ch.
5419 (font_otf_ValueRecord): Use make_number.
5420 (font_finish_cache): Fix handling of reference count.
5421 (font_clear_cache): Update num_fonts.
5422 (font_open_entity): Update smallest_char_width and
5423 smallest_font_height of the frame.
5424 (font_close_object): Update num_fonts.
5425 (Fclear_font_cache): Fix finding the target cache data.
5426
be617367
GM
54272008-02-16 Glenn Morris <rgm@gnu.org>
5428
5429 * fontset.c (Finternal_char_font): Fix compilation warning.
5430
2930d117
EZ
54312008-02-16 Eli Zaretskii <eliz@gnu.org>
5432
634d3003
EZ
5433 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
5434 instead of char arrays. Enlarge the size of array passed to
5435 get_token_information.
5436
2930d117
EZ
5437 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
5438 warnings.
5439
79214046
DN
54402008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
5441
5442 * .gdbinit: Don't set `args', it breaks gdb --args.
5443
7f5d2c72
SM
54442008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
5445
5446 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
5447 within a narrowed buffer.
5448
6edacc43
KH
54492008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
5450
b270d6af
JB
5451 * coding.c (decode_coding_object, encode_coding_object):
5452 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
6edacc43 5453
174105f7
SM
54542008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5455
b270d6af
JB
5456 * coding.c (coding_set_destination): Use BEG_BYTE rather than
5457 hardcoding 1.
13818c30
SM
5458 (detect_coding_system):
5459 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
5460 (string_char_to_byte, string_byte_to_char, insert_from_gap):
5461 * insdel.c (insert_from_gap):
5462 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
5463 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
5464 (string_to_multibyte):
5465 * character.c (chars_in_text, multibyte_chars_in_text):
5466 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
5467
f1c99628
SM
5468 * character.h (FETCH_STRING_CHAR_ADVANCE)
5469 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
5470 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
5471 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
5472
7927d8e3
SM
5473 * casefiddle.c (casify_region): Only call after-change and composition
5474 functions on the part of the region that was changed.
5475
adf6a429 5476 * keyboard.c (read_avail_input):
174105f7
SM
5477 * frame.c (Fdelete_frame): Call Fdelete_terminal.
5478
3ee24aec
SM
54792008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5480
5481 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
5482 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
5483
4ed4b975
JB
54842008-02-11 Juanma Barranquero <lekktu@gmail.com>
5485
5486 * w32menu.c (push_submenu_start, push_submenu_end)
5487 (push_left_right_boundary, push_menu_pane, push_menu_item):
5488 * keyboard.c (read_key_sequence): Don't pass args with side effects
5489 to AREF, it fails when compiling with -DENABLE_CHECKING.
5490
79e3bfb8
KH
54912008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
5492
4ed4b975
JB
5493 * Makefile.in (${lispsource}international/charprop.el):
5494 Delete this target.
6e76043f 5495
79e3bfb8
KH
5496 * search.c (boyer_moore): Fix incorrect synching of the trunk and
5497 emacs-unicode-2.
5498
5b8de9c5
SM
54992008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5500
5501 * terminal.c (Fdelete_terminal): Clean up the `force' path.
5502
eac1939a
SM
55032008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
5504
c53956fe
SM
5505 * frame.c (Qnoelisp): New symbol.
5506 (syms_of_frame): Initialize it.
5507 (Fdelete_frame): Use it to distinguish a mere `force' passed from
5508 someharmles Elisp code, from a strong `force' from x_connection_closed.
5509 * frame.h (Qnoelisp): Declare.
5510 * xterm.c (x_connection_closed): Pass `noelisp'.
5511
eac1939a
SM
5512 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
5513 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
5514 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
5515 rather than `int' for the type of `type'.
5516
13f6772b
DN
55172008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
5518
5519 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
5520
5521 * Makefile.in (GNUC): Remove support for gcc-1.x.
5522
e8455367
RS
55232008-02-10 Richard Stallman <rms@gnu.org>
5524
5525 * lisp.h (ASET): Use AREF, not ASLOT.
5526
4b75ffab
SM
55272008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
5528
5529 * lisp.h (ASET): Check bounds.
5530
d224e8c2
GM
55312008-02-10 Glenn Morris <rgm@gnu.org>
5532
5533 * buffer.c (mode-name): Doc fix.
5534
4624371d
DN
55352008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
5536
290afd83
JB
5537 * Makefile.in:
5538 * emacs.c:
5539 * gmalloc.c:
5540 * keyboard.c:
5541 * lisp.h:
5542 * m/ibm370aix.h:
5543 * process.c:
5544 * regex.c:
5545 * s/hpux.h:
5546 * sysdep.c:
5547 * sysselect.h:
5548 * systty.h:
5549 * unexec.c:
5550 * w32term.c:
5551 * xsmfns.c:
5552 * xterm.c: Remove code that deals with obsolete variables.
4624371d
DN
5553
5554 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
5555
5556 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
5557 nothing else needs it anymore.
5558
274ec34b
EZ
55592008-02-09 Eli Zaretskii <eliz@gnu.org>
5560
5561 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
5562 instead of unibyte_char_to_multibyte.
5563
deeaffe1
DN
55642008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
5565
5566 * s/gnu-linux.h: Remove commented out code.
5567
4ed4b975 5568 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
deeaffe1
DN
5569
5570 * Makefile.in: Update what RMS says about using autoconf.
4ed4b975 5571 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
c3f9fba8 5572 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
deeaffe1
DN
5573 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
5574 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
5575
68b587a6
SM
55762008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
5577
9141ca5e
SM
5578 * keymap.c (Fkey_description): Move side effect outside of macro call.
5579
dfae5f9a 5580 * xfaces.c (Finternal_make_lisp_face):
b1ebcadb
SM
5581 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
5582
ff7a2223
SM
5583 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
5584 (syms_of_fontset): Use ASET.
5585
68b587a6
SM
5586 * fns.c (concat): Move side effect outside of macro call.
5587 (hash_clear): Use ASET.
5588
a31787b1
RS
55892008-02-08 Richard Stallman <rms@gnu.org>
5590
5591 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
5592 If FORCE, and frame has a surrogate minibuffer for another frame,
5593 delete the other frame first.
5594
987be29b 55952008-02-07 Timo Savola <timo.savola@iki.fi>
1540a61a
JD
5596
5597 * xterm.c (x_detect_focus_change): Handle embed client message.
5598 (handle_one_xevent): Ditto.
5599 (handle_one_xevent): If embedded and we get a button press/release,
5600 request focus.
5601 (xembed_set_info, xembed_send_message): New functions.
5602 (x_make_frame_visible): Call xembed_set_info if embedded.
5603 (x_make_frame_invisible): Call xembed_set_info if embedded.
5604 (x_term_init): Initialize Xatom_XEMBED.
5605 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
5606 (x_iconify_frame): Ditto.
5607
5608 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
5609 (enum xembed_info, enum xerm srmbed_message, enum xembed_focus)
5610 (enum xembed_modifier, enum xembed_accelerator): New.
5611 (xembed_set_info, xembed_send_message): Declare.
5612 (FRAME_X_EMBEDDED_P): New.
5613
5614 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
5615 gtk_plug_new.
5616
5617 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
5618 window ID of a frame.
5619 (x_window): Reparent frame if embedded.
5620 (Fx_create_frame): Don't set border width if embedded.
5621
1f204af3 5622 * emacs.c (USAGE3): Add --parent-id.
1540a61a
JD
5623 (standard_args): Ditto.
5624
880820fe 56252008-02-07 Jan Djärv <jan.h.d@swipnet.se>
f937a7db
JD
5626
5627 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
5628
92413ef3
JD
56292008-02-07 Jim Meyering <meyering@redhat.com>
5630
6f69e89b 5631 Use "do...while (0)", not "if (1)...else" in macro definitions.
987be29b
RF
5632 The latter provokes a warning from gcc about the empty else, when
5633 followed by ";". Also, without that trailing semicolon, it would
5634 silently swallow up any following statement.
c3f9fba8 5635 * syntax.h (SETUP_SYNTAX_TABLE)
987be29b
RF
5636 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
5637 * buffer.h (DECODE_POSITION): Likewise.
5638 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
5639 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
5640 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
5641 (FETCH_CHAR_ADVANCE): Likewise.
5642 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
92413ef3 5643
03fa5713
GM
56442008-02-07 Jim Meyering <meyering@redhat.com>
5645
5646 * lread.c [lint]: Don't include <sys/inode.h>.
5647
3ae565b3
SM
56482008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
5649
5650 * xselect.c (x_handle_dnd_message):
5651 * xmenu.c (digest_single_submenu, xmenu_show):
5652 * xdisp.c (with_echo_area_buffer_unwind_data)
5653 (format_mode_line_unwind_data, unwind_format_mode_line)
5654 (display_menu_bar):
5655 * eval.c (Ffetch_bytecode):
5656 * doc.c (store_function_docstring):
5657 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
5658 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
5659 * buffer.c (add_overlay_mod_hooklist): Use ASET.
5660
146b6e55
KH
56612008-02-07 Kenichi Handa <handa@m17n.org>
5662
5663 * ftxfont.c (ftxfont_open): Don't set
5664 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
5665
5666 * ftfont.c (ftfont_open): Fix previous change.
5667
46a923ac
JR
56682008-02-06 Jason Rumney <jasonr@gnu.org>
5669
5670 * w32font.c (w32font_text_extents): Fill in lbearing metric.
5671 Use cached metrics for ASCII characters.
3ae565b3
SM
5672 (w32font_open_internal): Don't set font's owning_frame.
5673 Cache metrics for ASCII characters.
46a923ac
JR
5674
5675 * w32font.h (struct w32font_info): Add ascii_metrics.
5676 Remove owning_frame.
5677
da7d7c21
KH
56782008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
5679
5680 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
5681 to negative value.
5682
5683 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
5684
3ae565b3 5685 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
da7d7c21
KH
5686
5687 * charset.c (syms_of_charset): Set QCtest and Qeq.
5688
c62c8ddb
SM
56892008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
5690
ca319910
SM
5691 * process.c (Fstart_process):
5692 * callproc.c (Fcall_process): Handle the case where
5693 Funhandled_file_name_directory returns nil.
5694
76860cbb
SM
5695 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
5696 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
f9ffa1ea
SM
5697 * font.c (check_gstring): Use them and AREF to access the vector before
5698 we know it's really a gstring.
5699 (Ffont_shape_text): Fix typo.
5700 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
76860cbb 5701
15139d67
SM
5702 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
5703 Declare.
5704
c62c8ddb
SM
5705 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
5706
04b65d2b
JR
57072008-02-05 Jason Rumney <jasonr@gnu.org>
5708
5709 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
5710 Set smallest_font_height and smallest_char_width in display info.
5711
fccaebfd
KH
57122008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
5713
5714 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
5715
e7d7fd8c
MB
57162008-02-05 Miles Bader <miles@gnu.org>
5717
5718 * xfaces.c (get_lface_attributes, merge_named_face)
5719 (lookup_named_face, lookup_derived_face, realize_named_face):
5720 Revert 2008-02-01 change by cyd@stupidchicken.com.
5721
3d4448a8
KH
57222008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
5723
5724 * fontset.c (Ffontset_info): Handle the case of inhibitting the
5725 fallback fonts.
15139d67 5726 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
3d4448a8 5727
5ace1ec1
JR
57282008-02-04 Jason Rumney <jasonr@gnu.org>
5729
5730 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
5731 set full_name.
e3a77b22 5732 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
5ace1ec1 5733
ffe42183
JR
57342008-02-03 Jason Rumney <jasonr@gnu.org>
5735
5736 * makefile.w32-in (OBJ1): Include font.o here.
5737 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
5738
526dc3b3
JR
57392008-02-02 Jason Rumney <jasonr@gnu.org>
5740
a0fece35 5741 * makefile.w32-in (temacs): Bump EMHEAP to 21.
526dc3b3 5742
af805c82
JR
57432008-02-01 Jason Rumney <jasonr@gnu.org>
5744
5745 * s/cygwin.h: Define VIRT_ADDR_VARIES.
5746
5747 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
5748
7f6519c5
AS
57492008-02-01 Andreas Schwab <schwab@suse.de>
5750
1f45f627 5751 * Makefile.in (shortlisp, lisp): Update for rename of
7f6519c5 5752 ../lisp/language/myanmar.el.
7f6519c5 5753
26f8aa27
CY
57542008-02-01 Chong Yidong <cyd@stupidchicken.com>
5755
1f45f627 5756 * xfaces.c (get_lface_attributes): Delete function.
26f8aa27
CY
5757 (merge_named_face, lookup_named_face, lookup_derived_face)
5758 (realize_named_face): Call lface_from_face_name directly, and use
5759 the fact that merge_face_vectors does not alter its FROM argument.
5760
73acf815 57612008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
5762
5763 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
1f45f627 5764 input in the default locale. Handle non-Unicode multibyte input.
aca7a3d2 5765
73acf815 57662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5767
5768 * fontset.c (reorder_font_vector): Exclude nil elements from the
5769 font group. Don't try multiple fonts.
15139d67 5770 (fontset_font): Adjust for the above change.
aca7a3d2
MB
5771 (Finternal_char_font): Return nil if the found font doesn't
5772 contain the character ch.
5773
4c4475a8 5774 * Makefile.in (lisp, shortlisp): Add cham.el.
aca7a3d2 5775
73acf815 57762008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5777
5778 * font.h (FONTP): Make it return 1 also for a font-object.
5779
5780 * .gdbinit (xfontset): New function.
5781
5782 * font.c (font_find_for_lface): Check if the character C is
5783 supported or not only for the first font.
5784
5785 * fontset.c (reorder_font_vector): Fix typo.
5786 (fontset_find_font): Don't add a font-spec specifying a script.
5787 Use 0 (not Qt) for the indication of empty font-group. Change the
5788 format of RFONT-DEF. Return Qt if no font in the font-group
5789 support the character.
15139d67 5790 (fontset_font): Adjust for the above change. If no font was
aca7a3d2 5791 found the character, remember that.
15139d67 5792 (face_for_char): Adjust for the change of RFONT-DEF.
aca7a3d2
MB
5793 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
5794 no font for the target.
15139d67 5795 (Finternal_char_font): Adjust for the change of RFONT-DEF.
aca7a3d2 5796
73acf815 57972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5798
5799 * font.c (font_load_for_face): Handle the case that the font in
5800 face->lface is a string.
5801
73acf815 58022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 5803
1f45f627 5804 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
aca7a3d2 5805
73acf815 58062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5807
5808 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
5809 Fix previous change. If the frame is not on a window system,
5810 signal an error.
5811
73acf815 58122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 5813
4c4475a8
GM
5814 * coding.c (decode_coding_object, encode_coding_object): Adjust
5815 marker positions after conversion.
aca7a3d2
MB
5816
5817 * lisp.h (struct Lisp_Marker): New member need_adjustment.
5818
73acf815 58192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5820
5821 * font.c (font_find_for_lface): Fix the handling of the return
5822 value of font_has_char.
5823 (Ffont_shape_text): Fix previous change.
5824
5825 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
5826 (fontset_ref_and_range): Delete it.
5827 (fontset_find_font): Call char_table_ref_and_range instead of
5828 FONTSET_REF_AND_RANGE.
5829 (make_fontset): Don't setup font groups of Latin here.
5830 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
5831 (new_fontset_from_font): Make the specified font the default for
5832 all Latin characters.
5833
73acf815 58342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5835
5836 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
5837 is on a window system before accessing the fontset of the frame.
5838
73acf815 58392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 5840
1f45f627 5841 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
aca7a3d2
MB
5842
5843 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
5844 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
5845
5846 * font.c (Ffont_shape_text): If the font driver doesn't have a
5847 shaper function, make zero-width glyphs to have at least one-pixel
5848 width. Fix setting of `to' field of glyphs.
5849
73acf815 58502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5851
5852 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
5853 glyphs.
5854
1f45f627 5855 * font.h (struct font_driver): Improve docstring of member `shape'.
aca7a3d2 5856
73acf815 58572008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
5858
5859 * composite.c (syms_of_composite): Fix docstring of
5860 auto-composition-function.
5861
5862 * font.h (LGLYPH_SIZE): New macro.
5863
5864 * font.c (Ffont_fill_gstring): Stop filling when a character not
5865 supported by the font is found.
5866 (Ffont_shape_text): When a shape callback function returns nil,
5867 try at most two more times with larger gstring.
15139d67 5868 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
aca7a3d2
MB
5869
5870 * xdisp.c (handle_auto_composed_prop): Change the argument to
5871 auto-composition-function.
5872
5873 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
5874 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
5875 Lispy glyph and store it in the lgstring.
5876
5877 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
5878
5879 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
5880
73acf815 58812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5882
5883 * font.c (Ffont_shape_text): Avoid unnecessary composition.
5884
5885 * fontset.c (Vfont_encoding_charset_alist): New variable.
5886 (syms_of_fontset): DEFVAR it.
4c4475a8
GM
5887 (reorder_font_vector, fontset_find_font): Optimize for the case of
5888 no need of reordering.
aca7a3d2
MB
5889 (face_for_char): Map the charset property by
5890 Vfont_encoding_charset_alist.
5891
73acf815 58922008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
5893
5894 * w32font.c (logfonts_match): Don't check adstyle here.
5895 (font_matches_spec): Check here against physical font instead.
5896 (add_font_entity_to_list): Avoid some substitutions.
5897
5898 * font.c (font_parse_fcname): Default weight and slant to normal.
5899 (font_score): Prefer normal fonts if weight or slant unspecified.
5900 (font_score) [WINDOWSNT]: Scale weight difference down to closer
5901 match freetype scores.
5902
73acf815 59032008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
5904
5905 * w32font.c (w32font_text_extents): Don't use the frame stored in the
5906 font, as it may have been deleted.
5907 (w32_enumfont_pattern_entity): Map generic family to adstyle using
5908 most common hyphenless variation.
5909 (logfonts_match): Check generic family.
5910 (font_matches_spec): Don't check generic family here.
5911 (fill_in_logfont): Set generic family based on adstyle.
5912
5913 * w32font.h (w32font_get_cache): Update declaration.
5914
73acf815 59152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5916
5917 * ftfont.c (ftfont_get_cache): Adjust the argument type.
5918
15139d67 5919 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
dde8403f 5920 If none of the new drivers are available, call font_update_drivers
aca7a3d2
MB
5921 with the old drivers.
5922
5923 * w32font.c (w32font_get_cache): Adjust the argument type.
5924
5925 * xfont.c (xfont_get_cache): Adjust the argument type.
5926
5927 * font.h (struct font_driver): Change argument type of get_cache.
5928
5929 * xftfont.c (xftfont_start_for_frame): Delete prototype.
5930
5931 * font.c (Ffont_get): Fix arguments to Fassoc.
15139d67 5932 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
aca7a3d2 5933 (font_clear_cache): New function.
4c4475a8 5934 (font_list_entities, font_matching_entity): Use font_get_cache.
15139d67 5935 (font_update_drivers): Call font_clear_cache when finishing a driver.
aca7a3d2
MB
5936
5937 * fontset.c (fontset_find_font): Fix previous change.
5938
73acf815 59392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5940
5941 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
5942 dpyinfo->font_table.
5943 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15139d67 5944 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
aca7a3d2
MB
5945
5946 * font.c (font_at): Handle the case that the arg C is negative.
5947 Handle the unibyte case.
5948 (Ffont_at): Call font_at with the arg C -1.
5949
5950 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15139d67
SM
5951 the position here, and call font_at with the arg C -1.
5952 Don't check the range of the existing composition at the point.
aca7a3d2 5953
73acf815 59542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 5955
15139d67 5956 * fontset.c (fontset_add): New args charset_id and family.
1f45f627 5957 Change caller.
4c4475a8
GM
5958 (load_font_get_repertory, fontset_find_font): Assume that
5959 font_spec is always a font-spec object.
aca7a3d2
MB
5960 (Fset_fontset_font): Always store a font-spec object in a fontset.
5961
5962 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
5963 instead of get_property_and_range.
5964
73acf815 59652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
5966
5967 * xftfont.c (struct xftfont_info): Delete the member ft_face.
5968 (xftfont_open): Don't keep locking face.
5969 (xftfont_close): Don't unlock face.
4c4475a8 5970 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
aca7a3d2
MB
5971
5972 * fontset.c (fontset_find_font): Don't prefer a font of
5973 supplementary charset.
5974
73acf815 59752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 5976
1f45f627
GM
5977 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
5978 script, langsys_tag to langsys, new member script.
aca7a3d2
MB
5979 (OTF_TAG_STR): Terminate by '\0'.
5980 (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the
5981 listing to the script specified in that property. Fix arg to
5982 OTF_check_features.
5983
73acf815 59842008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
5985
5986 * w32font.h: New file.
5987
5988 * w32font.c: Include it.
5989 (struct w32font_info): Add owning_frame field. Move to w32font.h.
5990 (w32font_open): Set owning_frame.
5991 (w32font_text_extents): Use owning_frame.
5992 (struct font_callback_data): Add opentype_only field.
5993 (add_font_entity_to_list): Use it to filter fonts.
5994 Don't check against full name.
5995 (w32font_list_internal): New function.
5996 (w32font_list): Use it.
5997 (w32font_match_internal): New function.
5998 (w32font_match): Use it.
5999 (w32font_open_internal): New function.
6000 (w32font_open): Use it.
6001 (w32font_get_cache, w32font_close, w32font_has_char)
6002 (w32font_encode_char, w32font_text_extents, w32font_draw):
6003 Make non-static.
6004
6005 * makefile.w32-in (w32font.o): Depend on w32font.h.
6006
73acf815 60072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6008
6009 * charset.c (Fdefine_charset_internal): Record a supplementary
6010 charset at the tail of Vcharset_order_list.
6011
6012 * font.c (Ffont_shape_text): Fix the return value.
6013
6014 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
6015
6016 * xdisp.c (handle_auto_composed_prop): Fix previous change.
6017
73acf815 60182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6019
6020 * ftfont.c (struct OpenTypeSpec): New struct.
6021 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
6022 (ftfont_get_open_type_spec): New function.
6023 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
6024
15139d67 6025 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
aca7a3d2 6026
73acf815 60272008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6028
6029 * w32font.c (add_font_entity_to_list): Compare only the beginning
6030 of full name.
6031
73acf815 60322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6033
15139d67
SM
6034 * xdisp.c (handle_auto_composed_prop): Simplify the code.
6035 Never return HANDLED_RECOMPUTE_PROPS.
aca7a3d2 6036
73acf815 60372008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6038
6039 * font.c (font_gstring_produce): Delete it.
6040
15139d67
SM
6041 * composite.h (COMPOSITION_METHOD):
6042 Handle COMPOSITION_WITH_GLYPH_STRING.
aca7a3d2 6043
73acf815 60442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 6045
15139d67 6046 * xfont.c (Qx): Delete.
aca7a3d2
MB
6047 (syms_of_xfont): Don't initialize Qx.
6048
15139d67
SM
6049 * composite.h (enum composition_method):
6050 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
aca7a3d2 6051
73acf815 60522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6053
6054 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
6055 (choose_face_font): Accept new form of font-spec.
6056
6057 * frame.h (font_driver_list): Declare it unconditionally.
6058 (struct frame): Define members font_driver_list and font_data_list
6059 unconditionally.
6060
6061 * fontset.c: Include "font.h" unconditionally.
15139d67 6062 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
aca7a3d2
MB
6063 (Fset_fontset_font): Accept a font-spec object.
6064
6065 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
6066 PIXEL_SIZE part a wild card.
6067
6068 * dispextern.h (struct glyph_string): Define members clip and
6069 num_clips unconditionally.
6070 (struct face): Define members font_info and extra unconditionally.
6071
6072 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
6073 ftfont_info only when HAVE_LIBOTF is defined.
6074
73acf815 60752008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2
MB
6076
6077 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
6078 and end.
6079
73acf815 60802008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6081
6082 * w32font.c (w32font_driver): Add new fields.
6083
73acf815 60842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2 6085
aca7a3d2
MB
6086 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
6087 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
6088 (LIBES): Add @M17N_FLT_CFLAGS@.
6089
6090 * composite.c (compose_text): Don't treat the new style
6091 composition specially.
6092
6093 * emacs.c (main): Call syms_of_font unconditionally.
6094
6095 * font.h (FONT_ENTITY_NOT_LOADABLE)
6096 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15139d67 6097 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
aca7a3d2 6098 (struct font_driver): New member shape.
1f45f627 6099 (font_registry_charsets): Extern it.
4c4475a8 6100 (font_find_for_lface, font_prepare_composition): Adjust prototype.
aca7a3d2
MB
6101 (font_otf_capability, font_drive_otf): Delete their externs.
6102
6103 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
4c4475a8
GM
6104 (font_charset_alist, font_registry_charsets): Move from xfont.c
6105 and rename.
aca7a3d2
MB
6106 (font_prop_validate_otf): New function.
6107 (font_property_table): Register it for QCotf.
6108 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15139d67 6109 (font_drive_otf): Delete.
1f45f627 6110 (font_prepare_composition): New arg F. Adjust for the change of
aca7a3d2
MB
6111 lispy gstring.
6112 (font_find_for_lface): New arg C.
15139d67 6113 (font_load_for_face): Adjust for the change of font_find_for_lface.
4c4475a8
GM
6114 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
6115 lispy gstring.
aca7a3d2
MB
6116 (Ffont_shape_text): New function.
6117 (Fopen_font): If the font size is not given, use 12-pixel.
6118 (Ffont_at): New arg STRING.
15139d67
SM
6119 (syms_of_font): Initalize font_charset_alist.
6120 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
aca7a3d2
MB
6121 conditionally.
6122
6123 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
6124 fonts of the same font-spec. Change the format of RFONT-DEF.
4c4475a8
GM
6125 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
6126 Adjust for the change of RFONT-DEF.
15139d67 6127 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
aca7a3d2
MB
6128
6129 * ftfont.h: New file.
6130
6131 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
6132 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
6133 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
6134 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
6135 font_otf_capability and font_drive_otf, set ftfont_shape.
15139d67 6136 (ftfont_list): Adjust for the change of :otf property value.
aca7a3d2
MB
6137 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
6138 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
6139 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
1f204af3 6140 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
aca7a3d2
MB
6141 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
6142 (otf_gstring, gstring, m17n_flt_initialized): New variables.
6143
15139d67
SM
6144 * w32term.c (x_draw_composite_glyph_string_foreground):
6145 Adjust for the change of lispy gstring.
aca7a3d2 6146
15139d67 6147 * xdisp.c (handle_composition_prop): Adjust for the change of
aca7a3d2 6148 lispy gstring. Call a function for auto-composition with the
15139d67
SM
6149 third arg it->window.
6150 (fill_composite_glyph_string): Adjust for the change of lispy string.
6151 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
aca7a3d2 6152
15139d67 6153 * xfaces.c (set_font_frame_param): Adjust for the change of
aca7a3d2
MB
6154 font_find_for_lface.
6155
1f45f627
GM
6156 * xfont.c (x_font_charset_alist): Move to font.c and rename.
6157 (xfont_registry_charsets): Likewise. Change caller.
aca7a3d2
MB
6158 (syms_of_xfont): Don't handle x_font_charset_alist.
6159
6160 * xftfont.c: Include "ftfont.h".
15139d67 6161 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
aca7a3d2
MB
6162 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
6163 (xftfont_close) [HAVE_LIBOTF]: Close otf.
6164 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15139d67
SM
6165 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
6166 Set xftfont_driver.shape to xftfont_shape.
aca7a3d2 6167
15139d67 6168 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aca7a3d2
MB
6169 the change of lispy gstring.
6170
73acf815 61712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6172
6173 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
6174
73acf815 61752008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6176
6177 * w32font.c (w32font_draw): Fill background manually.
6178
73acf815 61792008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6180
6181 * font.c (Qfontp): Remove unused symbol.
6182 (QCantialias): New symbol.
6183 (syms_of_font): Define it.
6184 (font_property_table): Set a validator for QCantialias.
6185
15139d67
SM
6186 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
6187 Define if not already.
aca7a3d2
MB
6188 (QCfamily): Share with xfaces.c.
6189 (Qstandard, Qsubpixel, Qnatural): New symbols.
1f45f627 6190 (syms_of_w32font): Define them. Don't define QCfamily here.
aca7a3d2
MB
6191 (w32_antialias_type, lispy_antialias_type): New functions.
6192 (w32_enumfont_pattern_entity): New arg requested_font.
6193 Set antialias parameter if non-default was requested.
6194 (fill_in_logfont): Fill in lfQuality if :antialias specified.
6195
73acf815 61962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6197
6198 * lread.c (read1): Undo the previous change.
6199
73acf815 62002008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
aca7a3d2
MB
6201
6202 * frame.c (Fdelete_frame): Call font_update_drivers only when
6f69e89b 6203 USE_FONT_BACKEND is defined.
aca7a3d2 6204
73acf815 62052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6206
6207 * font.h (struct font_bitmap): New member bits_per_pixel.
6208 (struct font_driver): New members start_for_frame and end_for_frame.
6209 (struct font_data_list): New struct.
6210 (font_put_frame_data, font_get_frame_data): Extern them.
6211
6212 * frame.h (struct frame): New member font_data_list.
6213
6214 * font.c (font_update_drivers): Call driver->start_for_frame and
6215 driver->end_for_frame at proper timings.
6216 (font_put_frame_data, font_get_frame_data): New functions.
6217 (Ffont_spec): Add usage in the docstring.
6218
6219 * frame.c (make_frame): Initialize f->font_data_list to NULL.
6220 (Fdelete_frame): Call font_update_drivers.
6221
6222 * xftfont.c (struct xftface_info): Delete the member xft_draw.
4c4475a8 6223 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
aca7a3d2
MB
6224 (xftfont_get_xft_draw): New function.
6225 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
6226 (xftfont_end_for_frame): New function.
6227 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
6228
15139d67 6229 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
1f45f627 6230 Change argument. Cache GCs in the per-frame data.
aca7a3d2
MB
6231 (struct ftxfont_frame_data): New struct.
6232 (ftxfont_draw_bitmap): New arg gc_fore and flush.
6233 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15139d67 6234 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
aca7a3d2
MB
6235 (ftxfont_end_for_frame): New function.
6236 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
6237
6238 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
6239
73acf815 62402008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6241
6242 * xselect.c (Vselection_coding_system)
6243 (Vnext_selection_coding_system): Delete them.
6244 (syms_of_xselect): Don't declare selection-coding-system and
6245 next-selection-coding-system. They are declared in select.el.
6246
73acf815 62472008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6248
6249 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
6250
6251 * w32fns.c: Include imm.h.
6252 (get_composition_string_fn, get_ime_context_fn): New optional
6253 system functions.
6254 (globals_of_w32fns): Load them from imm32.dll.
6255 (ignore_ime_char): New flag.
6256 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
6257 WM_IME_ENDCOMPOSITION messages.
6258
6259 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
6260 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
6261
73acf815 62622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6263
6264 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
6265 (READCHAR_REPORT_MULTIBYTE): New macro.
6266 (readchar): New 2nd arg MULTIBYTE.
15139d67
SM
6267 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
6268 Make symbol's name multibyte according to the multibyteness of the
aca7a3d2
MB
6269 source.
6270
73acf815 62712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6272
6273 * xfaces.c (face_for_overlay_string): Call lookup_face with
6274 correct arguments (fix of synching with the trunk).
6275
73acf815 62762008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6277
4c4475a8
GM
6278 * font.c (font_prop_validate_symbol, font_prop_validate_style)
6279 (font_prop_validate_non_neg, font_prop_validate_spacing):
6280 Delete argument prop_index.
15139d67
SM
6281 (font_property_table): Change arguments to validater. Change Callers.
6282 (font_lispy_object): Delete.
aca7a3d2
MB
6283 (font_at): Use font_find_object instead fo font_lispy_object.
6284
73acf815 62852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
aca7a3d2
MB
6286
6287 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
6288 and file names.
6289
73acf815 62902008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6291
6292 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
6293 (font_matches_spec): Remove debug output.
6294 (add_font_entity_to_list): Avoid using substituted fonts.
6295
73acf815 62962008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6297
6298 * doc.c (Fsnarf_documentation):
6299 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
6300
73acf815 63012008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2 6302
290afd83 6303 * dispextern.h (struct glyph_row): Only define "clip" field if
aca7a3d2
MB
6304 HAVE_WINDOW_SYSTEM is defined.
6305
73acf815 63062008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
aca7a3d2
MB
6307
6308 Fix up multi-tty merge.
6309
6310 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
6311 and indentation.
6312
6313 * xfaces.c (free_realized_face, clear_face_gcs):
6314 Include font_done_for_face in the input_blocked section, just in case.
6315
6316 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
6317 (get_char_face_and_encoding): Undo last change and remove the *other*
6318 duplicate definition (i.e. keep the one that's better scoped and that
6319 includes code for the font-backend).
6320
6321 * terminal.c (create_terminal): Default keyboard_coding to
6322 `no-conversion' and terminal_coding to `undecided'.
6323
6324 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
6325
6326 * fontset.c (free_realized_fontsets): Check that the table entry does
6327 contain a fontset before trying to compare it to `base'.
6328
6329 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
6330 syms_of_charset, and syms_of_coding earlier because init_window_once
6331 now needs Vcoding_system_hash_table to be setup.
6332
6333 * coding.h (default_buffer_file_coding): Remove.
6334
6335 * coding.c (default_buffer_file_coding): Remove.
6336 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
6337 than ->symbol, and use the terminal-local coding system.
6338 (syms_of_coding): Don't setup the coding-systems that are not
6339 terminal-local.
6340 (Fdefine_coding_system_internal): Use XCAR/XCDR.
6341
6342 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
6343 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
6344
6345 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
6346 in chartab.c and were re-added here by mistake.
6347 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
6348
6349 * doc.c (Fsnarf_documentation):
6350 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
6351 src to etc.
6352
6353 * ChangeLog.10: Add mistakenly removed entry.
6354
73acf815 63552008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
aca7a3d2
MB
6356
6357 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
6358
73acf815 63592008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2
MB
6360
6361 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
6362 Add extra args to FACE_FOR_CHAR.
6363
73acf815 63642008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6365
6366 * keymap.c (where_is_internal_1): If key is a cons, store the copy
6367 in sequence.
6368
4c4475a8
GM
6369 * chartab.c (map_sub_char_table, map_char_table): If the range
6370 contains just one character, call the function with that character
6371 even if the depth is not 3.
aca7a3d2 6372
73acf815 63732008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6374
6375 * w32font.c (w32font_text_extents): Calculate metrics for the
6376 whole string.
6377
73acf815 63782008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6379
6380 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
6381
73acf815 63822008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6383
6384 * w32term.c (x_set_glyph_string_clipping): Use
6385 get_glyph_string_clip_rects.
4c4475a8
GM
6386 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
6387 Adjust for the change of struct glyph_string.
aca7a3d2
MB
6388
6389 * w32font.c (w32font_draw): Do clipping here.
6390
73acf815 63912008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6392
1f45f627 6393 * xftfont.c (xftfont_draw): Adjust for the change of struct
aca7a3d2
MB
6394 glyph_string.
6395
6396 * xterm.c (x_set_glyph_string_clipping): Use
6397 get_glyph_string_clip_rects.
4c4475a8
GM
6398 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
6399 Adjust for the change of struct glyph_string.
aca7a3d2
MB
6400
6401 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
6402 the resulting clip(s}.
1f45f627 6403 (expose_overlaps): Add arg r. Change callers. Set it to
aca7a3d2
MB
6404 row->clip temporarily.
6405 (expose_window): Redraw rows overlapping the exposed area.
6406
6407 * dispextern.h (struct glyph_row): New member clip.
6408 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
6409 clip_height, new member clip, and num_clips.
6410
73acf815 64112008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6412
6413 * data.c (Fchar_or_string_p): Fix docstring.
6414
73acf815 64152008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6416
6417 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
6418 create a temporal XftDraw object.
6419
73acf815 64202008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6421
6422 * font.c (Ffontp): Fix docstring.
6423
6424 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
6425 strong evidence of ISO-2022.
6426
73acf815 64272008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6428
6429 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
6430 SYNTAX_ENTRY_FOLLOW_PARENT.
6431
73acf815 64322008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
aca7a3d2
MB
6433
6434 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
6435 its type.
6436 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
6437 Update to the new type of weak_hash_tables and next_weak.
6438
6439 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
6440 a plain C pointer to Lisp_Hash_Table.
6441
6442 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
6443 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
6444 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
6445 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
6446 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
6447 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
6448 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
6449 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
6450 (GC_EQ): Remove since they've been identical to their non-GC_
6451 alter-egos ever since the markbit was eradicated.
6452
290afd83
JB
6453 * alloc.c:
6454 * buffer.c:
6455 * buffer.h:
6456 * data.c:
6457 * fileio.c:
6458 * filelock.c:
6459 * fns.c:
6460 * frame.h:
6461 * lisp.h:
6462 * macterm.c:
6463 * print.c:
6464 * process.c:
6465 * w32fns.c:
6466 * w32menu.c:
6467 * w32term.c:
6468 * xfns.c:
6469 * xmenu.c:
6470 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
aca7a3d2 6471
73acf815 64722008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6473
6474 * chartab.c (map_sub_char_table): Make it work for the top-level
6475 char-table. Fix handling of parent char-table.
c5ad7a3d 6476 (map_char_table): Adjust for the above change.
aca7a3d2 6477
73acf815 64782008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6479
6480 * w32font.c (Qgdi): Rename from Qw32.
6481
73acf815 64822008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6483
6484 * w32bdf.c (get_quoted_string): Make function static.
6485
73acf815 64862008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6487
6488 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
6489 bigger ascent and descent than those of the font, use them as
6490 font's ascent and descent.
6491
73acf815 64922008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6493
6494 * Makefile.in (${lispsource}international/charprop.el): Move this
6495 target within "#ifdef HAVE_UNIDATA" and "#endif".
6496
73acf815 64972008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6498
6499 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
6500 (shortlisp): Add ../lisp/language/tai-viet.el.
6501
1f45f627 65022008-02-01 Ulrich Mueller <ulm@gentoo.org>
aca7a3d2
MB
6503
6504 * Makefile.in (${lispsource}international/charprop.el): Depend on
6505 temacs${EXEEXT}.
6506
73acf815 65072008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6508
6509 * w32font.c (w32font_close): Delete the GDI font object.
6510
6f69e89b 6511 * w32menu.c: Include character.h.
aca7a3d2
MB
6512
6513 * w32proc.c: Likewise.
6514
6515 * w32select.c: Likewise.
6516
6f69e89b 6517 * makefile.w32-in (w32proc.o): Depend on character.h.
aca7a3d2 6518
73acf815 65192008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6520
6521 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
6522
6523 * w32menu.c (syms_of_w32menu): Likewise.
6524
6525 * w32proc.c (syms_of_ntproc): Likewise.
6526
6527 * w32select.c (syms_of_w32select): Likewise.
6528
6529 * w32term.c (syms_of_w32term): Likewise.
6530
73acf815 65312008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6532
6533 * w32font.c (w32font_draw): Delete brush after using it.
6534
73acf815 65352008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6536
6537 * w32font.c (w32font_open): Don't set font_idx.
6538 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
6539 to font settings.
6540 (w32font_draw): Fill background explicitly.
6541
73acf815 65422008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6543
6544 * w32term.c (w32_initialize): Don't call w32font_initialize.
6545
6546 * w32font.c (w32font_info): Remove subranges.
6547 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
6548 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
6549 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
6550 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
6551 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
6552 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
6553 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
6554 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
6555 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
6556 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
6557 New symbols.
6558 (font_callback_data): New struct.
6559 (w32font_list, w32font_match): Use it.
6560 (w32font_open): Don't populate subranges.
6561 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
6562 (w32font_encode_char): Always return unicode code-point as-is.
6563 (w32font_text_extents): Supply a tranformation matrix to
1f45f627
GM
6564 GetGlyphOutline. Never look up by glyph index. Avoid looping
6565 twice. Use unicode version of GetTexExtentPoint32 instead of
aca7a3d2 6566 glyph index version.
1f204af3 6567 (set_fonts_frame): Remove.
aca7a3d2 6568 (w32_enumfont_pattern_entity): Add frame parameter, use it to
1f45f627
GM
6569 set frame parameter. Use backward compatible fake foundries.
6570 Save generic family in extra slot under QCfamily. Make width slot
6571 constant. Save QCspacing value. Save list of scripts instead of
aca7a3d2
MB
6572 binary subranges.
6573 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
1f45f627 6574 (add_font_entity_to_list): Use font_callback_data struct. Filter
aca7a3d2
MB
6575 unwanted fonts.
6576 (add_one_font_entity_to_list): Use font_callback_data struct.
1f45f627
GM
6577 (w32_registry): Default to iso10646_1.
6578 (fill_in_logfont): Use dpi from extra slot. Don't bother with
6579 string font registries. Don't fill in font name if it is a generic
6580 family name, fill family instead. Use spacing, family and script
aca7a3d2
MB
6581 extra info to fill pitch, family and charset fields.
6582 (list_all_matching_fonts): Use font_callback_data struct.
6583 (unicode_range_for_char): Remove.
6584 (font_supported_scripts): New function.
6585 (w32font_initialize): Remove.
6586 (syms_of_w32font): Update which symbols are defined.
6587
73acf815 65882008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6589
6590 * font.c (font_pixel_size): Reverse assq_no_quit args.
6591
6592 * w32term.h (FONT_WIDTH): Report max width, not average.
6593 (FONT_MAX_WIDTH): Remove.
6594 (FONT_AVG_WIDTH): New macro.
6595
6596 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
6597 redefinition of FONT_WIDTH.
6598
6599 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
6600 (w32_cache_char_metrics): Use FONT_WIDTH.
6601
6602 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
6603
73acf815 66042008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6605
6606 * w32font.c (w32font_open): Make lfHeight negative.
6607
6608 * w32fns.c (x_default_font_parameter): Use new style font name.
6609 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
6610
73acf815 66112008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6612
6613 * w32font.c (QCsubranges): New symbol.
6614 (w32font_open, w32font_has_char): Get subranges from subproperty
6615 of extra.
6616 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
6617 (syms_of_w32font): Define :subranges symbol.
6618
6619 * font.c (font_put_extra): Expose externally.
6620
1f45f627 6621 * font.h (font_put_extra): Move declaration from font.c.
aca7a3d2
MB
6622
6623 * font.c (Ffont_get): Use font driver to determine otf capability.
6624 (adjust_anchor): Check if driver defines anchor_point before using.
6625
6626 * w32font.c (w32font_open): Handle size, height and pixel_size better.
6627 (w32font_draw): Use options.
6628 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
6629 Fix detection of truetype fonts.
6630 (registry_to_w32_charset): Handle charsets other than iso8859-1
6631 expressed as lisp symbols.
6632 (w32_registry): Express charset as lisp symbol.
6633 (fill_in_logfont): Reverse pixel and point height logic.
1f45f627 6634 Don't set width here. Set quality to default.
aca7a3d2
MB
6635
6636 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
6637 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
6638
6639 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
6640 Remove redundant loop and allocation.
6641
6642 * makefile.w32-in (font.o, w32font.o): New objects.
6f69e89b 6643 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
aca7a3d2
MB
6644 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
6645
6646 * xdisp.c (fill_composite_glyph_string): Make the first arg to
6647 STORE_XCHARB a valid l-value.
6648
6649 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
6650 calculations for non-Truetype fonts.
6651 (x_draw_glyph_string): Sync with xterm.c.
c3f9fba8
JB
6652 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
6653 Remove redundant code.
aca7a3d2
MB
6654 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
6655
6656 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
6657 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
6658
6659 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
6660 (x_to_w32_charset, w32_to_x_charset): Expose externally.
6661
6662 * w32font.c: New file for w32 font backend.
6663
73acf815 66642008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6665
6666 * term.c: Don't include "buffer.h" twice.
6667
73acf815 66682008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6669
6670 * character.c (Funibyte_string): New function.
6671 (syms_of_character): Defsubr it.
6672
73acf815 66732008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
6674
6675 * w32term.c [USE_FONT_BACKEND]:
c3f9fba8
JB
6676 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
6677 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
6678 (x_draw_glyph_string, x_draw_glyph_string_foreground)
6679 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
aca7a3d2
MB
6680 (x_free_frame_resources): Sync with xterm.c.
6681
73acf815 66822008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2
MB
6683
6684 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
6685 char-table size.
6686
73acf815 66872008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6688
c3f9fba8 6689 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
aca7a3d2 6690
73acf815 66912008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6692
6693 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
6694 font_otf_gpos, add font_drive_otf.
6695
6696 * fontset.c (fontset_find_font): Pay attention to font size
6697 specified for a font.
6698 (reorder_font_vector): Check contents of font_def.
6699
6700 * font.c (struct otf_list): Delete it.
6f69e89b 6701 (otf_list): Make it a lisp variable.
aca7a3d2 6702 (otf_open): Use lispy otf_list.
1f45f627 6703 (generate_otf_features): Rename from parse_gsub_gpos_spec.
aca7a3d2 6704 (check_otf_features): New function.
c3f9fba8
JB
6705 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
6706 New functions.
aca7a3d2
MB
6707 (font_drive_otf): New function merging font_otf_gsub and
6708 font_otf_gpos.
6709 (font_open_for_lface): New arg spec. Change argument order.
1f45f627 6710 (font_load_for_face): Adjust for the change of font_open_for_lface.
aca7a3d2
MB
6711 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
6712 Ffont_otf_gpos.
6713 (syms_of_font): Staticpro otf_list. Delete defsubr of
6714 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
6715
1f45f627 6716 * xfaces.c (set_font_frame_param): Adjust for the change of
aca7a3d2
MB
6717 font_open_for_lface.
6718
6719 * font.h (font_open_for_lface): Adjust prototype.
6720 (struct font_driver): Delete members otf_gsub and otf_gpos, add
6721 member otf_drive.
6722 (font_otf_gsub, font_otf_gpos): Delete externs.
6723 (font_drive_otf): Extern it.
6724
73acf815 67252008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6726
6727 * font.c (font_at): If the window W is not on a window system,
6728 return Qnil.
6729
4c4475a8
GM
6730 * coding.c (produce_chars, encode_coding): Don't call
6731 insert_from_gap if no characters to produce.
aca7a3d2 6732
73acf815 67332008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6734
6735 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
6736 Fclear_face_cache.
6737
6738 * xfaces.c (face_for_font): Check also face->font==font->font.font.
6739
73acf815 67402008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2
MB
6741
6742 * emacs.c (main): Change default value of `enable_font_backend' to 1.
6743 Parse "--disable-font-backend" option.
6744 (standard_args): Add "--disable-font-backend" option.
6745
73acf815 67462008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6747
6748 * fontset.c (fontset_find_font): New function.
6749 (fontset_font): Use fontset_find_font.
6750 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
6751 Register the specified font for all Latin characters.
6752 (new_fontset_from_font): Register the specified font for all Latin
6753 characters.
6754 (dump_fontset): For a realized fontset, include the base fontset
6755 name in the returned vector.
6756
73acf815 67572008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6758
6759 * character.h (CHAR_STRING): Cast C to unsigned on calling
6760 char_string.
6761
6762 * character.c (char_string): Type of arg C changed to unsigned.
6763 Signal an error if C is an invalid character code.
6764
4c4475a8
GM
6765 * editfns.c (general_insert_function, Fchar_to_string):
6766 Use CHARACTERP, not INTEGERP.
aca7a3d2 6767
73acf815 67682008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6769
6770 * character.h (MIN_MULTIBYTE_LEADING_CODE)
6771 (MAX_MULTIBYTE_LEADING_CODE): New macros.
6772
6773 * regex.c (analyse_first): Fix for multibyte characters in "case
6774 charset:" and "case categoryspec:".
6775
73acf815 67762008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2
MB
6777
6778 * Makefile.in (LIBES): Move standard libraries to the end.
6779
73acf815 67802008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6781
6782 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
6783 nonzero, don't shrink the buffer nextb.
6784
6785 * buffer.h (struct buffer_text): New member inhibit_shrinking.
6786
6787 * coding.c (coding_alloc_by_making_gap): New arg offset.
6788 (alloc_destination): Call coding_alloc_by_making_gap with the arg
6789 offset.
6790 (decode_coding_iso_2022): Update coding->safe_charsets.
6791 (decode_coding_gap): Temporarily set
6792 current_buffer->text->inhibit_shrinking to 1.
6793
73acf815 67942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6795
6796 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
6797 indexing into elements of s->cmp and s->char2b.
6798
73acf815 67992008-02-01 Juanma Barranquero <lekktu@gmail.com>
aca7a3d2
MB
6800
6801 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
6802
73acf815 68032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6804
6805 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
6806 target_multibyte instead of multibyte.
6807 (re_match_2_internal): Call bcmp_translate with target_multibyte.
6808 (bcmp_translate): Change the argument name from multibyte to
6809 target_multibyte.
6810
73acf815 68112008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6812
6813 These changes are to compile a regexp into a pattern that can be
6814 used both for multibyte and unibyte targets.
6815
6816 * Makefile.in (search.o): Depend on charset.h.
6817
6818 * character.c (multibyte_char_to_unibyte_safe): New function.
6819
6820 * search.c: Include "charset.h".
6821 (compile_pattern_1): Delete argument multibyte. Don't set
6822 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
6823 (compile_pattern): Don't compare cp->buf.target_multibyte.
6824 Compare cp->buf.charset_unibyte.
6825 (compile_pattern): Set cp->buf.target_multibyte.
6826
6827 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
6828
6829 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
6830
6831 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
1f45f627 6832 multibyte. Change callers.
aca7a3d2 6833 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
1f45f627
GM
6834 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
6835 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
aca7a3d2
MB
6836 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
6837 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
6838 (regex_compile): Make the compiled pattern usable both for
6839 multibyte and unibyte targets.
6840 (analyse_first): Make the fastmap usable both for multibyte and
6841 unibyte targets.
1f45f627 6842 (TRANSLATE_VIA_MULTIBYTE): Delete.
aca7a3d2
MB
6843 (re_match_2_internal): Pay attention to the case that the
6844 multibyteness of bufp and target may be different.
6845
73acf815 68462008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6847
6848 * xdisp.c (x_produce_glyphs): When a font is not found, make the
6849 empty box occupy at least one column width.
6850
73acf815 68512008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2
MB
6852
6853 * Makefile.in: Remove redundant HAVE_XFT clause.
6854
73acf815 68552008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6856
6857 * xrdb.c (x_load_resources): Setup the default fontSet X reource.
6858
73acf815 68592008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6860
6861 * fontset.c (Finternal_char_font): Fix for the case of POSITION
6862 being nil.
6863
73acf815 68642008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6865
6866 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
6867
73acf815 68682008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6869
6870 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
6871
73acf815 68722008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6873
6874 * search.c (simple_search): Fix previous change.
6875
73acf815 68762008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6877
6878 * xftfont.c (ftfont_font_format): Extern declaration.
6879
6880 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
6881
6882 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
6883 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
6884
6885 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
6886 (ftfont_font_format): Fix previous change.
6887
6888 * font.h (Ffont_xlfd_name): EXFUN it.
6889
6890 * font.c (font_parse_xlfd): Fix the array size of `f'.
6891 (register_font_driver): Use EQ to compare driver->type.
6892
6893 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
6894 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
6895 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
6896
73acf815 68972008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6898
4c4475a8
GM
6899 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
6900 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
aca7a3d2 6901
73acf815 69022008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6903
6904 * xfont.c (xfont_open): Set font->format.
6905
6906 * xftfont.c (xftfont_open): Set font->format.
6907
6908 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
6909 (ftfont_list): Include FC_FONTFORMAT in FcObject.
6910 (ftfont_open): Set font->format.
6911 (ftfont_font_format): New function.
6912
6913 * font.h (struct font): New memeber format.
6914
6915 * font.c (Qopentype): New variable.
6916 (syms_of_font): Defsym it.
6917 (Fquery_font): Change the format of the last element of the return
6918 value.
6919
73acf815 69202008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6921
6922 * xfns.c (xic_create_xfontset): Try the default fontset name as a
6923 last resort.
6924
73acf815 69252008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6926
6927 * coding.c (detect_coding_charset): Fix detection of multi-byte
6928 charset.
6929
73acf815 69302008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
aca7a3d2
MB
6931
6932 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
6933
73acf815 69342008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6935
6936 * xdisp.c (get_next_display_element): Set it->face_id for the
6937 first component of a composition.
1f45f627 6938 (x_produce_glyphs): Check if the font is changed or not for composition.
aca7a3d2 6939
73acf815 69402008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6941
6942 * fontset.c (Qlatin): New variable.
6943 (syms_of_fontset): Define it as a lisp symbol.
1f45f627 6944 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
aca7a3d2 6945
73acf815 69462008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6947
6948 * font.c (font_unparse_fcname): Pay attention to the case that
6949 some of font property is a null string.
6950
73acf815 69512008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6952
6953 * term.c: Include "composite.h".
6954 (encode_terminal_code): Output all components of composition.
6955 Check the size of encode_terminal_src.
424c157f 6956 (produce_glyphs): For composition, call produce_composite_glyph.
aca7a3d2
MB
6957 (append_composite_glyph, produce_composite_glyph): New functions.
6958
6959 * xdisp.c (x_produce_glyphs): In handling composition, if a font
6960 is not found, get font_info from the current ascii face.
6961
73acf815 69622008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6963
6964 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
6965 buffer-file-name to Qnil before calling insert_from_buffer.
6966
6967 * font.c (font_unparse_fcname): Pay attention to the case that
6968 foundry is a null string.
6969
73acf815 69702008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6971
6972 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
6973
6974 * font.c (Qunicode_sip): New variable.
6975 (syms_of_font): Declare it as a Lisp symbol.
6976
6977 * font.h (Qunicode_sip): Extern it.
6978
73acf815 69792008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 6980
1f45f627 6981 * composite.c (get_composition_id): Pay attention to TAB component.
aca7a3d2
MB
6982
6983 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
1f45f627 6984 TAB. Adjust for the change of s->char2b which always points to
aca7a3d2
MB
6985 the first elememnt of allocated memory.
6986
1f45f627 6987 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
aca7a3d2
MB
6988
6989 * xdisp.c (handle_composition_prop): Set it->c to the first
6990 non-TAB component.
1f45f627
GM
6991 (fill_composite_glyph_string): Change argument.
6992 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
aca7a3d2
MB
6993 (x_produce_glyphs): Fix handling of left/right padding.
6994
73acf815 69952008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
6996
6997 * coding.c (detect_coding_system): Fix for handling off
6998 inhibit_iso_escape_detection. Fix for the case that no coding
6999 system is defined for a specific coding category.
7000
73acf815 70012008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7002
1f45f627 7003 * font.c (font_matching_entity): Delete unused local var.
aca7a3d2
MB
7004
7005 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
7006 opening a font.
7007
7008 * fileio.c (Finsert_file_contents): On recovering a file, assume
7009 Unix-like eol.
7010 (choose_write_coding_system): On auto-saving a file, force
7011 Unix-like eol.
7012
7013 * coding.c (setup_coding_system): Fix setting of
7014 coding->common_flags based on eol_type.
7015 (coding_inherit_eol_type): If PARENT is not nil, be sure to
7016 inherit from it.
7017
73acf815 70182008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7019
1f45f627 7020 * alloc.c (NSTATICS): Increas to 0x600.
aca7a3d2 7021
73acf815 70222008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7023
1f45f627 7024 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
aca7a3d2
MB
7025 (ftfont_list): Don't check :name property.
7026 (ftfont_match): New function.
7027 (ftfont_pattern_entity): If the pattern doesn't contain
7028 FC_SPACING, don't assuce FC_MONO.
7029
7030 * font.h (struct font_driver): New member `match'.
1f45f627 7031 (font_update_drivers): Adjust prototype.
aca7a3d2 7032
4c4475a8
GM
7033 * font.c (font_parse_fcname, font_parse_name): Don't change :name
7034 property of FONT.
aca7a3d2
MB
7035 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
7036 them unconditionally.
7037 (font_matching_entity): New function.
7038 (font_open_by_name): Try font_matching_entity if exact match is
7039 not found.
7040 (font_update_drivers): Delete the arg FONT. Return a list of
7041 actually used backends. Don't free faces, font caches here.
7042 Don't store data in frame parameters. Don't call x_set_font.
7043 (Ffont_spec): Store :name property as is.
7044 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
1f45f627
GM
7045 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
7046 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
aca7a3d2
MB
7047 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
7048 Call font->driver->otf_gsub instead of font_otf_gsub.
7049
7050 * frame.c (x_set_font_backend): Do more works that were done in
7051 font_update_drivers before.
7052
7053 * xfont.c (xfont_match): New function.
7054 (xfont_driver): Set xfont_driver.match to xfont_match.
7055 (xfont_draw): Set font in GC if necessary.
7056
7057 * ftxfont.c (ftxfont_match): New function.
7058 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
7059
7060 * xftfont.c (xftfont_match): New function.
7061 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
7062
73acf815 70632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7064
7065 * font.h (struct font): New member scalable.
7066 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
1f45f627 7067 (font_otf_gsub): Adjust prototype.
aca7a3d2 7068
1f45f627
GM
7069 * font.c (font_otf_capability): Fix handling of the default langsys.
7070 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
aca7a3d2
MB
7071 Check the contents of SPEC.
7072 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
7073 (check_gstring): New function.
7074 (REPLACEMENT_CHARACTER): New macro.
7075 (font_otf_gsub): New arg alternate_subst. Be sure to set all
7076 glyph codes of GSTRING.
7077 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
7078 (font_prepare_composition): Set cmp->glyph_len.
7079 (font_open_entity): Set font->scalable.
7080 (Ffont_get): Handle :otf property.
7081 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
7082 functions.
7083 (Fquery_font): Use font->font.full_name.
7084 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
7085 Sfont_otf_alternates.
7086
7087 * ftfont.c (ftfont_open): Set font->font.full_name and
7088 font->font.name properly. Fix calculation of font->font.height
7089 and font->min_width.
7090
7091 * ftxfont.c (ftxfont_create_gcs): New function.
7092 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
7093 (ftxfont_draw_backgrond): Fix filling region.
7094 (ftxfont_default_fid): New function.
7095 (ftxfont_open): Set xfotn->fid to the return value of
7096 ftxfont_default_fid.
7097 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
7098 (ftxfont_done_face): Free only GCs that are created by
7099 ftxfont_create_gcs.
7100 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
7101
7102 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
7103 Clip to src->width, etc (not src->clip_XXX).
7104
7105 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
7106 FontBackend frame parameter.
7107
73acf815 71082008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7109
7110 * font.h (struct font_driver_list): New member `on'.
7111 (Fclear_font_cache): EXFUN it.
7112 (font_update_drivers): Extern it.
7113
7114 * font.c (font_unparse_fcname): Fix typo (swidth->width).
7115 (font_list_entities): Check driver_list->on.
7116 (register_font_driver): Initalize `on' member to 0.
7117 (font_update_drivers): New function.
7118 (Fclear_font_cache): Check driver_list->on.
7119
7120 * frame.h (Qfont_backend): Extern it.
7121 (x_set_font_backend): Extern it.
7122
7123 * frame.c (Qfont_backend): New variable.
7124 (frame_parms): New element for font-backend.
7125 (x_set_font_backend): New function.
7126
7127 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
7128 FontBackend frame parameter.
7129 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
7130 x_set_font_backend.
7131
7132 * xfont.c (xfont_list): Don't try listing by :name property if the
7133 name is not for XLFD.
7134
73acf815 71352008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7136
7137 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
7138 (LGLYPH_SET_TO): New macros.
7139 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
7140 element of G is vector or not.
7141 (font_at): Extern it.
7142
7143 * font.c: Include window.h.
7144 (font_lispy_object): New function.
7145 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
7146 end of valid glyph.
7147 (font_close_object): Fix getting (struct font *).
7148 (font_at): New function.
7149 (Ffont_get): If FONT is a font-object, get entity from it.
7150 (Ffont_make_gstring): Initialize elements of glyphs with nil.
7151 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
7152 range check.
7153 (Ffont_at): New function.
7154 (syms_of_font): Defsubr Sfont_at.
7155
7156 * xdisp.c (it_props): Move the entry for Qauto_composed to just
424c157f 7157 before the entry for Qcomposition.
1f45f627 7158 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
aca7a3d2
MB
7159 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
7160 the font in gstring.
7161 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
7162 LGLYPH_FORM (g) to detect the end of valid glyph.
7163 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
7164 we are composing with gstring.
7165
7166 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
7167 Check if adjustment is vector or not.
7168
7169 * Makefile.in (font.o): Make it depends on window.h.
7170
73acf815 71712008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7172
7173 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
7174 adjustment is vector or not.
7175
73acf815 71762008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2
MB
7177
7178 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
7179
73acf815 71802008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7181
7182 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
7183 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
7184 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
7185
1f45f627 7186 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
aca7a3d2 7187 (DEVICE_DELTA): Fix typo.
4c4475a8
GM
7188 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
7189 LGLYPH format.
aca7a3d2 7190
1f45f627 7191 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aca7a3d2
MB
7192 the change of LGLYPH format.
7193
73acf815 71942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7195
7196 * ftfont.c (ftfont_list): Fix typo.
1f45f627 7197 (ftfont_build_basic_charsets): Don't include letters with diacritics.
aca7a3d2 7198
880820fe 71992008-02-01 Jan Djärv <jan.h.d@swipnet.se>
aca7a3d2
MB
7200
7201 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
7202
7203 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
7204 xftface_info is non-NULL.
7205
880820fe 72062008-02-01 Jan Djärv <jan.h.d@swipnet.se>
aca7a3d2 7207
1f45f627 7208 * ftfont.c (ftfont_list): Move misplaced #endif.
aca7a3d2 7209
73acf815 72102008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7211
7212 * ftfont.c (ftfont_list): Pay attention to the case that
7213 FC_CAPABILITY is not defined.
7214
73acf815 72152008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7216
7217 * xftfont.c (xftfont_open): Set charset related members to -1.
7218
1f45f627
GM
7219 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
7220 QCname.
aca7a3d2
MB
7221 (ftfont_open): Set charset related members to -1.
7222
7223 * fontset.c (Votf_script_alist): New variable.
7224 (syms_of_fontset): Initialize it.
7225 (fontset_font): Delete unused variable.
7226
7227 * fontset.h (Votf_script_alist): Extern it.
7228
1f45f627 7229 * font.c (font_find_for_lface): Optimize code.
aca7a3d2
MB
7230
7231 * font.h (font_close_object, font_merge_old_spec): Extern them.
7232
73acf815 72332008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7234
7235 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
7236 (syms_of_font): Initialize them.
7237 (font_pixel_size): Allow float value in dpi.
1f45f627
GM
7238 (font_prop_validate_type): Delete.
7239 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
7240 Change caller.
7241 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
7242 (font_prop_validate_extra): Delete.
aca7a3d2
MB
7243 (font_prop_validate_spacing): New function.
7244 (font_property_table): Add elements for all known properties.
1f45f627
GM
7245 (get_font_prop_index): Rename from check_font_prop_name. New
7246 argument FROM. Change caller.
aca7a3d2 7247 (font_prop_validate): Validate all known properties.
1f45f627 7248 (font_put_extra): Delete argument force. Change caller.
aca7a3d2
MB
7249 (font_expand_wildcards): Make it static. Fix the way of shrinking
7250 the possible range.
1f45f627 7251 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
aca7a3d2 7252 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
1f45f627 7253 Change caller.
aca7a3d2 7254 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
1f45f627
GM
7255 (font_parse_fcname): Delete argument merge. Fix parsing of point
7256 size. Don't validate properties values here. Change caller.
7257 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
aca7a3d2
MB
7258 (font_open_by_name): Delete unused variable.
7259 (Ffont_spec): Likewise. Validate property values.
7260 (Ffont_match_p): New function.
7261
7262 * font.h (QCscalable): Extern it.
1f45f627 7263 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
aca7a3d2 7264
1f45f627 7265 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
aca7a3d2 7266
1f45f627 7267 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
aca7a3d2
MB
7268 (xfont_list_pattern): New function.
7269 (xfont_list): Use xfont_list_pattern.
7270
73acf815 72712008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7272
7273 * font.h (Flist_fonts): EXFUN it.
7274
73acf815 72752008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
7276
7277 * w32term.c (w32_initialize): Add back smoothing_type and
7278 smoothing_enabled definitions.
7279
73acf815 72802008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7281
7282 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
7283 s->face->font on determining underline position.
7284
73acf815 72852008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7286
7287 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
7288 (font_has_char): Accept font-object too.
7289 (font_find_for_lface): Try at first with a size specified in face.
7290
73acf815 72912008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7292
7293 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
7294 font_open_by_name.
7295
73acf815 72962008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7297
7298 * font.h (QCspacing, QCdpi): Extern them.
7299 (enum font_spacing): New enum.
7300 (FONT_PIXEL_SIZE_QUANTUM): New macro.
7301
7302 * font.c (POINT_TO_PIXEL): Don't divice POINT by 10.
7303 (QCspacing, QCdpi): New variables.
7304 (syms_of_font): Initialize them.
7305 (font_pixel_size): New function.
7306 (font_put_extra): New function.
7307 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
7308 in FONT_EXTRA.
e9184ccb
JB
7309 (font_parse_fcname): Handle enumenrated values (e.g. bold).
7310 Fix handling font size. Add QCname property that contains only
aca7a3d2 7311 unknown properties.
1f45f627 7312 (font_score): Change argument. Change caller. Pay attention to
aca7a3d2 7313 FONT_PIXEL_SIZE_QUANTUM.
4c4475a8
GM
7314 (font_sort_entites, font_list_entities, font_find_for_lface)
7315 (font_open_for_lface, font_open_by_name): Fix handling of font size.
1f45f627 7316 (Ffont_spec): Add QCname property that contains only unknown properties.
aca7a3d2
MB
7317
7318 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
7319 include weight in listing pattern, instead check weight of each
7320 listed font. Don't include scalable in pattern. Pay attention to
7321 FONT_PIXEL_SIZE_QUANTUM.
7322
73acf815 73232008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7324
aca7a3d2 7325 * font.c (font_parse_fcname): Fix parsing of point-size.
1f45f627 7326 (font_unparse_fcname): Produce symbolic names for style properties.
aca7a3d2
MB
7327 (font_list_entities): Handle float size correctly.
7328 (font_open_by_name): Prefer `normal' property values if the name
7329 doesn't specify them.
7330
7331 * fontset.c (Finternal_char_font): Use font_get_name, not
7332 Ffont_xlfd_name.
7333
7334 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
7335 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
7336 pattern. Don't force scalable.
7337
7338 * xftfont.c (xftfont_open): For generating a name, start from
7339 96-byte buffer.
7340
880820fe 73412008-02-01 Jan Djärv <jan.h.d@swipnet.se>
aca7a3d2
MB
7342
7343 * frame.h (x_new_fontset2): Fix prototype.
7344
73acf815 73452008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7346
1f45f627 7347 * font.h (struct font_driver): Delete member parse_name.
aca7a3d2
MB
7348 (font_match_p, font_get_spec, font_parse_fcname)
7349 (font_unparse_fcname): Extern them.
1f45f627 7350 (font_get_name): Adjust prototype.
aca7a3d2
MB
7351
7352 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
7353 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
7354 (font_expand_wildcards): Fix handling ENCODING field. Avoid
7355 unnecessary checks for weight, slant, and swidth.
7356 (font_parse_fcname): New function.
7357 (font_unparse_fcname): New function.
7358 (font_parse_name): New function.
7359 (font_match_p): New function.
1f45f627 7360 (font_get_name): Change return value to Lisp string.
aca7a3d2
MB
7361 (font_get_spec): New function.
7362 (Qunspecified, Qignore_defface): Don't extern them.
7363 (font_find_for_lface): Assume that LFACE is fully specified.
7364 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
7365 object, use it for FACE.
7366 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
7367 driver->parse_name.
7368 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
7369
1f45f627
GM
7370 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
7371 prototype.
aca7a3d2 7372
1f45f627
GM
7373 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
7374 argument F. Don't call Fnew_fontset. Instead, directly call
aca7a3d2
MB
7375 make_fontset.
7376
1f45f627 7377 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
aca7a3d2 7378
1f45f627 7379 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
aca7a3d2
MB
7380 of x_new_fontset2.
7381
7382 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
7383 (Qsans__serif): New variables.
7384 (ftfont_generic_family_list): New variable.
7385 (syms_of_ftfont): Initialize the above variables.
1f45f627 7386 (ftfont_pattern_entity): Delete argument NAME.
aca7a3d2
MB
7387 (ftfont_list_generic_family): New function.
7388 (ftfont_parse_name): Delete this function.
1f45f627 7389 (ftfont_list): Try generic family only when FcFontList found no font.
aca7a3d2
MB
7390 (ftfont_list_family): Fix args to FcObjectSetBuild.
7391
7392 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
7393 object in attrs[LFACE_FONT_INDEX].
7394 (set_lface_from_font_name): Cancel all changes for font-backend.
7395 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
7396 function.
7397 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
7398 font object in QCfont attribute.
7399 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
7400 (realize_default_face) [USE_FONT_BACKEND]: Call
7401 set_lface_from_font_and_fontset.
7402
7403 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
7404 "fixed", and signal error here if no suitable font was found.
7405
7406 * xfont.c (xfont_parse_name): Delete this function.
7407
7408 * xftfont.c (xftfont_open): Change coding style of error
7409 handling. Generate fontconfig's fontname pattern.
7410
7411 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
7412 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
7413
7414 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
7415 Both args FONTSET and FONT_OBJECT must be existing ones.
7416
73acf815 74172008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aca7a3d2
MB
7418
7419 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
7420
73acf815 74212008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7422
7423 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
7424
7425 * font.h (struct font): Fix typo.
7426
7427 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
7428 XLFD_XXX_INDEX.
7429 (enum xlfd_field_mask): New enum.
1f45f627 7430 (intern_font_field): Changed argument. Change caller. If digits
aca7a3d2
MB
7431 are followed by non-digits, return a symbol.
7432 (font_expand_wildcards): New function.
7433 (font_parse_xlfd): Fix wildcard handling.
7434 (Ffont_spec): If :name is specified, reflect the info in the other
7435 properties.
7436
7437 * ftfont.c (ftfont_pattern_entity): Fix typo.
7438 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
7439 locale.
7440
73acf815 74412008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7442
7443 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
7444
1f45f627 7445 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
aca7a3d2
MB
7446 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
7447 registry doesn't specify encoding part.
7448 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
7449 (font_open_by_name): At first try parsing the name.
7450 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
7451 as Lisp symbols.
7452
7453 * fontset.c (reorder_font_vector): Pay attention to the case that
7454 the 3rd element of font_def is nil.
7455 (fontset_font): For the default fontset, append one more fontset
7456 elements for a script-based font specification. Don't add script
7457 attribute on finding a font.
7458 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
7459 font name.
7460 (fontset_ascii_font): If a font can't be opened, return nil.
7461
1f45f627 7462 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
aca7a3d2
MB
7463 (ftfont_pattern_entity): New function.
7464 (ftfont_get_cache): Assume that freetype_font_cache is already
7465 initialized.
7466 (ftfont_list): Handle the case that a file is specified in font
7467 name. Use ftfont_pattern_entity to generate entities.
7468 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
7469 (syms_of_ftfont): Initialize freetype_font_cache.
7470
7471 * xftfont.c (xftfont_open): Make the font name fontconfig's
7472 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
7473 (xftfont_close): Free font->font.name if not NULL.
7474
7475 * xfont.c (xfont_list): If script is specified for a font, return
7476 null_vector.
7477 (xfont_list_family): Declare argument type.
7478
7479 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
7480 name, set LFACE_FONT (lface) to nil.
7481
7482 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
7483 return Qnil.
7484
73acf815 74852008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7486
1f45f627 7487 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
aca7a3d2
MB
7488 (standard_args): Add "-enable-font-backend".
7489
73acf815 74902008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7491
7492 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
7493 (struct xftdraw_list, xftdraw_list): Delete them.
7494 (register_xftdraw, check_xftdraw): Delete them.
7495 (xftfont_prepare_face): Don't call register_xftdraw.
7496 (xftfont_done_face): Don't call check_xftdraw.
7497 (xftfont_draw): Get backroudn color only when with_background is
7498 nonzero.
7499
7500 * xfont.c (xfont_encode_char): Fix calculation of char2b.
7501
73acf815 75022008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7503
7504 These changes are for the new font handling codes.
7505
7506 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
7507 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
7508 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
7509 (FONTSRC, FONTOBJ): New variables.
7510 (obj): Add $(FONTOBJ).
7511 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
7512 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
7513 @LIBOTF_LIBS@.
7514 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
1f45f627 7515 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
aca7a3d2 7516
1f45f627 7517 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
aca7a3d2
MB
7518
7519 * character.h (Vscript_representative_chars): Extern it.
7520
7521 * character.c (Vscript_representative_chars): New variable.
7522 (syms_of_character): Declare it as a Lisp variable.
7523
7524 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
7525 enable_font_backend is nonzero, accept the composition method
7526 COMPOSITION_WITH_GLYPH_STRING.
7527
7528 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
7529 enumeration COMPOSITION_WITH_GLYPH_STRING.
7530
aca7a3d2
MB
7531 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
7532 members clip_x, clip_y, clip_width, and clip_height.
7533 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
7534
7535 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
7536 --enable-font-backend. Call syms_of_font.
7537
7538 * fns.c (assoc_no_quit): New function.
7539
7540 * fontset.h (FONT_INFO_FROM_FACE): New macro.
7541 (face_for_font, new_fontset_from_font)
7542 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
7543
7544 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
7545 (fontset_font, fontset_ascii, face_for_char)
7546 (make_fontset_for_ascii_face, Ffont_info)
7547 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
7548 is nonzero, use font-backend mechanism.
7549 (find_font_encoding): Make it non-static.
7550 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
7551 New functions.
7552
7553 * frame.h (struct frame): New members resx and resy.
7554 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
7555 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
7556
7557 * frame.c [USE_FONT_BACKEND]: Include "font.h".
1f45f627 7558 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
aca7a3d2
MB
7559
7560 * lisp.h (assoc_no_quit): Extern it.
7561
7562 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
7563 Through out the file, use FONT_INFO_FROM_FACE instead of
7564 FONT_INFO_FROM_ID, use get_per_char_metric instead of
7565 rif->per_char_metric.
7566 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
7567 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
7568 (get_glyph_face_and_encoding, fill_composite_glyph_string)
7569 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
7570 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
7571 nonzero, use font-backend mechanism.
7572 (get_per_char_metric): New function.
7573
7574 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
7575 (set_lface_from_font_name)
7576 (set_font_frame_param, free_realized_face)
7577 (prepare_face_for_display, clear_face_gcs)
7578 (Finternal_set_font_selection_order, realize_x_face)
7579 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
7580 font-backend mechanism.
1f45f627 7581 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
aca7a3d2
MB
7582 (load_face_font) [USE_FONT_BACKEND]: Abort.
7583 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
1f45f627 7584 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
aca7a3d2
MB
7585
7586 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
7587 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
7588 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
7589 nonzero, register all available font drivers. Call
7590 x_default_font_parameter for deciding a font.
7591 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
7592
7593 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
7594 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
7595 (x_set_glyph_string_clipping_exactly)
7596 (x_compute_glyph_string_overhangs)
7597 (x_draw_glyph_string_foreground)
7598 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
7599 (x_free_frame_resources) [USE_FONT_BACKEND]: If
7600 enable_font_backend is nonzero, use font-backend mechanism.
7601 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
7602
73acf815 76032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7604
fcb314b2 7605 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
aca7a3d2
MB
7606 system_eol_type.
7607 (syms_of_coding): Initialize system_eol_type.
7608
fcb314b2
GM
7609 * process.c (Fset_process_coding_system): Inherit system's eol
7610 format if necessary.
aca7a3d2 7611
73acf815 76122008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aca7a3d2
MB
7613
7614 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
7615
73acf815 76162008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7617
7618 * coding.c (decode_eol): Pay attention to buffer relocation in
7619 del_range_2.
7620 (decode_coding): Call decode_eol before restoring undo_list.
7621
73acf815 76222008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7623
7624 * charset.c (Fdefine_charset_internal): Fix setting of
7625 emacs_mule_bytes.
7626
73acf815 76272008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7628
7629 * keyboard.c (read_char): Check if C is a character or not before
7630 looking up Vkeyboard_translate_table.
7631
73acf815 76322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7633
7634 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
7635 condition to terminate the loop.
7636
73acf815 76372008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7638
7639 * coding.c (produce_composition): Compare charbuf[i] instead of
7640 args[i] against 0.
7641 (Fterminal_coding_system): Use EQ to compare Lisp objects.
7642
73acf815 76432008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7644
7645 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
7646 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
7647 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
7648 detect_coding.
7649 (emacs_mule_char): Handle old style (Emacs 20) component character
7650 of a composition.
4c4475a8
GM
7651 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
7652 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
7653 composition rule.
aca7a3d2
MB
7654 (decode_coding_emacs_mule): Handle invalid bytes correctly.
7655
73acf815 76562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7657
7658 * coding.c (encode_coding_ccl): Allocate destination dynamically
7659 when necessary.
7660
73acf815 76612008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7662
7663 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
7664 the loop. When quitted, show a proper error message.
7665
73acf815 76662008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7667
aca7a3d2
MB
7668 * xterm.c (x_set_glyph_string_clipping_exactly): Set
7669 src->clip_head and src->clip_tail temporarily instead of src->hl.
7670
7671 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
7672 character sequence.
7673 (Fccl_execute_on_string): Use ASET, not XSET.
7674
73acf815 76752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7676
1f45f627 7677 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
aca7a3d2 7678
73acf815 76792008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7680
7681 * coding.c (decode_coding): Fix the condition of terminating the
7682 decoding loop.
7683
73acf815 76842008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7685
7686 * data.c (Faset): On setting a character bigger than 255 in a
1f45f627 7687 unibyte string, signal an error instead of make the string multibyte.
aca7a3d2 7688
73acf815 76892008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7690
7691 * charset.c (map_charset_chars): Fix for ascii-compatible charset
7692 made by a mapping table.
7693
73acf815 76942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7695
7696 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
7697 not.
7698 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
7699 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
7700
7701 * xterm.c (x_draw_composite_glyph_string_foreground): Check
7702 s->face is NULL or not.
7703
73acf815 77042008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7705
7706 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
7707 (x_draw_glyph_string): Fix drawing of right_overhang and
7708 left_overhang around/on cursor.
7709
1f45f627 7710 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
aca7a3d2 7711
73acf815 77122008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7713
7714 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
7715
73acf815 77162008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7717
4c4475a8
GM
7718 * coding.c (Fdefine_coding_system_internal)
7719 (Fdefine_coding_system_alias): Avoid a duplicated element in
7720 Vcoding_system_alist.
aca7a3d2 7721
73acf815 77222008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7723
7724 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
7725
fcb314b2 7726 * coding.c (Qcoding_system_define_form): New variable.
aca7a3d2
MB
7727 (syms_of_coding): Intern and staticpro it.
7728 (Fcoding_system_p): Check Qcoding_system_define_form.
1f45f627 7729 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
aca7a3d2
MB
7730
7731 * coding.h (CODING_SYSTEM_P): If ID is not available, call
7732 Fcoding_system_p.
7733 (CHECK_CODING_SYSTEM): If ID is not available, call
7734 Fcheck_coding_system.
4c4475a8
GM
7735 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
7736 Try also Fcheck_coding_system.
aca7a3d2 7737
73acf815 77382008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7739
aca7a3d2
MB
7740 * coding.c (code_conversion_restore): GCPRO arg.
7741
73acf815 77422008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7743
7744 * character.c (lisp_string_width): Check multibyteness of STRING.
7745
73acf815 77462008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aca7a3d2
MB
7747
7748 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
7749 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
7750 (decode_mac_font_name): Use decode_coding_c_string instead of
7751 decode_coding.
7752 (x_load_font): Initialize fontp->fontset to -1. Set
7753 fontp->encoding_type.
7754
73acf815 77552008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7756
7757 * search.c (search_buffer): Give up BM search on case-fold-search
7758 if one of a target character has a case-equivalence of different
7759 byte length even if that target charcter is an ASCII.
1f45f627
GM
7760 (simple_search): Fix calculation of byte length of matched text.
7761 (boyer_moore): Fix handling of case-equivalent multibyte characters.
aca7a3d2 7762
73acf815 77632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7764
7765 * coding.c (decode_coding): Fix handling of invalid bytes.
7766
73acf815 77672008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7768
7769 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
7770 Unicode characters.
7771
73acf815 77722008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7773
7774 * coding.c (encode_coding_object): If a pre-write-conversion
7775 function makes a new buffer, kill it.
7776
73acf815 77772008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7778
7779 * coding.c (QCascii_compatible_p): New variable.
7780 (syms_of_coding): Initialize it.
4c4475a8
GM
7781 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
7782 calling string_char.
aca7a3d2
MB
7783 (record_conversion_result): Add `default:' case.
7784 (coding_charset_list): Delete unused variable `coding_type'.
7785 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
7786 property in the plist of the coding system.
7787 (Fcoding_system_put): Check QCascii_compatible_p.
7788
73acf815 77892008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2
MB
7790
7791 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
7792 removed calculation of frame `f', as it's now used.
7793
73acf815 77942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7795
1f45f627 7796 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
aca7a3d2
MB
7797 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
7798 (UNIDATA): New variable.
7799 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
7800 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
7801 $(RUN_TEMACS) unconditionally.
7802
73acf815 78032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7804
1f45f627 7805 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
aca7a3d2
MB
7806 (admindir): New variable.
7807 ($(lispsource)international/charprop.el): New target.
7808
73acf815 78092008-02-01 Miles Bader <miles@gnu.org>
aca7a3d2 7810
1f45f627 7811 * character.c (chars-in-region): Remove obsolete function.
aca7a3d2
MB
7812 (syms_of_character): Remove its initialization.
7813
73acf815 78142008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
aca7a3d2
MB
7815
7816 * w32select.c (validate_coding_system)
7817 (setup_windows_coding_system): New functions.
7818 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
7819 setup_windows_coding_system.
7820 (setup_config, Fw32_get_clipboard_data): Use
7821 validate_coding_system.
7822 (Fx_selection_exists): Move call to setup_config to a place
1f45f627 7823 where signals are allowed.
aca7a3d2
MB
7824
7825 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
7826 (Fcheck_coding_system): Add declarations.
7827
73acf815 78282008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7829
1f45f627 7830 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
aca7a3d2 7831
73acf815 78322008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aca7a3d2
MB
7833
7834 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
7835 string as the second argument for x_new_fontset.
7836
73acf815 78372008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7838
7839 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
7840 (encode_coding_object): Use safe_call instead of call2.
7841
73acf815 78422008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7843
1f45f627 7844 * fontset.c (Fset_fontset_font): Check family element of a given vector.
aca7a3d2
MB
7845
7846 * Makefile.in (lisp): Include charprop.el.
7847
73acf815 78482008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aca7a3d2
MB
7849
7850 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
7851 Not sure if it's unnecessary.
7852
73acf815 78532008-02-01 Steven Tamm <steventamm@mac.com>
aca7a3d2
MB
7854
7855 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
7856 some possibly unnecessary fontset checking code that crashed
1f45f627 7857 when creating a new frame.
aca7a3d2 7858
73acf815 78592008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7860
7861 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
7862 lookup_face.
7863
7864 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
7865
1f45f627 7866 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
aca7a3d2 7867
73acf815 78682008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7869
73acf815 7870 * coding.c: Cancel the change done in HEAD on 2008-02-01.
aca7a3d2
MB
7871 (coding_charset_list): New function.
7872
7873 * coding.h (coding_charset_list): Extern it.
7874
73acf815 78752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7876
7877 * fontset.c (Fset_fontset_font): Call find_font_encoding with
7878 concatenation of family and registry.
7879
73acf815 78802008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7881
7882 * character.h (BYTE8_STRING): Fix typo.
7883
7884 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
7885 string to multibyte (sync to HEAD).
7886
7887 * casefiddle.c (casify_region): Handle changes in byte-length
7888 using replace_range_2 (sync to HEAD).
7889
73acf815 78902008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2
MB
7891
7892 * chartab.c (map_char_table): GCPRO table and arg.
7893
73acf815 78942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7895
7896 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
7897 already at limit.
7898
73acf815 78992008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7900
7901 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
7902 instead of fast_c_string_match_ignore_case.
1f45f627 7903 (find_font_encoding): Change argument to Lisp_Object. Use
aca7a3d2 7904 fast_string_match_ignore_case instead of
1f45f627 7905 fast_c_string_match_ignore_case. Change caller.
aca7a3d2 7906
73acf815 79072008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7908
7909 * xdisp.c (get_next_display_element): In unibyte case, decide to
7910 display in octal form by checking a chacter by
7911 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
7912
1f45f627 7913 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
aca7a3d2
MB
7914
7915 * character.c (unibyte_has_multibyte_table): New variable.
7916
7917 * character.h (unibyte_has_multibyte_table): Extern it.
7918 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
7919
73acf815 79202008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7921
7922 * coding.c (encode_coding_iso_2022): Fix handling of charset
7923 annotation.
7924
73acf815 79252008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7926
7927 * coding.c (setup_coding_system): If coding_system is nil, use
7928 Qundecided.
7929 (Fterminal_coding_system): Return nil if terminal coding system is
7930 `undecided'.
7931 (syms_of_coding): Define coding-system `undecided' here. Setup
7932 terminal_coding as `undecided'.
7933
73acf815 79342008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7935
7936 * xdisp.c (message_dolog, set_message_1): Call
7937 unibyte_char_to_multibyte with arg type int.
7938
aca7a3d2
MB
7939 * lread.c (read1): Fix reading of a char-table.
7940
7941 * print.c (print_object): Include sub char-table in cicularities
7942 detection.
7943
73acf815 79442008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7945
7946 * keymap.c (where_is_internal_2): Fix for the case that KEY is a
1f45f627 7947 cons. Append the found sequences in car of ARGS instead of prepending.
aca7a3d2 7948
73acf815 79492008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7950
7951 * fileio.c (report_file_error): Make a unibyte string from
7952 strerror (errorno).
7953 (Fsubstitute_in_file_name): Fix the arg to
7954 unibyte_char_to_multibyte. It is evaluated twice.
7955
73acf815 79562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7957
7958 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
7959
73acf815 79602008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7961
7962 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
7963 BOM is not found.
4c4475a8
GM
7964 (detect_coding, detect_coding_system): Optimization for ISO-2022
7965 when no 8-bit data is found.
aca7a3d2 7966
73acf815 79672008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
7968
7969 * w32fns.c (x_to_w32_font): Update to use new coding struct.
7970
73acf815 79712008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 7972
4c4475a8
GM
7973 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
7974 CHARS.
aca7a3d2 7975
73acf815 79762008-02-01 Steven Tamm <steventamm@mac.com>
aca7a3d2
MB
7977
7978 * macterm.c (mac_encode_char): Add charset argument and update
7979 to use encoding_type.
2a2e8de7 7980 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
1f45f627
GM
7981 switch to pure fontset.
7982 (decode_mac_font_name): Temporarily remove decoding.
7983 (x_font_name_to_mac_font_name): Temporarily remove encoding.
7984 (x_load_font): Temporarily remove encoding.
aca7a3d2 7985
73acf815 79862008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7987
7988 * xfaces.c (Fface_font): If frame is not on a window system,
7989 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
7990 refer to face->font.
7991 (split_font_name_into_vector, build_font_name_from_vector)
7992 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
7993 whne HAVE_WINDOW_SYSTEM is defined.
7994
73acf815 79952008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
7996
7997 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
7998 (x_produce_glyphs): Fix setting of members of cmp in case
1f45f627 7999 cmp->glyph_len is zero.
aca7a3d2 8000
1f45f627 8001 * fontset.c (Fset_fontset_font): Fix docstring.
aca7a3d2
MB
8002 (Ffontset_info): Make it backward compatible. New arg ALL.
8003
73acf815 80042008-02-01 Kim F. Storm <storm@cua.dk>
aca7a3d2
MB
8005
8006 * process.c (read_process_output): Grow decoding_buf when needed;
8007 this could cause a crash in allocate_string and compact_small_strings.
8008
73acf815 80092008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8010
1f45f627 8011 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
aca7a3d2 8012
73acf815 80132008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8014
8015 * coding.c (setup_coding_system): Set coding->common_flags
8016 correctly for raw-text.
8017 (consume_chars): On encoding unibyte text by raw-text, don't check
8018 multibyte form.
1f45f627 8019 (encode_coding): On encoding by raw-text, never use translation tables.
aca7a3d2
MB
8020
8021 * fileio.c (e_write): Short cut for the case of no encoding.
8022
73acf815 80232008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8024
4c4475a8
GM
8025 * coding.c (detect_coding, detect_coding_system): Delete unused
8026 variables.
aca7a3d2 8027
73acf815 80282008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8029
8030 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
8031 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
8032
73acf815 80332008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8034
8035 * coding.c (Ffind_coding_systems_region_internal): Include
8036 raw-text and no-conversion in the result.
8037
73acf815 80382008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8039
1f45f627 8040 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
aca7a3d2
MB
8041 (load_font_get_repertory): Delete unnecessary check of ENCODING of
8042 FONT_DEF.
8043 (font_def_arg, add_arg, from_arg, to_arg): New args.
1f45f627 8044 (set_fontset_font): Change argument.
aca7a3d2
MB
8045 (Fset_fontset_font): Fix for the case that TARGET is a script
8046 name and charset name.
8047 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
8048
73acf815 80492008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8050
1f45f627
GM
8051 * fontset.c (fontset_font): Rename from fontset_face. Change return
8052 value.
4c4475a8
GM
8053 (face_suitable_for_char_p, face_for_char): Adjust for the change
8054 of fontset_font.
aca7a3d2
MB
8055 (make_fontset_for_ascii_face): Fix setting of the fontset element
8056 for ASCII.
8057 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
8058 to get a font name.
1f45f627 8059 (Ffontset_info): Adjust for the change of fontset_font.
aca7a3d2 8060
fcb314b2 8061 * coding.c (emacs_mule_char): Check invalid code more regidly.
aca7a3d2
MB
8062
8063 * character.h (LEADING_CODE_LATIN_1_MIN)
8064 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
8065
73acf815 80662008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8067
fcb314b2 8068 * editfns.c (check_translation): New function.
aca7a3d2
MB
8069 (Ftranslate_region_internal): Handle M:N mapping.
8070
73acf815 80712008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8072
8073 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
8074
73acf815 80752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8076
8077 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
8078 goto invalid_code.
8079 (decode_coding_iso_2022): Fix handling of invalid designation.
8080
8081 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
8082 after calling code_conversion_save.
8083
73acf815 80842008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8085
8086 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
8087
8088 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
8089
8090 * fontset.c: Include "intervals.h".
8091 (fontset_face): Fix comparing of Lisp_Objects.
4c4475a8
GM
8092 (free_face_fontset, new_fontset_from_font_name): Fix
8093 Lisp_Object/int mixup.
aca7a3d2
MB
8094
8095 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
8096
8097 * coding.c: Add many prototypes for static functions.
8098 (get_translation_table): Allow max_lookup to be NULL.
2a2e8de7 8099 (decode_coding, Ffind_coding_systems_region_internal)
4c4475a8
GM
8100 (Funencodable_char_position, Fcheck_coding_systems_region): Call
8101 get_translation_table with max_lookup NULL.
aca7a3d2 8102
73acf815 81032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8104
8105 * coding.c (get_translation_table): Declare it as Lisp_Object.
8106 (LOOKUP_TRANSLATION_TABLE): New macro.
4c4475a8
GM
8107 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
8108 instead of CHAR_TABLE_REF.
aca7a3d2 8109
73acf815 81102008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8111
1f45f627 8112 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
aca7a3d2
MB
8113 annotation data format.
8114 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
1f45f627 8115 Change arguments FROM and TO to single argument NCHARS. Change caller.
4c4475a8 8116 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
aca7a3d2 8117 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4c4475a8
GM
8118 (decode_coding_ccl, decode_coding_charset): Pay attention to
8119 coding->charbuf_used.
aca7a3d2
MB
8120 (get_translation): New function.
8121 (produce_chars): New arguments translation_table and last_block.
8122 Translate characters here. Return number of carryover chars.
1f45f627
GM
8123 Change caller.
8124 (produce_composition): New argument pos. Change caller.
8125 Adjust for the change of annotation data format.
aca7a3d2
MB
8126 (produce_charset, produce_annotation): Likewise.
8127 (decode_coding, encode_coding): Don't call translate_chars.
1f45f627
GM
8128 (consume_chars): New arg translation_table. Change caller.
8129 (translate_chars): Delete.
8130 (syms_of_coding): Make translation-table's number of extra slots 2.
aca7a3d2 8131
73acf815 81322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8133
8134 * search.c (simple_search): Fix setting this_pos_byte in backward
8135 search.
8136
8137 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
8138 byte sequence.
8139 (detect_coding_ccl): Fix setting of the variable valids.
8140
73acf815 81412008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8142
8143 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
8144
8145 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
8146
1f45f627 8147 * editfns.c (Ftranslate_region_internal): Rename from
aca7a3d2
MB
8148 Ftranslate_region. Accept a char-table in TABLE.
8149 (syms_of_editfns): Defsubr Stranslate_region_internal.
8150
8151 * xfaces.c (set_lface_from_font_name): If a font is specified for
8152 a frame, generate a fontset from the font.
8153 (build_scalable_font_name): If the scalable font is requested for
8154 a specific size, don't change that size.
8155 (try_font_list): Try a scalable font also in the case that a
1f45f627 8156 pattern string is specified.
aca7a3d2 8157
73acf815 81582008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8159
8160 * xfaces.c (Fface_font): New optional arg CHARACTER.
8161
73acf815 81622008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8163
8164 * charset.h (CHARSET_OFFSET): New macro.
8165
73acf815 81662008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8167
8168 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
8169
8170 * fontset.c (fontset_face): Handle the case that repertory is a
8171 char-table.
8172 (find_font_encoding): Return nil for unknown encoding.
8173 (Fset_fontset_font): Ignore a font of unknown encoding.
8174
73acf815 81752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8176
1f45f627 8177 * keymap.c (describe_vector): Handle default value of a char table.
aca7a3d2
MB
8178
8179 * fontset.c (fontset_face): Handle fallback fonts correctly.
8180 (Ffontset_info): Return infomation about fallback fonts.
8181
73acf815 81822008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8183
8184 * fontset.c (FONTSET_DEFAULT): New macro.
4c4475a8 8185 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
aca7a3d2
MB
8186 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
8187 the case that it is nil.
8188 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
1f45f627 8189 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
aca7a3d2
MB
8190
8191 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
8192 subset or superset.
8193
73acf815 81942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8195
8196 * emacs.c (main): Call init_charset after syms_of_XXX.
8197
1f45f627 8198 * charset.c (Vcharset_map_directory): Delete.
1f204af3 8199 (Vcharset_map_path): New variable.
aca7a3d2
MB
8200 (load_charset_map_from_file): Use Vcharset_map_path instead.
8201 (init_charset): Initialize Vcharset_map_path.
8202 (syms_of_charset): Delete declaration of "charset-map-directory",
8203 add declaration of "charset-map-path".
8204
73acf815 82052008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8206
4c4475a8
GM
8207 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
8208 ASCII only string.
aca7a3d2
MB
8209
8210 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
8211
8212 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
6f69e89b 8213 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
aca7a3d2 8214
73acf815 82152008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8216
8217 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
8218
8219 * coding.c (QCmnemonic, QCdefalut_char)
8220 (QCdecode_translation_table, QCencode_translation_table)
8221 (QCpost_read_conversion, QCpre_write_conversion): New variables.
8222 (get_translation_table): Return a list of translation tables if
8223 necessary.
8224 (decode_coding): Call get_translation_table with ENCODEP 0.
8225 (char_encodable_p): If translation_table is non-nil, always call
8226 translate_char.
8227 (Fdefine_coding_system_internal): Accept list of translation
8228 tables as :encode-translation-table and :decode-translation-table.
8229 (Fcoding_system_put): New function.
8230 (syms_of_coding): Declare new symbols. Defsubr
8231 Scoding_system_put.
4c4475a8
GM
8232 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
8233 typically JISX0212.
aca7a3d2
MB
8234
8235 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
8236 when the charset is superset type.
8237
8238 * character.c (translate_char): Accept list of translation tables.
8239
73acf815 82402008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8241
1f45f627 8242 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
aca7a3d2
MB
8243 (CODING_ATTR_TRANS_TBL): New macro.
8244
8245 * coding.c (get_translation_table): New function.
8246 (translate_chars): Fix the bug of skipping annotation data.
4c4475a8
GM
8247 (decode_coding, encode_coding): Utilize get_translation_table.
8248 (char_encodable_p, Funencodable_char_position): Translate char if
8249 necessary.
8250 (Ffind_coding_systems_region_internal)
8251 (Fcheck_coding_systems_region): Setup translation table for encode
8252 in a coding system attribute vector in advance.
aca7a3d2
MB
8253 (Fdefine_coding_system_internal): Allow a symbol as translation
8254 table. For shift-jis type coding system, allow 4th charset.
8255
73acf815 82562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8257
8258 * coding.c (decode_coding_sjis): Check the first byte rigidly.
8259
8260 * xdisp.c (get_next_display_element): Pass -1 as POS to
8261 FACE_FOR_CHAR if displaying a C-string.
8262
73acf815 82632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8264
8265 * composite.c (get_composition_id): Handle xoff and yoff in a
8266 composition rule.
8267
8268 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
8269 (struct composition): New member lbearing and rbearing.
8270
8271 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
8272 (x_get_glyph_overhangs): Handle a composition glyph.
1f45f627 8273 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
aca7a3d2
MB
8274
8275 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
8276 composition glyph.
8277
73acf815 82782008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8279
8280 * print.c: Include charset.h.
8281 (Vprint_charset_text_property): New variable.
8282 (Qdefault): Extern it.
8283 (PRINT_STRING_NON_CHARSET_FOUND)
8284 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
8285 (print_check_string_result): New variable.
8286 (print_check_string_charset_prop): New function.
8287 (print_prune_charset_plist): New variable.
8288 (print_prune_string_charset): New function.
8289 (print_object): Call print_prune_string_charset if
8290 Vprint_charset_text_property is not t.
8291 (print_interval): Print nothing if itnerval->plist is nil.
8292 (syms_of_print): Declare Vprint_charset_text_property as a lisp
8293 variable. Init and staticpro print_prune_charset_plist.
8294
73acf815 82952008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8296
8297 * fontset.c (new_fontset_from_font_name): Use the specified font
8298 for all characters in the new fontset.
8299
8300 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
8301 OBJECT args.
8302
8303 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
8304 OBJECT args for composition too.
8305
8306 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
8307 OBJECT args.
8308
73acf815 83092008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8310
8311 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
8312
1f45f627 8313 * fontset.c (reorder_font_vector): Adjust for the change of
aca7a3d2 8314 FONT_DEF format.
1f45f627 8315 (fontset_face): New arg id. Change caller.
aca7a3d2 8316 (face_for_char): New args pos and object.
1f204af3 8317 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
aca7a3d2
MB
8318 (fs_query_fontset): Check NAME by Fassoc too.
8319 (Fset_fontset_font): Allow non-XLFD font name.
1f45f627 8320 (Ffontset_info): Adjust for the change of FONT_DEF format.
aca7a3d2 8321
1f45f627 8322 * fontset.h (face_for_char): Adjust prototype.
aca7a3d2 8323
4c4475a8
GM
8324 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
8325 (append_space, extend_face_to_end_of_line)
8326 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
8327 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
aca7a3d2
MB
8328
8329 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
8330 POS and OBJECT args.
8331
8332 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
8333 POS and OBJECT args.
8334
73acf815 83352008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
8336
8337 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
8338 of GlobalAlloc'ed memory.
8339
73acf815 83402008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8341
8342 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
8343
8344 * charset.h (charset_table_used): Delete extern.
8345
8346 * charset.c (charset_table_used): Make it static.
8347 (map_charset_chars): Fix args to c_function with.
8348
8349 * chartab.c (map_sub_char_table_for_charset): Fix args to
8350 c_function with.
8351
8352 * coding.h (enum coding_result_code): Delete
8353 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
8354
8355 * coding.c (Qinsufficient_source, Qinconsistent_eol)
1f45f627 8356 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
aca7a3d2
MB
8357 (Vlast_code_conversion_error): New variables.
8358 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
8359 (ONE_MORE_BYTE): Record error if any instead of signaling an
8360 error. If non-ASCII multibyte char is found, return the negative
8361 value of the code. All callers changed to check it.
8362 (ONE_MORE_BYTE_NO_CHECK): Likewise.
1f45f627
GM
8363 (record_conversion_result): New function. Change all codes setting
8364 coding->result to call this function.
4c4475a8
GM
8365 (detect_coding_utf_8, decode_coding_utf_8)
8366 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
8367 Don't use the local variable incomplete.
aca7a3d2 8368 (emacs_mule_char): Change the second arg to `const'.
aca7a3d2
MB
8369 (decode_coding): Fix of flushing out unprocessed data.
8370 (make_conversion_work_buffer): Fix making of a work buffer.
2a2e8de7 8371 (decode_coding_object): Return coding->dst_object.
aca7a3d2
MB
8372
8373 * fontset.c (set_fontset_font): Fix args.
8374
8375 * lisp.h (CHARACTERBITS): Define as 22.
8376
8377 * process.c (send_process): Be sure to set coding->src_multibyte.
8378
8379 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
8380
73acf815 83812008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8382
8383 * xdisp.c (handle_auto_composed_prop): Give limit to
8384 Fnext_single_char_property_change.
8385
73acf815 83862008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8387
424c157f 8388 * composite.c (syms_of_composite): Don't make the composition hash
1f45f627 8389 table weak.
aca7a3d2
MB
8390
8391 * fontset.c (Fset_fontset_font): Fix docstring.
8392
8393 * lisp.h (detect_coding_system): Adjust prototype.
8394
8395 * fileio.c (kill_workbuf_unwind): Delete this function.
8396 (Finsert_file_contents): Adjust the call of detect_coding_system.
8397 Get conversion_buffer by code_conversion_save. Use the macor
8398 CODING_MAY_REQUIRE_DECODING. After decoding, update
8399 coding_system.
8400
8401 * coding.h (make_conversion_work_buffer): Delete extern.
8402 (code_conversion_save): Extern it.
8403
8404 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
1f45f627 8405 (CODING_GET_INFO): Delete argument eol_type. Change callers.
aca7a3d2
MB
8406 (decode_coding_utf_8): Don't do eol converion.
8407 (detect_coding_utf_16): Check coding->src_chars, not
1f45f627 8408 coding->src_bytes. Add heuristics for those that have no signature.
4c4475a8
GM
8409 (decode_coding_emacs_mule, decode_coding_iso_2022)
8410 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
8411 Don't do eol converion.
aca7a3d2
MB
8412 (adjust_coding_eol_type): Return a new coding system.
8413 (detect_coding): Don't detect eol. Fix for utf-16 detection.
8414 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
8415 each change.
8416 (decode_coding): Pay attention to undo_list. Do eol convesion for
8417 all types of coding-systems (if necessary).
8418 (Vcode_conversion_work_buf_list): Delete it.
1f45f627 8419 (Vcode_conversion_reused_workbuf): Rename from
aca7a3d2
MB
8420 Vcode_conversion_reused_work_buf.
8421 (Vcode_conversion_workbuf_name): New variable.
8422 (reused_workbuf_in_use): New variable.
8423 (make_conversion_work_buffer): Delete the arg DEPTH.
4c4475a8 8424 (code_conversion_restore): Change argument to cons.
1f45f627
GM
8425 (code_conversion_save): Delete the argument BUFFER. Change callers.
8426 (detect_coding_system): New argument src_chars. Change callers.
aca7a3d2
MB
8427 Fix for utf-16 detection.
8428 (init_coding_once): Don't use ISO_carriage_return.
1f45f627 8429 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
aca7a3d2
MB
8430 reused_workbuf_in_use.
8431
73acf815 84322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8433
8434 * keymap.c (store_in_keymap): Pay attention to the case that idx
8435 is a cons specifying a character range.
8436
73acf815 84372008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8438
8439 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
8440 HANDLED_RECOMPUTE_PROPS.
8441
8442 * coding.c (Fdefine_coding_system_internal): Fix checking of
8443 ascii compatibility.
8444
73acf815 84452008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8446
1f45f627 8447 * charset.c (find_charsets_in_text): Delete unused locale variable.
aca7a3d2
MB
8448 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
8449
8450 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
8451 Resync charset_list to Vemacs_mule_charset_list.
8452
8453 * keymap.c (store_in_keymap): Pay attention to the case that idx
8454 is a cons specifying a character range.
8455
73acf815 84562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8457
8458 * composite.c (update_compositions): Bind inhibit-read-only, etc
8459 to t before calling remove-list-of-text-properties.
8460
8461 * print.c (print_object): Always print ASCII chars as is.
8462
73acf815 84632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8464
1f45f627 8465 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
aca7a3d2 8466
4c4475a8
GM
8467 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
8468 is a char table.
aca7a3d2 8469
73acf815 84702008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8471
1f45f627 8472 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
aca7a3d2 8473
73acf815 84742008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8475
8476 * xfaces.c (set_lface_from_font_name): Fix for the case that
8477 FONTNAME is not fontset name.
8478
73acf815 84792008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8480
8481 * fns.c (base64_encode_1): Fix previous change.
8482
73acf815 84832008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8484
8485 * fontset.c (set_fontset_font): New function.
8486 (Fset_fontset_font): If a font is specified for a charset, use
8487 map_charset_chars to store the font spec in a fontset.
8488
73acf815 84892008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8490
1f204af3 8491 * fontset.c (fontset_face): Create a fallback fontset on demand.
aca7a3d2
MB
8492 (make_fontset): Don't create a fallback fontset here.
8493 (free_face_fontset): Free a fallback fontset (if any) too.
8494 (n_auto_fontsets): Delete this variable.
8495 (auto_fontset_alist): New variable.
8496 (new_fontset_from_font_name): Check auto_fontset_alist.
8497 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
8498 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
8499 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
8500 Defsubr Sfontset_list_all.
8501
73acf815 85022008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8503
8504 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
8505
73acf815 85062008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8507
8508 * fontset.c (Fnew_fontset): Check NAME more rigidly.
8509
73acf815 85102008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8511
8512 * editfns.c (Fgoto_char): Fix docstring.
8513
73acf815 85142008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8515
8516 * insdel.c (insert_from_gap): Adjust intervals correctly.
8517
73acf815 85182008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
8519
8520 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
8521 (pfnGetFontUnicodeRanges): New dynamically loaded function.
8522 (w32_initialize): Try to load it.
8523 (x_get_font_repertory): Use it if available.
8524 (w32_encode_char): Add shortcut for unicode output.
8525
8526 * w32fns.c (w32_load_system_font): Default charset to -1.
8527 (x_to_w32_charset): Match all fonts for unicode.
1f45f627 8528 (w32_to_x_charset): New parameter matching. Don't return partial
aca7a3d2
MB
8529 or wildcard charsets.
8530 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
8531 (w32_codepage_for_font): Return CP_UNICODE for unicode.
8532 (w32_to_x_font): Match charset to real charset.
8533 (enum_font_cb2): Always list unicode versions.
8534
8535 * makefile.w32-in (temacs): Increase EMHEAP.
8536
73acf815 85372008-02-01 Jason Rumney <jasonr@gnu.org>
aca7a3d2
MB
8538
8539 * w32term.c (w32_encode_char): New charset parameter.
8540 font_info.encoding becomes encoding_type.
1f45f627 8541 (x_get_font_repertory): New function. Warning: stub only!
aca7a3d2
MB
8542 (x_new_font): Return quickly if font already set.
8543 (x_new_fontset): fontsetname parameter is Lisp_Object.
2a2e8de7
JB
8544 Use new fs_query_fontset. Try new_fontset_from_font_name.
8545 Use fontset_name for return value.
aca7a3d2
MB
8546
8547 * w32term.h: Declare x_get_font_repertory.
8548
8549 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
1f45f627 8550 place of find_charset_in_text. Use encode_coding_object in place
aca7a3d2
MB
8551 of encode_coding.
8552 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
8553 decode_coding.
8554
8555 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
8556 of x_new_fontset.
8557 (w32_load_system_font): Initialize charset as unicode.
8558 font_info.encoding becomes encoding_type.
1f45f627
GM
8559 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
8560 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
aca7a3d2
MB
8561 (syms_of_w32fns): Set get_font_repertory_func.
8562
1f45f627 8563 * w32console.c: Include character.h. Use terminal_encode_buffer
aca7a3d2 8564 from term.c.
1f45f627 8565 (write_glyphs): Use new version of encode_terminal_code. Use
aca7a3d2
MB
8566 encode_coding_object in place of encode_coding.
8567
8568 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
8569 encoding becomes encoding_type.
8570
8571 * term.c (terminal_encode_buffer): Make externally visible.
8572
8573 * makefile.w32-in: Add character.h dependancies.
8574 (character.o, chartab.o): New targets.
8575
73acf815 85762008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8577
8578 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
1f45f627 8579 CODING_ID_EOL_TYPE.
aca7a3d2 8580
73acf815 85812008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2
MB
8582
8583 * coding.c (produce_chars): Revert last change.
8584
73acf815 85852008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8586
8587 * charset.h (charset_unicode): Extern it.
8588
8589 * charset.c (string_xstring_p): Check by (C >= 0x100).
1f45f627 8590 (find_charsets_in_text): Change format of the arc CHARSETS. New
aca7a3d2 8591 arg MULTIBYTE.
1f45f627 8592 (Ffind_charset_region, Ffind_charset_string): Adjust for the
aca7a3d2
MB
8593 change of find_charsets_in_text.
8594 (Fsplit_char): Fix doc. Never return unknown.
8595
8596 * chartab.c (char_table_translate): Use CHARACTERP, not INETEGERP.
8597
8598 * coding.c (Fdefine_coding_system_alias): Update
8599 Vcoding_system_list.
8600
8601 * fontset.c (load_font_get_repertory): Pay attention to the case
8602 that ENCODING of a font is specified by a char-table.
8603
8604 * xterm.c (x_get_font_repertory): Handle the case that the
8605 encoding of font is other than Unicode.
8606
73acf815 86072008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8608
8609 * term.c (encode_terminal_code): Don't handle glyph-table. Check
8610 if a character is encodable by the terminal coding system. If
8611 not, produces proper number of `?'s. Update
8612 terminal_encode_buffer and terminal_encode_buf_size if necessary.
8613 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
8614
73acf815 86152008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8616
8617 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
8618 variables.
1f45f627 8619 (encode_terminal_code): Change argument. Encode multiple
aca7a3d2
MB
8620 characters at once. Store the result of encoding in
8621 terminal_encode_buffer.
4c4475a8
GM
8622 (write_glyphs, insert_glyphs): Adjust for the change of
8623 encode_terminal_code.
aca7a3d2
MB
8624 (term_init): Initialize terminal_encode_buffer and
8625 terminal_encode_buf_size.
8626
8627 * coding.c (consume_chars): If coding->src_object is nil, don't
8628 check annotation.
8629
73acf815 86302008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8631
8632 * character.c (char_string): Use ASCII_CHAR_P instead of
8633 SINGLE_BYTE_CHAR_P.
8634
73acf815 86352008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8636
8637 * xdisp.c (handle_auto_composed_prop): Check if the last
8638 characters of auto-composed region is newly composed with the
8639 following characters.
8640 (handle_composition_prop): Fix checking of point being inside
8641 composition.
8642
73acf815 86432008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8644
8645 * fns.c (concat): Don't change multibyteness of the result by
8646 concatenating an 8-bit character.
8647
8648 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
8649 multibyteness of the result when newelt is an 8-bit character.
8650
73acf815 86512008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8652
8653 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
8654 EMACS_INT.
8655
8656 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
8657
8658 * xfaces.c (face_numeric_value): Declare dim size_t.
8659 (Finternal_lisp_face_equal_p): Remove unused f.
8660
8661 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
8662 (MATRIX_ROW): Remove unused vars.
8663 (draw_glyphs, x_insert_glyphs, fast_find_position)
8664 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
8665 byte/char counts.
8666
8667 * regex.c (regex_compile): Remove unused var.
8668
8669 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
8670
8671 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
8672 (Faccessible_keymaps, where_is_internal): Remove unused vars.
8673
8674 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
8675
8676 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
8677
8678 * fileio.c (Fwrite_region): Remove unused var.
8679
8680 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
8681 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
8682
8683 * composite.c (Fremove_list_of_text_properties): Declare.
8684
1f45f627
GM
8685 * coding.c (inhibit_pre_post_conversion): Remove (unused).
8686 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
aca7a3d2
MB
8687 (coding_inherit_eol_type): Remove unused attrs.
8688 (detect_coding): Cast arg of detect_eol.
8689
8690 * charset.c (syms_of_charset): Remove unused var p.
8691 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
8692 byte/char counts.
8693
8694 * casetab.c (set_case_table): Remove unused var.
8695
8696 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
1f45f627 8697 unused vars.
aca7a3d2 8698
73acf815 86992008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8700
8701 * xterm.c (x_bitmap_mask): Declare.
8702
73acf815 87032008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8704
8705 * xterm.c (x_term_init): Fix type error.
8706
8707 * lisp.h: Add Funibyte_char_to_multibyte.
8708
8709 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
8710 (Fset_coding_system_priority): Doc fix.
8711
aca7a3d2
MB
8712 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
8713
8714 * indent.c (check_composition): Make start and end EMACS_INT.
8715
8716 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
8717
8718 * xdisp.c (handle_composition_prop, check_point_in_composition):
8719 Make buffer positions EMACS_INT.
8720
8721 * composite.c (find_composition, run_composition_function)
8722 (update_compositions, Ffind_composition_internal): Make buffer
8723 positions EMACS_INT.
8724
8725 * composite.h (find_composition, update_compositions): Make
8726 position args EMACS_INT.
8727
1f45f627 8728 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
aca7a3d2
MB
8729
8730 * intervals.c (get_property_and_range):
8731 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
8732
8733 * unexalpha.c: Don't include varargs.h.
8734
73acf815 87352008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8736
8737 * coding.h (ENCODE_UTF_8): New.
8738
8739 * Makefile.in (gtkutil.o): Depend on coding.h.
8740
8741 * coding.c (Fset_coding_system_priority): Doc fix.
8742
73acf815 87432008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8744
8745 * fileio.c (Finsert_file_contents): Call setup_coding_system in
8746 the case of auto saving.
8747
73acf815 87482008-02-01 Andreas Schwab <schwab@suse.de>
aca7a3d2 8749
4c4475a8
GM
8750 * chartab.c (map_char_table, map_char_table_for_charset): Protect
8751 `range' from GC.
aca7a3d2 8752
73acf815 87532008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8754
8755 * coding.c (decode_coding_sjis): Check bytes more rigidly.
8756
73acf815 87572008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8758
1f45f627 8759 * fileio.c (choose_write_coding_system): Return a decided coding system.
aca7a3d2
MB
8760 (Fwrite_region): Set Vlast_coding_system_used to the return value
8761 of choose_write_coding_system.
8762
73acf815 87632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8764
8765 * charset.c (Fset_charset_priority): Pay attention to duplicated
8766 arguments.
8767
8768 * coding.c (QCcategory): New variable.
8769 (syms_of_coding): Defsym it. Set all elements of
8770 Vcoding_category_table and their symbol values.
8771 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
8772 coding-category-XXX, and coding-category-list.
8773 (Fdefine_coding_system_internal): Add category in the plist.
8774
73acf815 87752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8776
8777 * callproc.c (Fcall_process): Handle carryover correctly.
8778
1f45f627 8779 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
aca7a3d2
MB
8780 (raw_text_coding_system): Check NILP (coding_system).
8781 (coding_inherit_eol_type): Check NILP (coding_system) and
8782 NILP (parent).
8783 (consume_chars): Fix for the case of raw-text.
8784
8785 * process.c (read_process_output): Handle carryover correctly.
8786
73acf815 87872008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8788
8789 * regex.c (re_search_2): Fix last change.
8790
73acf815 87912008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8792
8793 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
8794 target_multibyte. Even in a unibyte case, return a converted
8795 multibyte char.
8796 (GET_CHAR_AFTER): New macro.
8797 (PATFETCH): Translate via multibyte char.
8798 (HANDLE_UNIBYTE_RANGE): Delete this macro.
8799 (SETUP_MULTIBYTE_RANGE): New macro.
8800 (regex_compile): Setup compiled code so that its multibyteness
8801 matches that of a target. Fix the handling of "[X-YZ]" using
8802 SETUP_MULTIBYTE_RANGE.
8803 (analyse_first) <charset>: For filling fastmap for all multibyte
8804 characters, don't check by BASE_LEADING_CODE_P.
8805 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
8806 the same as RE_MULTIBYTE_P (bufp) now.
1f45f627 8807 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
aca7a3d2
MB
8808 (TARGET_CHAR_AND_LENGTH): Delete this macro.
8809 (TRANSLATE_VIA_MULTIBYTE): New macro.
8810 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
8811 It is the same as RE_MULTIBYTE_P (bufp) now.
8812 <exactn>: Translate via multibyte.
8813 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
8814 translate it.
8815 <charset, charset_not>: Fetch a character by
8816 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
8817 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
8818 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
8819 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
8820 by GET_CHAR_AFTER.
c5ad7a3d 8821 (bcmp_translate): Likewise.
aca7a3d2
MB
8822
8823 * search.c (compile_pattern): Check the member target_multibyte,
8824 not the member multibyte of buf.
8825
8826 * lread.c (read1): While reading a string, set force_singlebyte
8827 and force_multibyte correctly.
8828
4c4475a8
GM
8829 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
8830 up of unibyte_to_multibyte_table.
aca7a3d2 8831
73acf815 88322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8833
8834 * coding.c (setup_coding_system): If coding has
8835 post-read-conversion or pre-write-conversion, set
8836 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
8837 respectively.
8838 (decode_coding_gap): Run post-read-conversion if any.
8839
8840 * fileio.c (Finsert_file_contents): Even if we read into a
8841 unibyte buffer, check if we must decode the result or not.
8842
73acf815 88432008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8844
8845 * coding.c (make_conversion_work_buffer): Change the work buffer
8846 name to the same one as that of Emacs 21.
8847
73acf815 88482008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8849
1f45f627 8850 * coding.h (make_conversion_work_buffer): Adjust prototype.
aca7a3d2
MB
8851 (code_conversion_restore): Don't extern it.
8852
8853 * coding.c (detected_mask): Delete unused variable.
8854 (decode_coding_iso_2022): Pay attention to the byte sequence of
8855 CTEXT extended segment, and retain those bytes as is.
8856 (decode_coding_ccl): Delete unused variable `valids'.
8857 (setup_coding_system): Delete unused variable `category'.
8858 (consume_chars): Delete unused variable `category'. Make it work
8859 for non-multibyte case.
1f45f627 8860 (make_conversion_work_buffer): Change argument.
aca7a3d2
MB
8861 (saved_coding): Delete unused variable.
8862 (code_conversion_restore): Don't check saved_coding->destination.
8863 (code_conversion_save): New function.
8864 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
8865 instead of record_unwind_protect.
1f45f627 8866 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
aca7a3d2 8867 (detect_coding_system): Delete unused variable `mask'.
1f45f627 8868 (Fdefine_coding_system_internal): Delete unused vaiable id.
aca7a3d2
MB
8869
8870 * fileio.c (kill_workbuf_unwind): New function.
8871 (Finsert_file_contents): On replacing, call
8872 make_conversion_work_buffer with correct args, and call
8873 record_unwind_protect with the first arg kill_workbuf_unwind.
8874
8875 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
8876
73acf815 88772008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 8878
1f45f627 8879 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
aca7a3d2
MB
8880 (fontset_add): Fix for the case that TO is less than TO1.
8881 (Ffontset_info): Don't use fallback fontset on checking the
8882 default fontset.
8883 (dump_fontset): New function for debugging.
8884
8885 * coding.c (Fdefine_coding_system_internal): Fix for the case that
8886 coding_type is Qcharset.
8887
73acf815 88882008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8889
8890 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
8891 (map_char_table): Don't inherit the value from the parent on
1f45f627 8892 initializing VAL. Adjust for the above change.
aca7a3d2 8893
73acf815 88942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8895
8896 * coding.c (Qsignature, Qendian): Delete these variables.
8897 (syms_of_coding): Don't initialize them.
8898 (CATEGORY_MASK_UTF_16_AUTO): New macro.
8899 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
8900 detect_info->found.
8901 (decode_coding_utf_16): Don't detect BOM here.
8902 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
8903 is NOT utf_16_without_bom.
8904 (setup_coding_system): For a coding system of type utf-16, check
8905 if the attribute :endian is Qbig or not (not nil or not), and set
8906 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
8907 (detect_coding): If coding type is utf-16 and BOM detection is
8908 required, detect it.
8909 (Fdefine_coding_system_internal): For a coding system of type
1f45f627 8910 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
aca7a3d2 8911
73acf815 89122008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8913
8914 * coding.c (coding_set_source): Fix for the case that the current
8915 buffer is different from coding->src_object.
8916 (decode_coding_object): Don't use the conversion work buffer if
8917 DST_OBJECT is a buffer.
8918
73acf815 89192008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8920
8921 * lread.c (read_emacs_mule_char) [len==2]: Index
8922 emacs_mule_charset correctly.
8923
73acf815 89242008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8925
8926 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
8927 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
1f45f627 8928 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
aca7a3d2
MB
8929 treated specially.)
8930 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
8931 (detected_mask): Remove Big5 bits.
8932
73acf815 89332008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8934
8935 The following changes are to make the font rescaling facility
8936 compatible with Emacs 21.
8937
1f45f627 8938 * xfaces.c (Vface_font_rescale_alist): Rename from
aca7a3d2
MB
8939 Vface_resizing_fonts.
8940 (struct font_name): Rename member resizing_ratio to rescale_ratio.
1f45f627 8941 (font_rescale_ratio): Rename from font_resizing_ratio.
aca7a3d2
MB
8942 (split_font_name): Set font->rescale_ratio.
8943 (better_font_p): Pay attention to font->rescale_ratio.
8944 (build_scalable_font_name): Likewise. Change RESX, and RESY
8945 fields.
1f45f627 8946 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
aca7a3d2 8947
73acf815 89482008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8949
8950 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
8951 (Qutf_16_le): Remove these variables.
8952 (syms_of_coding): Don't DEFSYM them.
8953 (decode_coding_utf_16): Fix handling of BOM.
8954 (encode_coding_utf_16): Fix handling of BOM.
8955
73acf815 89562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8957
8958 * fileio.c (Finsert_file_contents): On replacing, before decoding
1f45f627 8959 the file into the work buffer, set point of the work buffer to the end.
aca7a3d2 8960
73acf815 89612008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8962
8963 * coding.c (Fcheck_coding_systems_region): Fix type errors.
8964
73acf815 89652008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
8966
8967 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8968 and fix C types.
8969
73acf815 89702008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8971
8972 * xdisp.c (SKIP_GLYPHS): New macro.
8973 (set_cursor_from_row): Pay attention to string display properties.
8974
8975 * category.c (copy_category_entry): Fix for the case that RANGE
8976 is an integer.
8977
8978 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
8979
1f45f627 8980 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
aca7a3d2 8981
73acf815 89822008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
8983
8984 * charset.c (Fcharset_id_internal): New function.
8985 (syms_of_charset): Defsubr it.
8986
8987 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
8988 with the last arg charset_list acquired from coding.
8989 (Fdefine_coding_system_internal): For ccl-based coding system, fix
8990 the attribute coding_attr_ccl_valids.
8991
8992 * coding.h (enum define_coding_ccl_arg_index): Set the first
8993 member coding_arg_ccl_decoder to coding_arg_max.
8994
1f45f627 8995 * ccl.h (ccl_driver): Adjust prototype.
aca7a3d2
MB
8996
8997 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
8998 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
8999 of DECODE_CAHR, ENCODE_CHAR, CHAR_CHARSET.
4c4475a8
GM
9000 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
9001 last arg Qnil.
aca7a3d2 9002
73acf815 90032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9004
9005 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
9006 call encode_char.
9007
1f45f627 9008 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
aca7a3d2 9009
73acf815 90102008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 9011
1f45f627 9012 * composite.c (syms_of_composite): Make composition_hash_table weak.
aca7a3d2 9013
73acf815 90142008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9015
9016 * dispextern.h (check_face_attributes, generate_ascii_font_name)
9017 (font_name_registry): Don't extern them.
1f45f627 9018 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
aca7a3d2
MB
9019
9020 * fontset.h (Qfontset): Don't extern it.
9021 (new_fontset_from_font_name): Extern it.
9022
9023 * fontset.c: Give 8 extra slots to fontset objects.
9024 (Qfontset_info): New variable.
9025 (syms_of_fontset): Defsym it.
9026 (FONTSET_FALLBACK): New macro.
9027 (fontset_face): Try also the default fontset.
1f45f627
GM
9028 (make_fontset): Realize a fallback fontset from the default fontset.
9029 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
aca7a3d2
MB
9030 using split_font_name_into_vector and build_font_name_from_vector.
9031 (Fset_fontset_font): Access the elements of font_spec by enum
9032 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
9033 name by using split_font_name_into_vector.
9034 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
9035 generate a proper font name from the fontset name. Update
9036 Vfontset_alias_alist.
9037 (n_auto_fontsets): New variable.
9038 (new_fontset_from_font_name): New function.
9039 (Ffont_info): Store the information about fonts generated from the
1f45f627 9040 default fontset in the first extra slot of the returned char-table.
aca7a3d2 9041
1f45f627
GM
9042 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
9043 (font_name_registry): Delete function.
aca7a3d2
MB
9044 (split_font_name_into_vector): New function.
9045 (build_font_name_from_vector): New function.
1f45f627 9046 (font_list): The argument REGISTRY is now a list of registry names.
aca7a3d2
MB
9047 (choose_face_font): If we are choosing an ASCII font, and ATTRS
9048 specifies an explicit font name, return the name as is. Make a
9049 list of registy names.
9050
1f45f627 9051 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
aca7a3d2
MB
9052 of x_new_fontset.
9053 (Fx_create_frame): Don't call x_new_fontset here. Just use
9054 x_list_fonts to check the existence of fonts.
9055
1f45f627 9056 * xterm.h (x_new_fontset): Adjust prototype.
aca7a3d2
MB
9057
9058 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
9059 string. Use new_fontset_from_font_name to create a fontset from a
9060 font name.
9061
1c8658b9
GM
90622008-02-01 Kenichi Handa <handa@m17n.org>
9063
9064 * syntax.c (Vfind_word_boundary_function_table): New name for
9065 Vnext_word_boundary_function_table.
9066 (find-word-boundary-function-table): New name for
9067 next-word-boundary-function-table.
9068
73acf815 90692008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9070
9071 * Makefile.in: Fix some dependencies.
9072
9073 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
9074 set it to nil before returning.
9075
9076 * composite.c (update_compositions): Fix type error.
9077
9078 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
9079
73acf815 90802008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9081
9082 * xterm.c (x_new_font): Optimize for the case that the font is
9083 already set for the frame.
9084
73acf815 90852008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9086
9087 * chartab.c (char_table_ascii): Check if the char table contents
9088 is sub-char-table or not.
4c4475a8
GM
9089 (char_table_set, char_table_set_range): Fix argument to
9090 char_table_ascii.
aca7a3d2
MB
9091
9092 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
9093 (detect_coding_utf_8, detect_coding_utf_16)
9094 (detect_coding_emacs_mule, detect_coding_iso_2022)
9095 (detect_coding_sjis, detect_coding_big5)
9096 (detect_coding_ccl, detect_coding_charset): Change argument MASK
9097 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
1f45f627 9098 sequence is valid in this coding system. Change callers.
aca7a3d2
MB
9099 (MAX_ANNOTATION_LENGTH): New macro.
9100 (ADD_ANNOTATION_DATA): New macro.
1f45f627
GM
9101 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
9102 ADD_ANNOTATION_DATA. Change the format of annotation data.
aca7a3d2 9103 (ADD_CHARSET_DATA): New macro.
1f45f627 9104 (emacs_mule_char): New argument ID. Change callers.
aca7a3d2
MB
9105 (decode_coding_emacs_mule, decode_coding_iso_2022)
9106 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
9107 Produce charset annotation data in coding->charbuf.
9108 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
9109 to charset annotation data in coding->charbuf.
9110 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
9111 coding->common_flags if the coding system is iso-2022 based and
9112 uses designation.
1f45f627 9113 (produce_composition): Adjust for the new annotation data format.
aca7a3d2
MB
9114 (produce_charset): New function.
9115 (produce_annotation): Handle charset annotation.
9116 (handle_composition_annotation, handle_charset_annotation): New
9117 functions.
9118 (consume_chars): Handle charset annotation. Utilize the above two
9119 functions.
9120 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
9121 buffer, get the deleted text as a string and set
9122 coding->src_object to that string.
9123 (detect_coding, detect_coding_system): Use the new struct
9124 coding_detection_info.
9125
9126 * coding.h (struct coding_detection_info): New structure.
1f45f627 9127 (struct coding_system): Adjust prototype of the member `detector'.
aca7a3d2
MB
9128 (CODING_ANNOTATE_CHARSET_MASK): New macro.
9129
73acf815 91302008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9131
9132 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
9133
73acf815 91342008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 9135
1f45f627 9136 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
aca7a3d2
MB
9137 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
9138 to new local and nullify apropos_accumulate before returning.
9139 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
9140
73acf815 91412008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9142
9143 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
9144 correctly.
9145
73acf815 91462008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9147
9148 * fns.c (Flanginfo): Call synchronize_system_time_locale.
9149
73acf815 91502008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9151
9152 The following changes are to make character composition happen
9153 automatically on displaying.
9154
2a2e8de7 9155 * Makefile.in (lisp, shortlisp): Add composite.elc.
aca7a3d2 9156
1f45f627
GM
9157 * composite.h (Qauto_composed, Vauto_composition_function)
9158 (Qauto_composition_function): Extern them.
aca7a3d2 9159
1f45f627
GM
9160 * composite.c (Vcomposition_function_table)
9161 (Qcomposition_function_table): Delete variables.
9162 (Qauto_composed, Vauto_composition_function)
9163 (Qauto_composition_function): New variables.
aca7a3d2
MB
9164 (run_composition_function): Don't call
9165 compose-chars-after-function.
9166 (update_compositions): Clear `auto-composed' text property.
9167 (compose_chars_in_text): Delete this function.
9168 (syms_of_composite): Staticpro Qauto_composed and
9169 Qauto_composition_function. Declare Vauto_composition_function as
9170 a Lisp variable.
9171
9172 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
9173
9174 * xdisp.c (it_props): Add an entry for Qauto_composed.
9175 (handle_auto_composed_prop): New function.
9176
9177 * xselect.c (selection_data_to_lisp_data): Don't call
9178 compose_chars_in_text.
9179
73acf815 91802008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9181
9182 * keyboard.c (read_char): Modify checking around use of
9183 Vkeyboard_translate_table.
9184
9185 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9186 and fix C types.
9187
73acf815 91882008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9189
4c4475a8
GM
9190 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
9191 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
9192 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
aca7a3d2 9193 the case that the last byte is '\r' correctly.
1f45f627
GM
9194 (decode_coding): Flush out the unprocessed data correctly.
9195 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
aca7a3d2 9196
73acf815 91972008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 9198
f245f2c6
JB
9199 * xterm.c (XTread_socket): Fix changes for defined keysyms.
9200 Add XK_ISO... case.
aca7a3d2
MB
9201 (xaw_scroll_callback): Revert last change.
9202
73acf815 92032008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9204
1f45f627 9205 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
aca7a3d2 9206
73acf815 92072008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9208
9209 * xfaces.c (Vface_resizing_fonts): New variable.
9210 (struct font_name): New member `resizing_ratio'.
9211 (font_resizing_ratio): New function.
9212 (split_font_name): Set font->resizing_ratio.
9213 (better_font_p): Pay attention to font->resizing_ratio.
9214 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
9215 RESX, and RESY fields.
9216 (try_alternative_families): Try scalable fonts if
9217 Vscalable_fonts_allowed is not Qt.
9218 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
9219
73acf815 92202008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9221
9222 * xterm.c (xaw_scroll_callback): Cast correctly.
9223
73acf815 92242008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9225
9226 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
9227 (lispy_kana_keys): Comment out.
9228 (make_lispy_event) [XK_kana_A]: Comment out.
9229
9230 * xterm.c (xaw_scroll_callback): Cast call_data.
9231 (XTread_socket): Deal with ASCII keysyms.
9232 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
9233
73acf815 92342008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9235
9236 * xterm.c (Vx_keysym_table): New.
9237 (syms_of_xterm): Initialize it.
9238 (XTread_socket): Use it.
9239 From head: Eliminate incorrect optimization that tried to avoid
9240 decoding the output of X*LookupString.
9241 (x_get_font_repertory): Delete charset declaration.
9242
73acf815 92432008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9244
1f45f627
GM
9245 * coding.c (detect_coding_charset): If only ASCII bytes are found,
9246 return 0.
aca7a3d2
MB
9247 (Fdefine_coding_system_internal): Setup
9248 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
9249
73acf815 92502008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9251
9252 * coding.c (Fcheck_coding_system): Doc fix.
9253
9254 * editfns.c (Finsert_byte): Return a proper value.
9255
73acf815 92562008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9257
9258 * coding.c (decode_coding): Fix args to translate_chars. Pay
9259 attention to Vstandard_translation_table_for_decode.
9260 (encode_coding): Fix args to translate_chars. Pay attention to
9261 Vstandard_translation_table_for_encode.
9262
9263 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
9264 SINGLE_BYTE_CHAR_P.
9265
9266 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
9267 not by SINGLE_BYTE_CHAR_P.
9268
9269 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
9270 SINGLE_BYTE_CHAR_P.
9271
9272 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
9273 SINGLE_BYTE_CHAR_P.
9274
9275 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
9276 by SINGLE_BYTE_CHAR_P.
9277
9278 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
9279 SINGLE_BYTE_CHAR_P.
9280
73acf815 92812008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9282
9283 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
9284
73acf815 92852008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9286
9287 * fns.c (Flanginfo): Fix typo.
9288
9289 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
9290
73acf815 92912008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9292
4c4475a8
GM
9293 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
9294 (detect_coding_emacs_mule, detect_coding_iso_2022)
9295 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
9296 incomplete byte sequence. Don't update *mask when correctly detected.
aca7a3d2 9297 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
1f45f627 9298 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
4c4475a8 9299 (detect_coding, detect_coding_system): Adjust for the changes above.
aca7a3d2 9300
73acf815 93012008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9302
1f45f627
GM
9303 * character.c (char_string): Rename from
9304 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
9305 (string_char): Rename from string_char.
aca7a3d2 9306
4c4475a8
GM
9307 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
9308 if C is greater than MAX_3_BYTE_CHAR.
9309 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
9310 string_char instead of string_char_with_unification.
aca7a3d2 9311
73acf815 93122008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9313
9314 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
9315
73acf815 93162008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9317
1f45f627 9318 * keymap.c (push_key_description): Pay attention to force_multibyte.
aca7a3d2
MB
9319
9320 * regex.c (re_search_2): Fix for the case of unibyte buffer.
9321
73acf815 93222008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9323
9324 * charset.c (define_charset_internal): Rename `supprementary'.
9325
9326 * Makefile.in (lisp, shortlisp): Remove latin-N.
9327
73acf815 93282008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9329
9330 * xfns.c (x_window, x_window): Use use_xim.
9331
9332 * xterm.c (use_xim): Initialize.
9333 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
9334 (x_term_init): Maybe set use_xim.
9335
9336 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
9337
73acf815 93382008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9339
9340 * search.c (search_buffer): Fix case-fold-search of multibyte
9341 characters.
9342 (boyer_moore): Rename the last argument to char_high_bits.
9343
73acf815 93442008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9345
9346 * xdisp.c (display_string): Fix for the case of zero width glyph.
9347
9348 * xfns.c (x_set_font): Change the error message of the case that
9349 x_new_fontset returns Qt.
9350
9351 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
9352 (Finternal_set_lisp_face_attribute): Use signal_error for the
9353 error of invalid fontset.
9354
9355 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
9356 fontset, return Qt.
9357
73acf815 93582008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 9359
aca7a3d2
MB
9360 * unexelf.c (unexec): Make .got handling not SGI-specific.
9361
9362 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
9363
9364 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
9365
9366 * keyboard.c (read_key_sequence): Fix type error.
9367
9368 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
9369 type error.
9370
9371 * fontset.c (fontset_add): Return Lisp_Object.
9372
73acf815 93732008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9374
9375 * charset.h (charset_ordered_list_tick): Declare extern.
9376
73acf815 93772008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9378
73acf815 9379 The following changes (and some of 2008-02-01 changes of mine) are
aca7a3d2
MB
9380 for handling syntax, category, and case conversion for unibyte
9381 characters by converting them to multibyte on the fly. With these
9382 changes, we don't have to setup syntax and case tables for unibyte
9383 characters in each language environment.
9384
9385 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
9386 multibyte if necessary.
9387
9388 * bytecode.c (Fbyte_code): Likewise.
9389
9390 * character.h (LEADING_CODE_LATIN_1_MIN)
9391 (LEADING_CODE_LATIN_1_MAX): New macros.
9392 (unibyte_to_multibyte_table): Extern it.
9393 (unibyte_char_to_multibyte): New macro.
9394 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
9395 (CHAR_LEADING_CODE): New macro.
9396 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
9397
9398 * character.c (unibyte_to_multibyte_table): New variable.
1f45f627 9399 (unibyte_char_to_multibyte): Move to character.h and define as macro.
aca7a3d2
MB
9400 (multibyte_char_to_unibyte): If C is an eight-bit character,
9401 convert it to the corresponding byte value.
9402
9403 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
9404 not 1, singals an error. Update the elements of
9405 unibyte_to_multibyte_table.
9406 (init_charset_once): Initialize unibyte_to_multibyte_table.
9407 (syms_of_charset): Define the charset `iso-8859-1'.
9408
aca7a3d2
MB
9409 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
9410 as is without converting it to unibyte. In a unibyte buffer,
9411 convert C to multibyte before checking the syntax.
9412
1f45f627 9413 * lisp.h (unibyte_char_to_multibyte): Delete extern.
aca7a3d2
MB
9414
9415 * minibuf.c (Fminibuffer_complete_word): Use the macro
9416 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
9417
9418 * regex.h (struct re_pattern_buffer): New member target_multibyte.
9419
9420 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
9421 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
9422 that is zero, convert an eight-bit char to multibyte.
9423 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
9424 non-emacs case.
9425 (PATFETCH): Convert an eight-bit char to multibyte.
9426 (HANDLE_UNIBYTE_RANGE): New macro.
9427 (regex_compile): Setup the compiled pattern for multibyte chars
9428 even if the given regex string is unibyte. Use PATFETCH_RAW
9429 instead of PATFETCH in many places. To handle `charset'
c5ad7a3d 9430 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
aca7a3d2 9431 only for ASCII chars.
1f45f627 9432 (analyse_first) <exactn>: Simplify because the compiled pattern
aca7a3d2
MB
9433 is multibyte.
9434 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
9435 <charset>: Use CHAR_LEADING_CODE to get leading codes.
1f45f627 9436 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
aca7a3d2
MB
9437 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
9438 multibyte always 1.
9439 (re_search_2): In emacs, set the locale variable multibyte to 1,
9440 otherwise to 0. New local variable target_multibyte. Check it
9441 to decide the multibyteness of STR1 and STR2. If
9442 target_multibyte is zero, convert unibyte chars to multibyte
9443 before translating and checking fastmap.
9444 (TARGET_CHAR_AND_LENGTH): New macro.
9445 (re_match_2_internal): In emacs, set the locale variable multibyte
9446 to 1, otherwise to 0. New local variable target_multibyte. Check
9447 it to decide the multibyteness of STR1 and STR2. Use
9448 TARGET_CHAR_AND_LENGTH to fetch a character from D.
9449 <charset, charset_not>: If multibyte is nonzero, check fastmap
c5ad7a3d 9450 only for ASCII chars. Call bcmp_translate with
aca7a3d2
MB
9451 target_multibyte, not with multibyte.
9452 <begline>: Declare the local variable C as `unsigned'.
9453 (bcmp_translate): Change the last arg name to target_multibyte.
9454
9455 * search.c (compile_pattern_1): Don't adjust the multibyteness of
9456 the regexp pattern and the matching target. Set cp->buf.multibyte
9457 to the multibyteness of the regexp pattern. Set
1f45f627 9458 cp->but.target_multibyte to the multibyteness of the matching target.
aca7a3d2
MB
9459 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
9460 FETCH_STRING_CHAR_ADVANCE.
9461 (Freplace_match): Convert unibyte chars to multibyte.
9462
4c4475a8
GM
9463 * syntax.c (char_quoted, back_comment, scan_words)
9464 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
9465 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
aca7a3d2 9466 unibyte chars to multibyte.
1f45f627
GM
9467 (skip_chars): Delete the arg syntaxp, and move the code for
9468 handling syntaxes to skip_syntaxes. Change callers.
aca7a3d2
MB
9469 Fix the case that the multibyteness of STRING and the current
9470 buffer doesn't match.
9471 (skip_syntaxes): New function.
9472 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
9473 SINGLE_BYTE_CHAR_P.
aca7a3d2 9474
73acf815 94752008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9476
9477 * xfaces.c (QCfontset): New variable.
9478 (LFACE_FONTSET): New macro.
9479 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
9480 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
4c4475a8
GM
9481 (Finternal_set_lisp_face_attribute)
9482 (Finternal_get_lisp_face_attribute): Handle QCfontset.
aca7a3d2
MB
9483 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
9484 check also LFACE_FONTSET_INDEX.
9485 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
9486 attrs[LFACE_FONT_INDEX].
9487 (syms_of_xfaces): Intern and staticpro QCfontset.
9488
9489 * dispextern.h (enum lface_attribute_index): New member
9490 LFACE_FONTSET_INDEX.
9491
9492 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
9493
73acf815 94942008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9495
9496 * coding.c (coding_set_destination): Fix coding->destination for
9497 the case converting a region.
9498 (encode_coding_utf_8): Encode eight-bit chars as single byte.
9499 (encode_coding_object): Fix coding->dst_pos and
9500 coding->dst_pos_byte for the case converting a region.
9501
9502 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
9503
9504 * character.h (BYTE8_STRING): New macro.
9505
9506 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
9507
73acf815 95082008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9509
9510 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
9511 characters by octal form.
9512
9513 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9514
1f45f627 9515 * buffer.h (_fetch_multibyte_char_len): Delete extern.
4c4475a8
GM
9516 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
9517 _fetch_multibyte_char_len.
aca7a3d2
MB
9518 (FETCH_CHAR_AS_MULTIBYTE): New macro.
9519
1f45f627 9520 * casetab.c (set_canon, set_identity, shuffle): Simplify.
aca7a3d2 9521
1f45f627 9522 * casefiddle.c (casify_object): Simplify. Handle the case that
aca7a3d2 9523 the case conversion change the byte length.
1f45f627 9524 (casify_region): Likewise.
aca7a3d2 9525
1f45f627 9526 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
aca7a3d2 9527
1f45f627 9528 * character.c (_fetch_multibyte_char_len): Delet this variable.
aca7a3d2
MB
9529 (syms_of_character): Setup Vprintable_chars.
9530
9531 * editfns.c (Fchar_equal): Fix for the unibyte case.
9532 (Finsert_byte): New function.
9533 (syms_of_editfns): Defsubr it.
9534
9535 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
9536 of direct code 0x3ffff.
9537
9538 * search.c (Freplace_match): Fix for the unibyte case.
9539
73acf815 95402008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9541
9542 * lread.c (safe_to_load_p): Fix the logic.
9543
9544 * syntax.c (scan_words): Don't treat characters belonging to
9545 different scripts as constituting a word.
9546
9547 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
9548
1f45f627 9549 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
aca7a3d2
MB
9550
9551 * emacs.c (main): In the case of --unibyte, instead of aborting on
9552 finding non-empty buffer, make it unibyte.
9553
73acf815 95542008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9555
9556 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
9557 to create a fontset.
9558
73acf815 95592008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9560
9561 * character.c (Funibyte_char_to_multibyte): Doc fix.
9562
9563 * xfns.c [HAVE_STDLIB_H]: Fix last change.
9564
73acf815 95652008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9566
9567 * fontset.c (fontset_add): Make the type `int'.
9568 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
9569
4c4475a8
GM
9570 * character.c (unibyte_char_to_multibyte)
9571 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
aca7a3d2 9572 charset_unibyte, not charset_primary.
aca7a3d2 9573
1f45f627 9574 * charset.h (charset_unibyte): Extern it instead of charset_primary.
aca7a3d2 9575
1f45f627
GM
9576 * charset.c (charset_unibyte): Rename from charset_primary.
9577 (Funibyte_charset): Rename from Fprimary_charset.
9578 (Fset_unibyte_charset): Rename from Fset_primary_charset.
9579 (syms_of_charset): Adjust for the above changes.
aca7a3d2
MB
9580
9581 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
9582 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
9583 it->multibyte_p is zero.
9584
9585 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
1f45f627 9586 Delete extern.
aca7a3d2 9587
73acf815 95882008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9589
9590 * coding.c (Fdefine_coding_system_internal): Fix category setting
9591 for a coding system of type iso-2022.
9592
73acf815 95932008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 9594
1f45f627 9595 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
aca7a3d2 9596
73acf815 95972008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9598
9599 * syntax.c (Vnext_word_boundary_function_table): New variable.
1c8658b9
GM
9600 (next-word-boundary-function-table): Declare it as a Lisp variable
9601 in syms_of_syntax.
aca7a3d2
MB
9602 (scan_words): Call functions in Vnext_word_boundary_function_table
9603 if any.
9604
9605 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
9606
9607 * fontset.c (fs_load_font): If fontp->charset is not negative,
9608 return fontp without setting its members.
9609
73acf815 96102008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 9611
aca7a3d2
MB
9612 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
9613
9614 * m/sparc.h (HAVE_ALLOCA): Delete.
9615
9616 * s/irix6-5.h: Don't include strings.h.
9617 (bcopy, bzero, bcmp): Don't undef.
9618
9619 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
9620
9621 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
9622 (TIOCSIGSEND): Don't test IRIX6.
9623 (bcopy, bzero, bcmp): Define conditionally.
9624
73acf815 96252008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9626
9627 * buffer.c (Qas, Qmake, Qto): New variables.
1f45f627 9628 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
aca7a3d2
MB
9629 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
9630
9631 * callproc.c (Fcall_process): Don't call insert_1_both directly if
9632 we are inserting a process output into a multibyte buffer.
9633
9634 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
9635 multibyte_char_to_unibyte.
9636
9637 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
9638 by the primary charset, make it eight-bit char.
9639 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
9640
1f45f627
GM
9641 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
9642 (charset_8_bit__control, charset_8_bit_graphic)
9643 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
aca7a3d2
MB
9644 (define_charset_internal): New function.
9645 (syms_of_charset): Call define_charset_internal for pre-defined
9646 charsets.
9647
9648 * charset.h (charset_8_bit): Extern it.
9649
1f45f627 9650 * coding.c (make_conversion_work_buffer): Adjust for the change
aca7a3d2
MB
9651 of Fset_buffer_multibyte.
9652 (encode_coding_raw_text): Increment p0 in the loop.
9653
1f45f627 9654 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
aca7a3d2 9655
1f45f627 9656 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
aca7a3d2
MB
9657 for the change of Fset_buffer_multibyte.
9658
9659 * fns.c (Fstring_to_multibyte): New function.
9660 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
9661
73acf815 96622008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9663
9664 * xfns.c (x_put_x_image): Declare args.
9665
1f45f627 9666 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
aca7a3d2
MB
9667 (try_font_list): Declare an arg.
9668
9669 * xdisp.c (message2_nolog, set_message): Declare an arg.
9670
9671 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
9672
9673 * syntax.c (scan_sexps_forward): Declare an arg.
9674
9675 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9676 Declare an arg.
9677
9678 * lisp.h (Fnew_fontset): Declare.
9679
9680 * keymap.c (push_key_description): Call CHARACTERP correctly.
9681
1f45f627 9682 * fontset.c (fontset_add): Declare args. Call make_number correctly.
aca7a3d2
MB
9683 (face_for_char): Delete unused vars.
9684 (Fset_fontset_font): Doc fix. Delete unused vars.
9685
9686 * doc.c (Fsubstitute_command_keys): Delete unused vars.
9687
9688 * composite.c (update_compositions): Declare arg.
9689
9690 * cm.c (calccost, cmgoto): Declare args.
9691
9692 * charset.c: Remove `emacs' conditional. Doc fixes.
9693 (map_char_table_for_charset): Declare.
9694
1f45f627 9695 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
aca7a3d2 9696
1f45f627 9697 * ccl.c: Remove `emacs' conditional.
aca7a3d2 9698
73acf815 96992008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9700
9701 The following changes are to allow specifying multiple font
9702 patterns for a character range (specified by script or charset).
9703
9704 * Makefile.in (abbrev.o): Depend on syntax.h.
9705 (xfaces.o): Depend on charset.h.
9706
9707 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
9708 SINGLE_BYTE_CHAR_P.
9709
9710 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
9711
9712 * character.h (Vchar_script_table): Extern it.
9713
1f45f627 9714 * character.c (Vscript_alist): Delete.
aca7a3d2
MB
9715 (Vchar_script_table, Qchar_script_table): New variable.
9716 (syms_of_character): Declare Vchar_script_table as a lisp variable
9717 and initialize it.
9718
1f45f627 9719 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
aca7a3d2
MB
9720 have property char-table-extra-slots, make no extra slot.
9721
1f45f627 9722 * dispextern.h (struct face): Delete member `charset'.
4c4475a8
GM
9723 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
9724 SINGLE_BYTE_CHAR_P.
1f45f627
GM
9725 (choose_face_font, lookup_non_ascii_face, font_name_registry):
9726 Add prototypes.
9727 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
9728 (generate_ascii_font_name): Rename from generate_ascii_font.
aca7a3d2
MB
9729
9730 * fontset.h (get_font_repertory_func): New prototype.
1f45f627 9731 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
aca7a3d2
MB
9732 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
9733
9734 * fontset.c (Qprepend, Qappend): New variables.
1f45f627 9735 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
aca7a3d2
MB
9736 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
9737 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
9738 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
9739 (fontset_ref_and_range, fontset_add, reorder_font_vector)
9740 (load_font_get_repertory): New functions.
1f45f627 9741 (fontset_set): Delete.
aca7a3d2 9742 (fontset_face): New arg FACE. Return face ID, not face.
1f45f627 9743 Complete re-write to handle new fontset structure. Change caller.
aca7a3d2
MB
9744 (free_face_fontset): Use ASET istead of AREF (X) = Y.
9745 (face_for_char): Don't call lookup_face.
9746 (make_fontset_for_ascii_face): New arg FACE.
9747 (fs_load_font): New arg CHARSET_ID. Don't check
9748 Vfont_encoding_alist here.
9749 (find_font_encoding): New function.
9750 (list_fontsets): Use STRINGP, not ! NILP.
9751 (accumulate_script_ranges): New function.
9752 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
9753 re-written to handle new fontset structure.
9754 (Ffontset_font): Return a copy of element.
9755 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
9756 docstring of font-encoding-alist.
9757
9758 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
9759 (Fset_fotset_font): Fix arguments to 5.
9760
1f45f627 9761 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
aca7a3d2
MB
9762
9763 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
9764 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
1f45f627 9765 (highlight_trailing_whitespace): Adjust for the change of
aca7a3d2
MB
9766 lookup_named_face.
9767
9768 * xfaces.c: Include charset.h.
1f45f627
GM
9769 (load_face_font): Delete argument C. Change caller.
9770 (generate_ascii_font_name): Rename from generate_ascii_font.
aca7a3d2
MB
9771 (font_name_registry): New function.
9772 (cache_face): Store ascii faces before non-ascii faces in buckets.
1f45f627 9773 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
aca7a3d2
MB
9774 Lookup only ascii faces.
9775 (lookup_non_ascii_face): New function.
1f45f627
GM
9776 (lookup_named_face): Delete argument C. Change caller.
9777 (lookup_derived_face): Delete argument C. Change caller.
9778 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
aca7a3d2 9779 a string, just call font_list with it.
1f45f627
GM
9780 (choose_face_font): Delete arguments FACE and C. New arg
9781 FONT_SPEC. Change caller.
4c4475a8
GM
9782 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
9783 Change caller.
aca7a3d2
MB
9784 (realize_non_ascii_face): New function.
9785 (realize_x_face): Call load_face_font here.
1f45f627 9786 (realize_tty_face): Delete argument C. Change caller.
aca7a3d2
MB
9787 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
9788 get a face ID.
9789 (dump_realized_face): Don't print charset of FACE.
9790
9791 * xfns.c (x_set_font): Always call x_new_fontset and
9792 store_frame_parameter.
9793 (Fx_create_frame): Call x_new_fontset, not x_new_font.
1f45f627 9794 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
aca7a3d2
MB
9795
9796 * xterm.h (x_get_font_repertory): Extern it.
9797
9798 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
9799 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
9800 it->multibyte_p is zero.
9801 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
9802 (x_new_fontset): If FONTSETNAME doesn't match any existing
9803 fontsets, create a new one.
9804 (x_get_font_repertory): New function.
9805
73acf815 98062008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9807
9808 * coding.c (Ffind_coding_systems_region_internal): Detect an
9809 ASCII only string correctly.
9810
9811 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
9812 version is 0.
9813
73acf815 98142008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9815
9816 * lread.c: Include "coding.h".
1f45f627
GM
9817 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
9818 (load_each_byte, unread_char): New variables.
9819 (readchar_backlog): Delete.
aca7a3d2
MB
9820 (readchar): Return a character unless load_each_byte is nonzero.
9821 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
9822 cons. If unread_char is not -1, simply return it.
9823 (unreadchar): Handle the case that readcharfun is
1f45f627
GM
9824 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
9825 (read_multibyte): Delete.
aca7a3d2
MB
9826 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
9827 (read_emacs_mule_char): New functions.
9828 (Fload): Even if the file doesn't have the extention ".elc", if
9829 safe_to_load_p returns a positive version number, assume that the
9830 file contains bytecompiled code. If the version is less than 22,
9831 load the file while decoding multibyte sequences by emacs-mule.
9832 (readevalloop): Don't use readchar_backlog.
1f45f627
GM
9833 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
9834 (Fread_from_string): Pay attention to the case that STREAM is a cons.
9835 (read_escape): Delete the arg BYTEREP.
aca7a3d2
MB
9836 (read1): Set load_each_byte to 1 temporarily while handling
9837 #@NUMBER. Don't call read_multibyte.
9838 (read_vector): Call Fread with a cons. If readcharfun is
9839 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
1f45f627 9840 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
aca7a3d2
MB
9841 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
9842 and Qload_force_doc_strings.
9843
73acf815 98442008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9845
9846 * xdisp.c (face_before_or_after_it_pos): Call
9847 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9848
73acf815 98492008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9850
9851 * character.h (TRAILING_CODE_P): New macro.
1f45f627 9852 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
aca7a3d2
MB
9853 (string_char_with_unification): Fix prototype.
9854 (Vscript_alist): Extern it.
9855
9856 * character.c (Vscript_alist): New variable.
4c4475a8
GM
9857 (string_char_with_unification, str_as_unibyte)
9858 (string_escape_byte8): Add `const' to local variables.
aca7a3d2
MB
9859 (syms_of_character): Declare script-alist as a Lisp variable.
9860
9861 * charset.h (Vcharset_ordered_list): Extern it.
9862 (charset_ordered_list_tick): Extern it.
9863 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
9864 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
9865 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
1f204af3 9866 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
1f45f627 9867 (Funify_charset): Adjust for the change of Funify_charset.
aca7a3d2
MB
9868
9869 * charset.c (charset_ordered_list_tick): New variable.
9870 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
9871 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
9872 deunify intead of unify a charset.
9873 (string_xstring_p): Add `const' to local variables.
1f45f627
GM
9874 (find_charsets_in_text): Add `const' to arguemnts and local variables.
9875 (encode_char): Adjust for the change of Funify_charset. Fix
aca7a3d2
MB
9876 detecting of invalid code.
9877 (Fset_charset_priority): Increment charset_ordered_list_tick.
9878 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
9879 and TO_CODE.
9880
9881 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
1f45f627
GM
9882 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
9883 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
4c4475a8
GM
9884 (decode_coding_ccl, consume_chars)
9885 (Ffind_coding_systems_region_internal)
9886 (Fcheck_coding_systems_region): Add `const' to local variables.
aca7a3d2
MB
9887
9888 * print.c (print_object): Use octal form for printing the
9889 contents of a bool vector.
9890
73acf815 98912008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9892
9893 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
9894 <version == 20>: Refuse to load.
9895
73acf815 98962008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9897
9898 * fns.c: Move coding.h.
9899 (Qcodeset, Qdays, Qmonths): New.
9900 (concat): Use CHARACTERP instead of INTERGERP.
1f45f627 9901 (Flocale_codeset): Delete.
aca7a3d2 9902 (Flanginfo): New function.
1f45f627 9903 (syms_of_fns): Change accordingly.
aca7a3d2
MB
9904
9905 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
9906
73acf815 99072008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9908
9909 * casetab.c (init_casetab_once, init_casetab_once): Fix
9910 CHAR_TABLE_SET call.
9911
9912 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
9913
9914 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
9915
9916 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
9917 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
9918 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
9919
9920 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
9921
9922 * coding.c (ENCODE_DESIGNATION, decode_eol)
9923 (make_conversion_work_buffer, code_conversion_restore)
9924 (Fdefine_coding_system_internal): Convert Lisp types.
9925 (code_conversion_restore): Use EQ, not ==.
9926 (Fencode_coding_string): Fix code_convert_string call.
9927
9928 * coding.h (code_convert_region): Fix prototype.
9929
1f45f627 9930 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
aca7a3d2
MB
9931
9932 * fontset.c (fontset_ref, fontset_set, fs_load_font)
9933 (Ffontset_info): Convert Lisp types.
9934
9935 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
9936
9937 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
9938
9939 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
9940
9941 * chartab.c: Include "...h", not <...h> in some cases.
9942
9943 * callproc.c (Fcall_process): Remove unused variables.
9944
73acf815 99452008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9946
9947 * coding.c (Fset_coding_system_priority): Allow null arg list.
9948
73acf815 99492008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9950
9951 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
9952 (Fself_insert_and_exit): Use CHARACTERP.
9953
9954 * callproc.c (Fcall_process): Remove unused vars.
9955
9956 * xterm.c (XTread_socket): Add extra dead keysyms.
9957
9958 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
9959
9960 * dispextern.h: Remove prototypes for redraw_frame,
9961 redraw_garbaged_frames.
9962
9963 * cmds.c (Fself_insert_command): Use CHARACTERP.
9964
9965 * chartab.c (make_sub_char_table): Remove unused var.
9966 (Fset_char_table_default, Fmap_char_table): Doc fix.
9967
9968 * keymap.c (access_keymap): Remove generic char code.
9969 (push_key_description): Use CHARACTERP.
9970
73acf815 99712008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9972
9973 * charset.c: Doc fixes.
9974 (Funify_charset): Extra checking.
9975
73acf815 99762008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
9977
9978 * lread.c: Remove some unused variables.
9979 (safe_to_load_p): If safe, return the magic number version byte.
9980 (Fload): Maybe use load-with-code-conversion.
9981
73acf815 99822008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
9983
9984 * category.c (Fmodify_category_entry): Don't modify the contents
9985 of category_set for characters out of the range. Avoid
9986 unnecessary modification.
9987
1f45f627 9988 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
aca7a3d2
MB
9989 Vchar_unify_table. The default value of the table is now nil.
9990
9991 * character.c (syms_of_character): Setup Vchar_width_table for
9992 eight-bit-control and raw-byte chars.
9993
9994 * charset.h (enum define_charset_arg_index): Delete
9995 charset_arg_parents and add charset_arg_subset and
9996 charset_arg_superset.
9997 (enum charset_attr_index): Delete charset_parents and add
9998 charset_subset and charset_superset.
9999 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
10000 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
1f45f627 10001 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
aca7a3d2
MB
10002 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
10003 (CHARSET_SUPERSET): New macros.
10004 (charset_work): Extern it.
10005 (ENCODE_CHAR): Use charset_work.
1f45f627 10006 (CHAR_CHARSET_P): Adjust for the change of encoder format.
aca7a3d2
MB
10007 (map_charset_chars): Extern it.
10008
10009 * charset.c (load_charset_map): Set the default value of encoder
10010 and deunifier char-tables to nil.
1f45f627 10011 (map_charset_chars): Change argument. Change callers. Use
aca7a3d2
MB
10012 map_char_table_for_charset instead of map_char_table.
10013 (Fmap_charset_chars): New optional args from_code and to_code.
1f45f627 10014 (Fdefine_charset_internal): Adjust for the change of
aca7a3d2
MB
10015 `define-charset' (:parents -> :subset or :superset).
10016 (charset_work): New variable.
4c4475a8
GM
10017 (encode_char, syms_of_charset): Adjust for the change of
10018 Fdefine_charset_internal.
aca7a3d2
MB
10019 (Ffind_charset_string): Setup the vector `charsets' correctly.
10020
1f45f627 10021 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
aca7a3d2 10022 the previous change.
1f45f627 10023 (char_table_ref_and_range): Adjust for the above change.
aca7a3d2
MB
10024 (map_sub_char_table_for_charset): New function.
10025 (map_char_table_for_charset): New function.
10026
10027 * keymap.c (describe_vector): Handle a char-table directly here.
1f45f627 10028 (describe_char_table): Delete.
aca7a3d2 10029
1f45f627 10030 * lisp.h (map_charset_chars): Delete.
aca7a3d2 10031
73acf815 100322008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10033
10034 * fns.c (count_combining): Comment out (unused).
10035 (Flocale_codeset): New.
10036 (syms_of_fns): Defsubr it.
10037
10038 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
1f45f627 10039 (size_t): Remove.
aca7a3d2 10040
73acf815 100412008-02-01 Dave Love <fx@gnu.org>
aca7a3d2 10042
6f69e89b 10043 * Makefile.in (chartab.o): Depend on charset.h.
aca7a3d2 10044
73acf815 100452008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10046
10047 * character.c (syms_of_character): Set the default value of
10048 Vprintable_chars to Qnil.
10049
73acf815 100502008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10051
10052 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
10053
73acf815 100542008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10055
10056 * charset.c (load_charset_map): Handle the case that from < to
10057 correctly.
10058
4c4475a8
GM
10059 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
10060 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
10061 Pay attention to raw-8-bit chars.
aca7a3d2 10062
73acf815 100632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 10064
4c4475a8
GM
10065 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
10066 It is not bytecompiled now.
aca7a3d2
MB
10067
10068 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
10069 (charset_jisx0208): New variables.
10070 (Fdefine_charset_internal): Setup them if appropriate.
10071 (init_charset_once): Initialize them to -1.
10072
1f45f627
GM
10073 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
10074 (charset_jisx0208): Extern them.
aca7a3d2 10075
1f204af3 10076 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
aca7a3d2 10077 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
1f45f627
GM
10078 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
10079 (setup_iso_safe_charsets): Fix arguments to Fassq.
4c4475a8
GM
10080 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
10081 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
10082 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
aca7a3d2
MB
10083 (encode_coding_iso_2022): Change the 1st arg to
10084 ENCODE_ISO_CHARACTER to a variable.
10085
73acf815 100862008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10087
10088 * charset.h (enum define_charset_arg_index): New enums
10089 charset_arg_min_code and charset_arg_max_code.
10090 (struct charset): New member char_index_offset.
10091
4c4475a8
GM
10092 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
10093 Take charset->char_index_offset into account.
aca7a3d2
MB
10094 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
10095 args[charset_arg_max_code]. Setup charset.char_index_offset.
10096 (syms_of_charset): Fix args to Fdefine_charset_internal.
10097
73acf815 100982008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10099
10100 * coding.c (decode_coding_utf_8): Reject overlong sequences.
10101
73acf815 101022008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10103
10104 * coding.c: Doc fixes.
10105 (Fcoding_system_aliases): Fix return value.
10106 (Qmac): Remove (duplicated) definition.
10107
73acf815 101082008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10109
10110 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
10111 functions.
10112
10113 * character.c (Fstring): Doc fix.
10114
10115 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
10116
10117 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
10118 ids.
10119 (font-encoding-alist): Doc fix.
10120
73acf815 101212008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10122
10123 * term.c (costs_set): Declare static, non-initialized for pcc.
1f45f627 10124 (encode_terminal_code): Remove unused var.
aca7a3d2
MB
10125
10126 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10127 for K&R.
10128
10129 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
10130
10131 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
1f45f627 10132 (suffixes): Move out of make_subsidiaries for K&R.
aca7a3d2 10133
1f45f627 10134 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
aca7a3d2
MB
10135
10136 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
10137
73acf815 101382008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10139
10140 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
10141
1f45f627 10142 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
aca7a3d2 10143
2a2e8de7 101442008-02-01 Yong Lu <lyongu@asia-infonet.com>
aca7a3d2
MB
10145
10146 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
10147
1f45f627 10148 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
aca7a3d2 10149
73acf815 101502008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 10151
4c4475a8 10152 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
aca7a3d2 10153 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
aca7a3d2 10154
73acf815 101552008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 10156
1f45f627 10157 * coding.c (decode_coding_charset): Adjust for the change of
aca7a3d2
MB
10158 Fdefine_coding_system_internal.
10159 (Fdefine_coding_system_internal): For a coding system of
10160 `charset' type, store a list of charset IDs in
10161 `charset_attr_charset_valids' element of coding attributes.
10162
73acf815 101632008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10164
10165 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
1f45f627
GM
10166 (emacs_mule_char): New arg src. Delete arg `composition'. Change
10167 caller. Handle 2-byte and 3-byte charsets correctly.
10168 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
10169 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
aca7a3d2
MB
10170 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
10171 (DECODE_EMACS_MULE_21_COMPOSITION): Call
10172 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
10173 sequence.
10174 (decode_coding_emacs_mule): Handle composition correctly. Rewind
1f45f627 10175 `src' and `consumed_chars' correctly before calling emacs_mule_char.
aca7a3d2
MB
10176 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
10177 and alt&rule composition.
10178 (decode_coding_iso_2022): Handle composition correctly.
10179 (init_coding_once): Setup emacs_mule_bytes for private charsets.
10180
10181 * charset.c (Fdefine_charset_internal): Fix bug for the case of
10182 re-defining a charset. If the charset has :emacs-mule-id, setup
10183 emacs_mule_bytes.
1f45f627 10184 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
aca7a3d2 10185
73acf815 101862008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2 10187
4c4475a8
GM
10188 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
10189 (encode_coding_big5, encode_coding_charset): If coding requires safe
aca7a3d2
MB
10190 encoding, produce a character specified by
10191 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
aca7a3d2 10192
73acf815 101932008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10194
10195 * xterm.c (XSetIMValues): Declare.
10196
10197 * process.c: Conditionally include sys/wait.h, pty.h.
10198
1f45f627 10199 * print.c (print_object): Fix print format for 64-bit systems.
aca7a3d2 10200
1f45f627 10201 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
aca7a3d2
MB
10202
10203 * buffer.c (emacs_strerror): Declare.
aca7a3d2
MB
10204
10205 * fontset.c (Fclear_face_cache): Declare.
1f45f627 10206 (accumulate_font_info): Comment-out (unused).
aca7a3d2
MB
10207 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
10208 variables.
10209
10210 * character.h (string_escape_byte8): Declare.
10211
10212 * charset.c (load_charset_map, load_charset_map_from_file): Remove
10213 unused vars.
10214 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
10215 (Fmap_charset_chars): Doc fix.
10216
1f45f627 10217 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
aca7a3d2
MB
10218 (Fset_coding_system_priority, Fset_coding_system_priority)
10219 (Fdefine_coding_system_internal): Doc fix.
10220
73acf815 102212008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10222
10223 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
10224
73acf815 102252008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10226
10227 * character.c (string_escape_byte8): Make multibyte string with
10228 correct size.
10229
10230 * charset.c (Fmake_char): Delete unnecessary code.
10231
73acf815 102322008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10233
10234 * xfns.c (x_encode_text): Allocate coding.destination here, and
10235 call encode_coding_object with dst_object Qnil.
10236
10237 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
10238 multibyte form correctly.
10239
10240 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
10241 against Vfont_encoding_alist.
10242
10243 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
10244 handling of charset list.
10245 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
10246 (decode_coding_object): Move point to coding->dst_pos before
10247 calling post-read-conversion function.
10248 (encode_coding_object): Give correct arguments to
10249 pre-write-conversion. Ignore the return value of
10250 pre-write-conversion function. Pay attention to the case that
10251 pre-write-conversion changes the current buffer. If dst_object is
10252 Qt, even if coding->src_bytes is zero, allocate at least one byte
10253 to coding->destination.
10254
10255 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
10256
10257 * charset.c (Fmake_char): Make it more backward compatible.
10258 (Fmap_charset_chars): Fix docstring.
10259
73acf815 102602008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10261
10262 * coding.c: Doc fixes.
10263 (Fdefine_coding_system_alias): Use names, not symbols, in
10264 coding-system-alist.
10265
73acf815 102662008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10267
10268 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
10269 of calling free_realized_face.
10270
2a2e8de7 102712008-02-01 Yong Lu <lyongu@asia-infonet.com>
aca7a3d2 10272
1f45f627
GM
10273 * charset.c (read_hex): Don't treat SPC as a comment starter.
10274 (decode_char): If CODE_POINT_TO_INDEX retruns -1, always return -1.
aca7a3d2
MB
10275 (Fdecode_char): Fix typo.
10276
73acf815 102772008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10278
10279 * charset.h (struct charset): New member `code_space_mask'.
10280
1f45f627 10281 * coding.c (coding_set_source): Delete the local variable beg_byte.
4c4475a8
GM
10282 (encode_coding_charset, Fdefine_coding_system_internal):
10283 Delete the local variable charset.
aca7a3d2
MB
10284 (Fdefine_coding_system_internal): Setup
10285 attrs[coding_attr_charset_valids] correctly.
10286
10287 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
10288 member to check if CODE is valid or not.
10289 (Fdefine_charset_internal): Initialize `code_space_mask' member.
10290 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
10291 is within the range of charset->min_code and carset->max_code.
10292
73acf815 102932008-02-01 Dave Love <fx@gnu.org>
aca7a3d2
MB
10294
10295 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
10296
10297 * dispextern.h (generate_ascii_font): Fix return type.
10298
10299 * xfaces.c (generate_ascii_font): Fix arg declaration.
10300
10301 * coding.c (coding_inherit_eol_type)
10302 (Fset_terminal_coding_system_internal)
10303 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
10304
73acf815 103052008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10306
10307 * coding.c (decode_coding_charset, encode_coding_charset): Handle
10308 multiple charsets correctly.
10309
73acf815 103102008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10311
10312 * search.c (boyer_moore): Fix handling of mulitbyte character
10313 translation.
10314
10315 * xdisp.c (display_mode_element): When the variable `elt' is
10316 changed, update `this' and `lisp_string'.
10317
73acf815 103182008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10319
10320 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
10321
10322 * callproc.c (Fcall_process): Be sure to give the current buffer
1f45f627 10323 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
aca7a3d2
MB
10324
10325 * charset.c (struct charset_map_entries): New struct.
1f45f627
GM
10326 (load_charset_map): Rename from parse_charset_map. New args
10327 entries and n_entries. Change caller.
10328 (load_charset_map_from_file): Rename from load_charset_map.
10329 Change caller. New arg control_flag. Call load_charset_map at
aca7a3d2
MB
10330 the tail.
10331 (load_charset_map_from_vector): New function.
10332 (Fdefine_charset_internal): Setup charset.compact_codes_p.
10333 (encode_char): If the charset is compact, change a character index
10334 to a code point.
10335
10336 * coding.c (coding_alloc_by_making_gap): Check the case that the
10337 source and destination are the same correctly.
10338 (decode_coding_raw_text): Set coding->consumed_char and
10339 coding->consumed to 0.
10340 (produce_chars): If coding->chars_at_source is nonzero, update
10341 coding->consumed_char and coding->consumed before calling
10342 alloc_destination.
10343 (Fdefine_coding_system_alias): Register ALIAS in
10344 Vcoding_system_alist.
10345 (syms_of_coding): Define `no-convesion' coding system at the tail.
10346
10347 * fileio.c (Finsert_file_contents): Set coding_system instead of
10348 val. If the current buffer is multibyte, always call
10349 decode_coding_gap.
10350
10351 * xfaces.c (try_font_list): Give higher priority to fontset's
10352 family than face's family.
10353
73acf815 103542008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10355
10356 * callproc.c (Fcall_process): Be sure to give the current buffer
10357 to decode_coding_c_string.
10358
10359 * xfaces.c (try_font_list): Give a family specified in a fontset
10360 higher priority than a family specified in a face.
10361
73acf815 103622008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10363
10364 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
10365 Fix arguments to insert_from_buffer.
10366
10367 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
10368
73acf815 103692008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10370
10371 * coding.c (produce_chars): Set the variable `multibytep' correctly.
10372 (decode_coding_gap): Set coding->dst_multibyte correctly.
10373
73acf815 103742008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10375
10376 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
1f45f627 10377 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
aca7a3d2
MB
10378 (encode_coding_utf_16): Substitute coding->default_char for
10379 non-Unicode characters.
10380 (decode_coding): Don't call record_insert here.
10381 (setup_coding_system): Initialize `surrogate' of
10382 coding->spec.utf_16 to 0.
10383 (EMIT_ONE_BYTE): Fix for multibyte case.
10384
10385 * insdel.c (insert_from_gap): Call record_insert.
10386
73acf815 103872008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10388
10389 * casefiddle.c (casify_region): Fix multibyte case.
10390
10391 * character.c (c_string_width): Add return type `int'.
1f45f627 10392 (char_string_with_unification): Delete arg ADVANCED.
aca7a3d2
MB
10393
10394 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
1f45f627 10395 (CHAR_STRING): Adjust for the change of char_string_with_unification.
aca7a3d2
MB
10396 (CHAR_STRING_ADVANCE): Make it do-while statement.
10397
1f45f627 10398 * chartab.c (sub_char_table_set_range): Optimize for the case
aca7a3d2
MB
10399 DEPTH == 3. Add workaround code for a GCC optimization bug.
10400
10401 * charset.c (parse_charset_map): Remove an unused variable.
10402
10403 * coding.c: Delete unused variables.
10404
10405 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
10406 earlier. If inserted is zero and the coding system doesn't
10407 require flushing, don't call decode_coding_gap.
10408
10409 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
10410
73acf815 104112008-02-01 Kenichi Handa <handa@m17n.org>
aca7a3d2
MB
10412
10413 The following changes are for using Unicode as an internal
10414 character model, and use UTF-8 format for buffer/string
10415 representation.
10416
1f45f627 10417 * .gdbinit (xchartable): Adjust for the change of char table structure.
aca7a3d2
MB
10418 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
10419
10420 * Makefile.in (obj): Add character.o and chartab.o.
c3f9fba8 10421 (lisp, shortlisp): Remove utf-8.elc.
aca7a3d2
MB
10422 (*.o): For many files, change dependency on charset.h to
10423 character.h, and add dependency on character.h.
10424 (character.o, chartab.o): New targets.
10425
1f45f627
GM
10426 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
10427 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
10428 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
aca7a3d2
MB
10429 of "charset.h".
10430
10431 * dired.c, filelock.c: Include "character.h".
10432
10433 * alloc.c: Include "character.h" instead of "charset.h".
4c4475a8 10434 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
aca7a3d2
MB
10435 (syms_of_alloc): Remove defsubr for Smake_char_table.
10436
10437 * buffer.c: Include "character.h" instead of "charset.h", don't
10438 include "coding.h".
1f45f627 10439 (Fset_buffer_multibyte): Adjust for UTF-8.
aca7a3d2
MB
10440
10441 * buffer.h: EXFUN Fbuffer_live_p.
10442
10443 * callproc.c: Include "character.h" instead of "charset.h".
10444 (Fcall_process): Big change for the new code-conversion APIs.
10445
10446 * casetab.c: Include "character.h" instead of "charset.h".
1f45f627 10447 (set_canon, set_identity, shuffle): Adjust for the new
aca7a3d2
MB
10448 map_char_table spec.
10449 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
10450 accessing the char table structure.
10451
10452 * chartab.c: New file that implements char table.
10453
10454 * category.c: Include "character.h".
10455 (copy_category_entry): New function.
10456 (copy_category_table): Call map_char_table and copy_category_entry.
10457 (Fmake_category_table): Initialize all top-vel slots.
10458 (char_category_set): New function.
1f45f627 10459 (modify_lower_category_set): Delete.
aca7a3d2
MB
10460 (Fmodify_category_entry): Call char_table_ref_and_range.
10461
10462 * category.h (CATEGORY_SET): Just call char_category_set.
10463
10464 * ccl.c: Include "character.h".
10465 (Qccl, Qcclp): New variables.
10466 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
10467 it's less than 256.
1f45f627
GM
10468 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
10469 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
aca7a3d2 10470 and DST type.
1f45f627
GM
10471 (ccl_driver): Change types of argument, adjust code accordingly.
10472 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
aca7a3d2
MB
10473 ccl_driver.
10474 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
10475
1f45f627
GM
10476 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
10477 New members src_multibyte, dst_multibyte, consumed, and produced.
10478 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
aca7a3d2 10479 (CODING_SPEC_CCL_PROGRAM): New macro.
1f45f627 10480 (ccl_driver): Update prototype.
aca7a3d2
MB
10481 (Qccl, Qcclp, Fccl_program_p): Extern them.
10482 (CHECK_CCL_PROGRAM): New macro.
10483
10484 * character.c, character.h, chartab.c: New files.
10485
1f45f627
GM
10486 * charset.c: Mostly re-written. Move character and multibyte sequence
10487 handling codes to character.c.
aca7a3d2 10488
1f45f627
GM
10489 * charset.h: Mostly re-written. Move character and multibyte sequence
10490 handling codes to character.h.
aca7a3d2
MB
10491
10492 * coding.c, coding.h: Mostly re-written.
10493
10494 * composite.c: Include "character.h" instead of "charset.h".
1f45f627
GM
10495 (CHAR_WIDTH): Move to character.h.
10496 (HASH_KEY, HASH_VALUE): Delete.
aca7a3d2 10497
1f45f627
GM
10498 * composite.h (enum composition_method): Change order of enumeration
10499 symbols.
aca7a3d2
MB
10500
10501 * data.c: Include "character.h" instead of "charset.h".
10502 (Faref): Call CHAR_TABLE_REF for a char table.
10503 (Faset): Call CHAR_TABLE_SET for a char table.
10504
1f45f627
GM
10505 * dispextern.h (free_realized_face, check_face_attribytes)
10506 (generate_ascii_font): Extern them.
10507 (free_realized_multibyte_face): Delete extern.
aca7a3d2 10508
1f45f627 10509 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
aca7a3d2
MB
10510 table structure.
10511
10512 * editfns.c: Include "character.h" instead of "charset.h".
10513 (Fchar_to_string): Always call CHAR_STRING.
10514
10515 * emacs.c (main): Call init_charset_once, init_charset,
10516 syms_of_chartab, and syms_of_character.
10517
10518 * fileio.c: Include "character.h" instead of "charset.h".
1f45f627 10519 (Finsert_file_contents): Big change for the new code-conversion API.
4c4475a8 10520 (choose_write_coding_system, Fwrite_region): Likewise.
1f45f627 10521 (build_annotations_2): Delete.
aca7a3d2
MB
10522 (e_write): Big change for the new code-conversion API.
10523
10524 * fns.c: Include "character.h" instead of "charset.h".
1f45f627 10525 (copy_sub_char_table): Move to chartab.c.
aca7a3d2
MB
10526 (Fcopy_sequence): Call copy_char_table for a char table.
10527 (concat): Delete codes calling count_multibyte.
4c4475a8
GM
10528 (string_char_to_byte, string_byte_to_char): Adjust for the new
10529 multibyte form.
1f45f627
GM
10530 (internal_equal): Adjust for the change of char table structure.
10531 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
10532 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
10533 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
10534 (char_table_translate, optimize_sub_char_table)
10535 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
aca7a3d2 10536 chartab.c.
1f45f627
GM
10537 (char_table_ref_and_index): Delete.
10538 (HASH_KEY, HASH_VALUE): Move to lisp.h.
aca7a3d2 10539 (Fmd5): Call preferred_coding_system instead of accessing
1f45f627
GM
10540 Vcoding_category_list. Adjust for the new code-conversion API.
10541 (syms_of_fns): Move defsubr for char table related functions to
aca7a3d2
MB
10542 chartab.c.
10543
10544 * fontset.c: Mostly re-written.
10545
1f45f627 10546 * fontset.h (struct font_info): Change type of the member encoding_type.
aca7a3d2 10547 (enum FONT_SPEC_INDEX): New enum.
1f45f627
GM
10548 (fontset_font_pattern, fs_load_font): Update prototype.
10549 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
aca7a3d2
MB
10550
10551 * indent.c: Include "character.h" instead of "charset.h".
1f45f627 10552 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
aca7a3d2
MB
10553
10554 * insdel.c: Include "character.h" instead of "charset.h".
10555 (copy_text): Don't refer to Vnonascii_translation_table.
10556 (insert_from_gap): New function.
10557
10558 * keyboard.c: Include "character.h" instead of "charset.h".
10559 (command_loop_1): Never call direct_output_forward_char before
10560 a non-ASCII character.
10561 (read_char): If Vkeyboard_translate_table is a char table, always
1f45f627 10562 translate a character.
aca7a3d2
MB
10563
10564 * keymap.c: Include "character.h".
10565 (store_in_keymap): Handle the case that IDX is a cons.
10566 (Fdefine_key): Handle the case that KEY is a cons and the car part
10567 is also a cons (range).
1f45f627 10568 (push_key_description): Adjust for the new character code.
aca7a3d2
MB
10569 (describe_vector): Call describe_char_table for a char table.
10570 (describe_char_table): New function.
10571
10572 * keymap.h (describe_char_table): Extern it.
10573
10574 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
10575 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
1f45f627
GM
10576 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
10577 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
10578 Delete.
10579 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
aca7a3d2
MB
10580 structure.
10581 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
1f45f627
GM
10582 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
10583 (CHARTAB_SIZE_BITS_3): New macros.
aca7a3d2 10584 (chartab_size): Extern it.
1f45f627 10585 (struct Lisp_Char_Table): Re-design.
aca7a3d2 10586 (struct Lisp_Sub_Char_Table): New structure.
1f45f627
GM
10587 (HASH_KEY, HASH_VALUE): Move from fns.c.
10588 (CHARACTERBITS): Define as 22.
10589 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
aca7a3d2
MB
10590 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
10591 (GC_SUB_CHAR_TABLE_P): New macro.
1f45f627
GM
10592 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
10593 (code_convert_string_norecord): Deleted extern.
10594 (init_character_once, syms_of_character, init_charset)
10595 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
aca7a3d2
MB
10596
10597 * lread.c: Include "character.h".
10598 (read_multibyte): New arg NBYTES.
1f45f627
GM
10599 (read_escape): Change the meaning of returned *BYTEREP.
10600 (to_multibyte): Delete.
10601 (read1): Adjust the handling of char table and string.
aca7a3d2
MB
10602
10603 * print.c: Include "character.h" instead of "charset.h".
10604 (print_string): Convert 8-bit raw bytes to octal form by
10605 string_escape_byte8.
1f45f627 10606 (print_object): Adjust for the new multibyte form. Print 8-bit
aca7a3d2
MB
10607 raw bytes always in octal form. Handle sub char table correctly.
10608
10609 * process.c: Include "character.h" instead of "charset.h".
4c4475a8
GM
10610 (read_process_output, send_process): Adjust for the new
10611 code-conversion API.
aca7a3d2 10612
1f45f627 10613 * puresize.h (BASE_PURESIZE): Increase.
aca7a3d2
MB
10614
10615 * regex.c: Include "character.h" instead of "charset.h".
10616 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
10617 (regex_compile): Accept a range whose starting and ending
10618 character have different leading bytes.
1f45f627 10619 (analyse_first): Adjust for the above change.
aca7a3d2
MB
10620
10621 * search.c: Include "character.h" instead of "charset.h".
1f45f627
GM
10622 (search_buffer, boyer_moore): Adjust for the new multibyte form.
10623 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
aca7a3d2
MB
10624
10625 * syntax.c: Include "character.h" instead of "charset.h".
1f45f627 10626 (syntax_parent_lookup): Delete.
aca7a3d2 10627 (Fmodify_syntax_entry): Accept a cons as CHAR.
1f45f627 10628 (skip_chars): Adjust for the new multibyte form.
aca7a3d2
MB
10629 (init_syntax_once): Call char_table_set_range instead of directly
10630 accessing the structure of a char table.
10631
10632 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
1f45f627 10633 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
aca7a3d2
MB
10634 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
10635 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
10636
10637 * term.c: Include "buffer.h" and "character.h".
4c4475a8
GM
10638 (encode_terminal_code, write_glyphs): Adjust for the new
10639 code-conversion API.
aca7a3d2
MB
10640 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
10641
1f45f627 10642 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
aca7a3d2
MB
10643
10644 * xdisp.c: Include "character.h".
1f45f627
GM
10645 (get_next_display_element): Adjust for the new multibyte form.
10646 (disp_char_vector): Adjust for the new char table structure.
10647 (decode_mode_spec_coding): Adjust for the new structure of
aca7a3d2 10648 coding system.
1f45f627 10649 (decode_mode_spec): Adjust for the new code-conversion API.
aca7a3d2
MB
10650
10651 * xfaces.c: Include "character.h" instead of "charset.h".
1f45f627 10652 (load_face_font): Adjust for the change of choose_face_font and
aca7a3d2
MB
10653 FS_LOAD_FONT.
10654 (generate_ascii_font): New function.
1f45f627
GM
10655 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
10656 (set_font_frame_param): Adjust for the change of choose_face_font.
aca7a3d2 10657 (free_realized_face): Make it public.
1f45f627 10658 (free_realized_faces_for_fontset): Rename from
aca7a3d2 10659 free_realized_multibyte_face. Free also faces realized for ASCII.
1f45f627 10660 (choose_face_font): Change arguments. Adjust for the change of
aca7a3d2
MB
10661 fontset_font_pattern and FS_LOAD_FONT.
10662
10663 * xfns.c: Include "character.h".
1f45f627 10664 (x_encode_text): Adjust for the new code-conversion API.
aca7a3d2
MB
10665
10666 * xselect.c: Don't include "charset.h".
1f45f627 10667 (selection_data_to_lisp_data): Adjust for the new code conversion API.
aca7a3d2
MB
10668
10669 * xterm.c: Include "character.h".
1f45f627 10670 (x_encode_char): New argument CHARSET. Change caller.
4c4475a8
GM
10671 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
10672 Call ENCODE_CHAR instead of SPLIT_CHAR.
aca7a3d2
MB
10673 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
10674 CHAR_WIDTH instead of CHARSET_WIDTH.
1f45f627
GM
10675 (XTread_socket): Adjust for the new code-conversion API.
10676 (x_new_font): Adjust for the change of FS_LOAD_FONT.
10677 (x_load_font): Adjust for the change of struct font.
aca7a3d2 10678
d6abfc14
SM
106792008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10680
10681 * xfaces.c (face_at_buffer_position): Remove unused vars.
10682
0acdaf8d
KH
106832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10684
4c4475a8
GM
10685 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
10686 Fix overflow checking.
0acdaf8d 10687
6c8a0ebf
GM
106882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10689
10690 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
10691 Cancel previous change.
10692
106932008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
10694
10695 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
10696 ccl->eight_bit_control. Fix check for buffer overflow.
10697 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
10698 (ccl_driver): Initialize extra_bytes to 0.
10699
a32aad64
KH
107002008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
10701
10702 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
10703 return it ORed with ctrl_modifier.
10704
8b329dba
MB
107052008-01-29 Miles Bader <miles@gnu.org>
10706
10707 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
10708
548667aa
JR
107092008-01-28 Jason Rumney <jasonr@gnu.org>
10710
10711 * w32.c (stat): Don't double check for networked drive.
10712
0975aa24
SM
107132008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
10714
ef264c42
SM
10715 * window.c (run_window_configuration_change_hook): New function.
10716 Code extracted from set_window_buffer. Set the selected frame.
10717 (set_window_buffer): Use it.
10718 * window.h (run_window_configuration_change_hook): Declare.
10719 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
10720
0975aa24
SM
10721 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
10722
9c28b587
DN
107232008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
10724
10725 * Makefile.in: Remove references to unused macros.
10726
c617afce
EZ
107272008-01-26 Eli Zaretskii <eliz@gnu.org>
10728
10729 * w32.c (g_b_init_get_sid_sub_authority)
10730 (g_b_init_get_sid_sub_authority_count): New static variables.
10731 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
10732 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
0975aa24
SM
10733 (init_user_info): Use them to retrieve uid and gid.
10734 Use 500/513, the Windows defaults, as Administrator's uid/gid.
248c21c5
EZ
10735 (fstat): Use pw_uid and pw_gid from the_passwd structure for
10736 st_uid and st_gid of the file.
c617afce 10737
302d7d54
JR
107382008-01-26 Jason Rumney <jasonr@gnu.org>
10739
10740 * w32.c (logon_network_drive): New function.
10741 (stat): Use it.
10742
3ac7a21e
CY
107432008-01-26 Chong Yidong <cyd@stupidchicken.com>
10744
10745 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
10746 invisible text covered with an ellipsis.
10747
bbb9fc1f
RS
107482008-01-25 Richard Stallman <rms@gnu.org>
10749
10750 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
10751 jump back to beginning. Move some other initializations after that.
10752 (Qwindow_text_change_functions, Vwindow_text_change_functions):
10753 New variables.
10754 (syms_of_xdisp): Init them.
10755
10756 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
10757
0975aa24
SM
10758 * buffer.c (reset_buffer_local_variables):
10759 Implement `permanent-local-hook'.
bbb9fc1f 10760 (Qpermanent_local_hook): New variable.
0975aa24 10761 (syms_of_buffer): Init and staticpro it.
bbb9fc1f 10762
79235cbe
MA
107632008-01-25 Michael Albinus <michael.albinus@gmx.de>
10764
10765 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
10766
ccd8f7fe
TTN
107672008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
10768
10769 * fns.c (Fclrhash): Return TABLE.
10770
dfbe40f2 107712008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
223b3d1d
YM
10772
10773 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
10774 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
10775 is set even without positional changes.
10776 (x_scroll_bar_clear): Set bar->redraw_needed_p.
10777
10778 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
10779
dfbe40f2 107802008-01-23 Jason Rumney <jasonr@gnu.org>
602e142f 10781
d6169680
JR
10782 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
10783
602e142f
JR
10784 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
10785 the unicode range available in MULE by locale-coding-system.
c041e2d1 10786 Improve dbcs lead byte detection. Set event timestamp and modifiers
602e142f
JR
10787 earlier.
10788
dfbe40f2 107892008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5ee4de53
YM
10790
10791 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
10792 [MAC_OSX] (init_mac_osx_environment): Initialize it.
6f69e89b 10793 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
5ee4de53
YM
10794 when used on child processes.
10795
8c7a4ac5
MA
107962008-01-21 Michael Albinus <michael.albinus@gmx.de>
10797
e0df1b73 10798 * dbusbind.c (Fdbus_method_return_internal): Rename from
8c7a4ac5 10799 Fdbus_method_return.
e0df1b73 10800 (Fdbus_unregister_object): Move to dbus.el.
8c7a4ac5 10801 (Fdbus_call_method, Fdbus_method_return_internal)
e0df1b73 10802 (Fdbus_send_signal): Improve debug messages.
8c7a4ac5 10803
8abe0f97
MR
108042008-01-20 Martin Rudalics <rudalics@gmx.at>
10805
10806 * undo.c (undo_inhibit_record_point): New variable.
10807 (syms_of_undo): Initialize it.
10808 (record_point): Don't record point when undo_inhibit_record_point
10809 is set.
10810
c3b232e4
SM
108112008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
10812
e69c4cae
SM
10813 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
10814
823e0ebb
SM
10815 * xdisp.c (Qauto_hscroll_mode): New var.
10816 (syms_of_xdisp): Initialize it.
10817 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
10818 window's buffer.
10819 (hscroll_windows): Don't check automatic_hscrolling_p here.
10820
c3b232e4
SM
10821 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
10822 vscroll if we're setting window-buffer to the value it already has.
10823
76ed5e01
DN
108242008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
10825
10826 * m/intel386.h: Remove references to XENIX.
10827
55e6d9b2
AS
108282008-01-17 Andreas Schwab <schwab@suse.de>
10829
10830 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
10831 instead of HAVE_X86_64_LIB64_DIR.
10832 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
10833
b16ed52d
GM
108342008-01-17 Glenn Morris <rgm@gnu.org>
10835
10836 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
10837 to HAVE_X86_64_LIB64_DIR.
10838
6bed5c4a
DN
108392008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
10840
10841 * s/irix3-3.h:
10842 * s/irix4-0.h:
10843 * s/386-ix.h:
10844 * s/domain.h:
10845 * s/hpux9-x11r4.h:
10846 * s/hpux9shxr4.h: Remove files for systems no longer supported.
10847
10848 * sysdep.c: Remove code containing references to symbols defined
10849 by unsupported systems.
10850
fdecf907
GM
108512008-01-16 Glenn Morris <rgm@gnu.org>
10852
10853 * coding.c (select-safe-coding-system-function): Doc fix.
10854
9292328f
GM
108552008-01-15 Glenn Morris <rgm@gnu.org>
10856
10857 * config.in: Revert 2008-01-13 change: this is a generated file.
10858
944df511
MO
108592008-01-13 Tom Tromey <tromey@redhat.com>
10860
10861 * lisp.h: Fix typo.
10862
8111ec05
DN
108632008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
10864
f40f5dc3
DN
10865 * m/sequent-ptx.h:
10866 * m/sequent.h:
10867 * s/ptx.h:
10868 * s/ptx4-2.h:
10869 * s/ptx4.h: Remove files for systems no longer supported.
10870
ce20b664 10871 * callproc.c (Fcall_process): Fix previous change.
8111ec05 10872
e39a993c
DN
108732008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
10874
052e457f 10875 * unexsunos4.c: Remove file, system not supported anymore.
e39a993c 10876
290afd83
JB
10877 * m/mips.h:
10878 * m/intel386.h:
e39a993c
DN
10879 * callproc.c:
10880 * config.in:
10881 * ecrt0.c:
10882 * emacs.c:
10883 * fileio.c:
10884 * frame.c:
10885 * getpagesize.h:
10886 * keyboard.c:
10887 * lread.c:
10888 * process.c:
10889 * puresize.h:
10890 * sysdep.c:
10891 * systty.h:
10892 * syswait.h:
10893 * unexec.c:
10894 * xdisp.c:
10895 * alloc.c: Remove code containing references to symbols defined by
10896 unsupported systems.
10897
81cd7687
KH
108982008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
10899
10900 * coding.c (detect_coding_mask): Fix previous change.
10901
218b3b76
KH
109022008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
10903
10904 * coding.c (detect_coding_iso2022): New arg
10905 latin_extra_code_state. Allow Latin extra codes only
10906 when *latin_extra_code_state is nonzero.
10907 (detect_coding_mask): If there is a NULL byte, detect the encoding
10908 as UTF-16 or binary. If Latin extra codes exist, detect the
10909 encoding as ISO-2022 only when there's no other proper encoding is
10910 found.
10911
59ce725a 109122008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
081f2203 10913
59ce725a
MB
10914 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
10915 #ifdef MAC_OS.
048addec 10916
59ce725a 109172008-01-08 Richard Stallman <rms@gnu.org>
048addec 10918
59ce725a 10919 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
048addec 10920
8290574e
NR
109212008-01-06 Nick Roberts <nickrob@snap.net.nz>
10922
a0a3805c 10923 * keyboard.c (parse_menu_item): Don't enclose key bindings on
8290574e
NR
10924 menu bar in parentheses.
10925
f3041af1
DN
109262008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
10927
10928 * m/7300.h:
10929 * m/acorn.h:
10930 * m/alliant-2800.h:
10931 * m/alliant.h:
10932 * m/alliant1.h:
10933 * m/alliant4.h:
10934 * m/altos.h:
10935 * m/amdahl.h:
10936 * m/apollo.h:
10937 * m/att3b.h:
10938 * m/aviion-intel.h:
10939 * m/aviion.h:
10940 * m/celerity.h:
10941 * m/clipper.h:
10942 * m/cnvrgnt.h:
10943 * m/convex.h:
10944 * m/cydra5.h:
10945 * m/delta88k.h:
10946 * m/dpx2.h:
10947 * m/dual.h:
10948 * m/elxsi.h:
10949 * m/f301.h:
10950 * m/gould-np1.h:
10951 * m/gould.h:
10952 * m/i860.h:
10953 * m/ibmps2-aix.h:
10954 * m/ibmrt-aix.h:
10955 * m/ibmrt.h:
10956 * m/irist.h:
10957 * m/is386.h:
10958 * m/isi-ov.h:
10959 * m/mega68.h:
10960 * m/mg1.h:
10961 * m/news-r6.h:
10962 * m/news-risc.h:
10963 * m/news.h:
10964 * m/nh3000.h:
10965 * m/nh4000.h:
10966 * m/ns16000.h:
10967 * m/ns32000.h:
10968 * m/nu.h:
10969 * m/orion.h:
10970 * m/orion105.h:
10971 * m/paragon.h:
10972 * m/pfa50.h:
10973 * m/plexus.h:
10974 * m/pyramid.h:
10975 * m/pyrmips.h:
10976 * m/sh3el.h:
10977 * m/sps7.h:
10978 * m/sr2k.h:
10979 * m/stride.h:
10980 * m/sun1.h:
10981 * m/sun2.h:
10982 * m/sun3-68881.h:
10983 * m/sun3-fpa.h:
10984 * m/sun3-soft.h:
10985 * m/sun3.h:
10986 * m/sun386.h:
10987 * m/symmetry.h:
10988 * m/tad68k.h:
10989 * m/tahoe.h:
10990 * m/targon31.h:
10991 * m/tek4300.h:
10992 * m/tekxd88.h:
10993 * m/tower32.h:
10994 * m/tower32v3.h:
10995 * m/ustation.h:
10996 * m/wicat.h:
10997 * m/xps100.h:
10998 * s/cxux.h:
10999 * s/cxux7.h:
11000 * s/dgux.h:
11001 * s/dgux4.h:
11002 * s/dgux5-4-3.h:
11003 * s/dgux5-4r2.h:
11004 * s/esix.h:
11005 * s/esix5r4.h:
11006 * s/hiuxmpp.h:
11007 * s/hiuxwe2.h:
11008 * s/iris3-5.h:
11009 * s/iris3-6.h:
11010 * s/isc2-2.h:
11011 * s/isc3-0.h:
11012 * s/isc4-0.h:
11013 * s/isc4-1.h:
11014 * s/newsos5.h:
11015 * s/newsos6.h:
11016 * s/osf1.h:
11017 * s/osf5-0.h:
11018 * s/riscix1-1.h:
11019 * s/riscix12.h:
11020 * s/sco4.h:
11021 * s/sco5.h:
11022 * s/sunos4-0.h:
11023 * s/sunos4-1.h:
11024 * s/sunos413.h:
11025 * s/sunos4shr.h:
11026 * s/umax.h:
11027 * s/unipl5-2.h:
11028 * s/xenix.h:
11029 * cxux-crt0.s:
11030 * unexapollo.c:
11031 * unexconvex.c:
11032 * unexenix.c:
11033 * unexsni.c: Remove files for systems no longer supported.
11034
11035 * m/intel386.h: Remove references to unsupported systems.
11036
11037 * w32.c (get_emacs_configuration): Remove reference to i860.
11038
11039 * sysdep.c: Remove dead code.
11040
d35e1cd7
DN
110412008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
11042
11043 * s/rtu.h:
a0a3805c 11044 * m/masscomp.h: Remove files. Platform is obsolete.
d35e1cd7 11045
abe136ee
MA
110462008-01-04 Michael Albinus <michael.albinus@gmx.de>
11047
11048 * dbusbind.c (Fdbus_method_return): New function.
11049 (xd_read_message): Add the serial number to the event.
11050 (Fdbus_register_method): Activate the function.
11051
87df3c32
SM
110522008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
11053
11054 * keyboard.c (read_key_sequence): Fix typo.
11055
5125905e
MA
110562008-01-03 Michael Albinus <michael.albinus@gmx.de>
11057
11058 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
11059 (xd_signature, xd_append_arg): Handle element type detection for
11060 empty arrays.
11061 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
11062 SDATA () calls; this must be solved more general.
11063 (Fdbus_register_signal): Use SBYTES instead of strlen.
11064
8bba1b5c
MH
110652008-01-03 Magnus Henoch <magnus@zemdatav>
11066
11067 * dbusbind.c (xd_append_arg): Use unsigned char instead of
11068 unsigned int for byte values (necessary for big-endian platform).
2c3a8b27 11069 (Fdbus_call_method): Handle the case of no returned arguments.
8bba1b5c 11070
a0a3805c 110712007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
15f16c1b
MA
11072
11073 * dbusbind.c (xd_read_message): Use non-static input_event struct.
11074
a271e124
MH
110752007-12-31 Magnus Henoch <mange@freemail.hu>
11076
11077 * dbusbind.c (xd_signature): Signature of variant is just "v".
11078
17bc8f94
MA
110792007-12-30 Michael Albinus <michael.albinus@gmx.de>
11080
87df3c32 11081 * dbusbind.c: Fix several errors and compiler warnings.
1f204af3 11082 Reported by Tom Tromey <tromey@redhat.com>.
17bc8f94
MA
11083 (XD_ERROR, XD_DEBUG_MESSAGE)
11084 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
11085 (xd_append_arg): Part for basic D-Bus types rewitten.
11086 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
11087 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
11088 appropriate.
11089 (xd_read_message): Return Qnil. Don't signal an error; it is not
11090 useful during event reading.
11091 (Fdbus_register_signal): Signal an error if the check for
11092 FUNCTIONP fails.
11093 (Fdbus_register_method): New function. The implementation is not
11094 complete, the call of the function signals an error therefore.
11095 (Fdbus_unregister_object): New function, renamed from
11096 Fdbus_unregister_signal. The initial check signals an error, if
5125905e 11097 the object is not well formed.
17bc8f94 11098
dd6f2802
RS
110992007-12-30 Richard Stallman <rms@gnu.org>
11100
11101 * textprop.c (get_char_property_and_overlay):
11102 Signal error if POSITION is out of range in a buffer.
11103
1da8a031
MR
111042007-12-29 Martin Rudalics <rudalics@gmx.at>
11105
11106 * w32fns.c (Fx_create_frame): Make copy of frame parameters
11107 because the original parameters are in pure storage now.
11108
5742be86
YM
111092007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11110
11111 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
11112
b014713c
EZ
111132007-12-22 Eli Zaretskii <eliz@gnu.org>
11114
b17f53ab
MB
11115 * callint.c (syms_of_callint) <command-history>: Add reference to
11116 history-length in the doc string.
048addec 11117
b17f53ab 111182007-12-17 Jason Rumney <jasonr@gnu.org>
048addec 11119
b17f53ab
MB
11120 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
11121 before passing as wParam.
048addec 11122
9af5078b
MA
111232007-12-22 Michael Albinus <michael.albinus@gmx.de>
11124
11125 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
11126 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
11127 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
11128 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
11129 as number.
11130 (Fdbus_call_method): Fix docstring.
11131
87cf1a39
MA
111322007-12-21 Michael Albinus <michael.albinus@gmx.de>
11133
11134 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
11135 New macros.
87df3c32 11136 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
a0a3805c
JB
11137 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
11138 Simplify.
87cf1a39
MA
11139 (xd_signature): New function.
11140 (xd_append_arg): Compute also signatures. Major rewrite.
11141 (xd_retrieve_arg): Make debug messages friendly.
87df3c32
SM
11142 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
11143 Check for signatures of arguments.
87cf1a39 11144
54371585
MA
111452007-12-19 Michael Albinus <michael.albinus@gmx.de>
11146
11147 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
11148 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
11149 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
11150 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
11151 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
87df3c32 11152 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
54371585
MA
11153 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
11154 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
87df3c32 11155 (xd_retrieve_value): Remove. Functionality included in ...
54371585
MA
11156 (xd_append_arg): New function.
11157 (Fdbus_call_method, Fdbus_send_signal): Apply it.
11158
f5306ca3
MA
111592007-12-16 Michael Albinus <michael.albinus@gmx.de>
11160
11161 * dbusbind.c (top): Include <stdio.h>.
11162 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
11163 dbus_message_new_method_call and dbus_message_new_signal.
87df3c32
SM
11164 (Fdbus_register_signal): Rename unique_name to uname.
11165 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
f5306ca3
MA
11166 non-existing unique name. Fix typos in matching rule. Return an
11167 object which is useful in Fdbus_unregister_signal.
11168 (Fdbus_unregister_signal): Reimplementation, in order to remove
11169 only the corresponding entry.
11170 (Vdbus_registered_functions_table): Change the order of entries.
11171 Apply these changes in xd_read_message and Fdbus_register_signal.
11172
77a28bbf
AS
111732007-12-16 Andreas Schwab <schwab@suse.de>
11174
11175 * fileio.c (Finsert_file_contents): Fix overflow check to not
11176 depend on undefined integer overflow.
11177
2e3566d8
JR
111782007-12-14 Jason Rumney <jasonr@gnu.org>
11179
11180 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
11181 for characters above 127.
11182
bf254037
JR
111832007-12-13 Jason Rumney <jasonr@gnu.org>
11184
11185 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
11186 before dereferencing array.
11187 (lookup_vk_code): Remove zero comparison.
11188
eb7c7bf5
MA
111892007-12-14 Michael Albinus <michael.albinus@gmx.de>
11190
11191 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
87df3c32
SM
11192 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
11193 Use `unsigned int' instead of `uint'.
eb7c7bf5
MA
11194 (xd_read_message, Fdbus_register_signal): Split expressions into
11195 multiple lines before operators "&&" and "||", according to the
11196 GNU Coding Standards.
11197
34fb0fc9
EZ
111982007-12-14 Eli Zaretskii <eliz@gnu.org>
11199
11200 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
11201
c7d97628
JL
112022007-12-12 Juri Linkov <juri@jurta.org>
11203
11204 * buffer.c (Frename_buffer): In interactive spec replace
11205 `read-buffer' with `read-string' that uses `buffer-name-history'
11206 as history, and the current buffer's name as default.
11207
3709505e
SM
112082007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
11209
11210 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
11211 manipulating the backtrace manually.
11212 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
11213 (struct backtrace, backtrace_list): Remove.
11214 (command_loop_1): Remove dead var `no_direct'.
11215
11216 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
11217 preserve non-built-in buffer-local variables.
11218 (Fkill_all_local_variables): Don't re-create&re-set permanent
11219 buffer-local variables.
11220
e2bec886
JL
112212007-12-09 Juri Linkov <juri@jurta.org>
11222
11223 * buffer.c (Frename_buffer): Change interactive spec from "s" to
11224 Lisp code that uses `read-buffer' with current buffer as default.
11225
a31d47c7
MA
112262007-12-08 Michael Albinus <michael.albinus@gmx.de>
11227
11228 * dbusbind.c (xd_read_message): Generate an event for every
11229 registered handler. There might be several handlers registered
11230 for the same signal.
11231 (Fdbus_register_signal): Don't overwrite a registration for the
11232 same signal. Add a new registration if handlers are different.
11233 (Vdbus_registered_functions_table): Rework doc string.
11234
52da95fa
MA
112352007-12-07 Michael Albinus <michael.albinus@gmx.de>
11236
11237 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
11238 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
11239 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
11240 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
11241 Unify argument lists.
a0a3805c 11242 (xd_read_message, Fdbus_register_signal): Reorder and extend event
52da95fa
MA
11243 arguments and hash table keys. Use unique name for service.
11244 (Fdbus_unregister_signal): Remove checks.
11245 (Vdbus_registered_functions_table): Fix doc string.
11246
e5e76c04 112472007-12-05 Magnus Henoch <mange@freemail.hu>
0277bfa1
RS
11248
11249 * process.c (make_process): Initialize pty_flag to 0.
11250
e5e76c04 112512007-12-05 Jason Rumney <jasonr@gnu.org>
44b1dc2e
JR
11252
11253 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
11254 specified XBMs.
11255
e5e76c04 112562007-12-05 Richard Stallman <rms@gnu.org>
048addec 11257
e5e76c04 11258 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
048addec 11259
e5e76c04 112602007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
048addec 11261
e5e76c04
MB
11262 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
11263 New variable.
11264 (mac_try_close_socket) [MAC_OSX]: New function.
11265 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
11266 Update cfsockets_for_select. Replace invalid CFRunLoop source.
048addec 11267
e5e76c04
MB
11268 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
11269 Use mac_try_close_socket.
048addec 11270
e5e76c04 112712007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
048addec 11272
e5e76c04
MB
11273 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
11274 reloc_base.
11275 (copy_dysymtab): Compute relocation base here.
11276 (rebase_reloc_address) [__ppc64__]: New function.
11277 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
11278 changed.
048addec 11279
e5e76c04 112802007-12-05 Jason Rumney <jasonr@gnu.org>
048addec 11281
e5e76c04 11282 * w32proc.c (sys_spawnve): Quote args with wildcards.
048addec 11283
e5e76c04 112842007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
048addec 11285
e5e76c04
MB
11286 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
11287 __objc_* sections.
11288 (unrelocate) [_LP64]: Set relocation base to address of data segment.
048addec 11289
96faeb40
MA
112902007-12-05 Michael Albinus <michael.albinus@gmx.de>
11291
11292 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
11293 Move check for Vdbus_registered_functions_table to
11294 xd_read_queued_messages.
11295 (xd_read_queued_messages): Protect xd_read_message calls by
11296 internal_condition_case_1.
11297
39abdd4a
MA
112982007-12-04 Michael Albinus <michael.albinus@gmx.de>
11299
87df3c32 11300 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
39abdd4a 11301 Qdbus_system_bus and Qdbus_session_bus, respectively.
87df3c32 11302 (Vdbus_intern_symbols): Remove.
39abdd4a 11303 (Vdbus_registered_functions_table): New hash table.
87df3c32 11304 (XD_SYMBOL_INTERN_SYMBOL): Remove.
39abdd4a 11305 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
87df3c32 11306 Rewrite in order to manage registered functions by hash table
39abdd4a
MA
11307 Vdbus_registered_functions_table.
11308
880820fe 113092007-12-03 Jan Djärv <jan.h.d@swipnet.se>
7ba30657
JD
11310
11311 * xterm.c: Update URL to Window Manager Specification in comment.
11312
033b73e2
MA
113132007-12-02 Michael Albinus <michael.albinus@gmx.de>
11314
11315 * config.in (HAVE_DBUS): Add.
11316
a0a3805c 11317 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
033b73e2
MA
11318 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
11319 (obj): Add $(DBUS_OBJ).
11320 (LIBES): Add $(DBUS_LIBS).
11321 (dbusbind.o): New target.
11322
11323 * dbusbind.c: New file.
11324
11325 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
11326
11327 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
a0a3805c 11328 (Qdbus_event): New Lisp symbol.
033b73e2 11329 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
87df3c32 11330 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
033b73e2
MA
11331 (keys_of_keyboard ): Define dbus-event.
11332
11333 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
11334
39d0bf74
RS
113352007-12-01 Richard Stallman <rms@gnu.org>
11336
11337 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
11338
f3157c65
JR
113392007-11-30 Jason Rumney <jasonr@gnu.org>
11340
11341 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
11342 (w32con_reset_terminal_modes): Clear screen buffer.
f1e8dcf1
JR
11343 (w32_face_attributes): Don't use color indexes that are out of range.
11344 Only reverse the default colors.
f3157c65
JR
11345
11346 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
11347 WINDOWSNT.
11348
11349 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
11350
b510360c
JR
113512007-11-29 Jason Rumney <jasonr@gnu.org>
11352
11353 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
11354 (w32_face_attributes): Use Vtty_defined_color_alist to determine
11355 if the terminal colors are initialized.
11356 (unspecified_fg, unspecified_bg): Remove unused declarations.
11357
4b7ab1c4
AS
113582007-11-29 Andreas Schwab <schwab@suse.de>
11359
11360 * keyboard.c (apply_modifiers): Fix typo.
11361
4bb6c266
RS
113622007-11-29 Richard Stallman <rms@gnu.org>
11363
11364 * keymap.c (Fcurrent_local_map): Doc fix.
11365
aa44cd84
GM
113662007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
11367
11368 * s/gnu-kfreebsd.h: New file.
11369
21ec2c43
SM
113702007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
11371
cc648cef
SM
11372 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
11373 Don't cast redundantly.
11374
21ec2c43
SM
11375 * keyboard.c (KEY_TO_CHAR): New macro.
11376 (parse_modifiers, apply_modifiers): Accept integer arguments.
11377 (read_key_sequence): Use them to unify the "shift->unshift" mapping
11378 for chars and symbol keys.
11379 After doing such remapping, apply function-key-map again.
11380
73e72da4
DN
113812007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
11382
11383 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
11384 compiled anymore.
11385
254693ff
AS
113862007-11-26 Andreas Schwab <schwab@suse.de>
11387
11388 * process.c (list_processes_1): Fix indentation level of the
11389 command column.
11390
ff6e6ac8
AS
113912007-11-23 Andreas Schwab <schwab@suse.de>
11392
11393 * editfns.c (Fformat): Handle %c specially since it requires the
11394 argument to be of type int.
11395
f7cf8b20
SM
113962007-11-23 Markus Triska <markus.triska@gmx.at>
11397
11398 * emacs.c (main): Call init_editfns before init_process, since
2a2e8de7 11399 init_process sets Vprocess_connection_type depending on OS release.
f7cf8b20 11400
569c11e3
SM
114012007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
11402
8787dd73
SM
11403 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
11404 (find_symbol_value): Use do_symval_forwarding.
11405
569c11e3
SM
11406 * data.c (set_internal): Set the value in the `cons-cell' (for
11407 Buffer_Local_values) not only for frame-local variables.
11408
6af1696d
AS
114092007-11-22 Andreas Schwab <schwab@suse.de>
11410
11411 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
11412 values to sprintf.
11413 * keymap.c (Fsingle_key_description): Likewise.
11414 * print.c (print_object): Likewise.
11415
880820fe 114162007-11-22 Jan Djärv <jan.h.d@swipnet.se>
d4ad8c04
JD
11417
11418 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
11419 file for image is nil.
11420
7c401d15
DN
114212007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
11422
11423 * term.c: Include stdarg.h.
569c11e3 11424 (fatal): Implement using varargs.
a0a3805c 11425 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
7c401d15 11426
64e16c3c
SM
114272007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
11428
11429 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
11430 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
11431 Update call to buffer_slot_type_mismatch.
11432 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
11433 (buffer_slot_type_mismatch): Update.
11434 * buffer.c (buffer_local_types): Remove.
11435 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
11436 (defvar_per_buffer): Set the type in the buffer_objfwd.
11437
d4aa48db 114382007-11-21 Jason Rumney <jasonr@gnu.org>
5f42a7eb 11439
64e16c3c
SM
11440 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
11441 CreateFileMapping returns NULL on failure.
5f42a7eb 11442
d4aa48db 114432007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
048addec 11444
d4aa48db
MB
11445 * search.c (Fset_match_data): Remove the `evaporate' feature.
11446 (unwind_set_match_data): Don't use the `evaporate' feature.
437dfb9f 11447
bdae0540
JR
114482007-11-21 Jason Rumney <jasonr@gnu.org>
11449
11450 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
11451
11452 * w32console.c (w32con_write_glyphs): Remove unused variables.
11453
202c09a8
DN
114542007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
11455
b951420f
DN
11456 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
11457
202c09a8
DN
11458 * s/darwin.h (MULTI_KBOARD): Remove.
11459
11460 * macfns.c (x_create_tip_frame, Fx_create_frame)
11461 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
11462
bae72c12
SM
114632007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
11464
e7c10f83
SM
11465 * buffer.c (Fbuffer_local_value): Remove redundant test.
11466 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
11467 than in `current-buffer' to match the comment.
11468 Do the swap using swap_in_global_binding.
11469
136eb6ed
SM
11470 * data.c (store_symval_forwarding, set_internal):
11471 * eval.c (specbind): Remove dead code.
11472
bae72c12
SM
11473 * coding.c (detect_coding, Fupdate_coding_systems_internal):
11474 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
11475 Since we do not want to see internal Lisp_*fwd objects here.
11476
880820fe 114772007-11-18 Jan Djärv <jan.h.d@swipnet.se>
95fbaefc 11478
3d66b985
JD
11479 * sysdep.c (init_system_name): Use getaddrinfo if available.
11480
95fbaefc
JD
11481 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
11482 (x_scroll_bar_note_movement): start, end, with, height in struct
11483 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
11484
6c1d8cb6
DN
114852007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
11486
11487 * puresize.h (BASE_PURESIZE): Increase to 1190000.
11488
30f95089
SM
114892007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
11490
66b04bd4
SM
11491 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
11492 This undoes Richard's change of 14-Oct-2002.
11493
6d3f2bb2
SM
11494 * alloc.c (allocate_other_vector):
11495 * lisp.h (allocate_other_vector): Remove.
11496
b05b4e27
SM
11497 * window.c (struct save_window_data): Move non-lisp data to the end
11498 and make it `int' rather than Lisp_Object.
11499 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
11500 Done wrap/unwrap integer values.
11501 (Fset_window_configuration, compare_window_configurations):
11502 Update use of fields to their new types.
11503
056ce195
SM
11504 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
11505 Turn integer fields into `int'. Merge x_window_low and x_window_high.
11506 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
11507 (SET_SCROLL_BAR_X_WINDOW): Remove.
11508 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
11509 Access the new x_window field directly.
11510 * xterm.c (x_scroll_bar_create): Use a pseudovector.
11511 Don't wrap/unwrap integers into Lisp_Objects.
11512 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
11513 (x_scroll_bar_report_motion):
11514 Don't wrap/unwrap integers into Lisp_Objects.
11515 (x_term_init): Use SDATA.
11516 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
11517 (x_scroll_bar_set_handle, x_scroll_bar_remove)
11518 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
11519 (x_scroll_bar_report_motion, x_scroll_bar_clear):
11520 * xfns.c (x_set_background_color):
11521 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
11522 Access the new x_window field directly.
11523
30f95089
SM
11524 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
11525 (allocate_pseudovector): Make non-static.
6d3f2bb2 11526
30f95089
SM
11527 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
11528 (allocate_pseudovector): Declare.
6f69e89b 11529 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
30f95089 11530
9b6112e8
AS
115312007-11-15 Andreas Schwab <schwab@suse.de>
11532
30f95089
SM
11533 * editfns.c (Fformat): Correctly format EMACS_INT values.
11534 Also take precision into account when formatting an integer.
0f860bd7 11535
9b6112e8
AS
11536 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
11537
262fcd41
SM
115382007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
11539
58da34c7
SM
11540 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
11541 (syms_of_keyboard): Defsubr it.
11542
262fcd41
SM
11543 * data.c (swap_in_global_binding): Fix longstanding bug where
11544 store_symval_forwarding was not called with the right second argument,
11545 thus causing objfwd-ing from being dropped.
11546
d29a9848
JB
115472007-11-14 Juanma Barranquero <lekktu@gmail.com>
11548
11549 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
11550 (Fx_display_pixel_height, Fx_display_planes)
11551 (Fx_display_color_cells, Fx_server_max_request_size)
11552 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
11553 (Fx_display_visual_class, Fx_display_save_under):
11554 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
11555 (Fx_display_pixel_height, Fx_display_planes)
11556 (Fx_display_color_cells, Fx_server_max_request_size)
11557 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
11558 (Fx_display_mm_height, Fx_display_mm_width)
11559 (Fx_display_backing_store, Fx_display_visual_class)
11560 (Fw32_select_font, Fx_display_save_under):
11561 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
11562 (Fx_display_pixel_height, Fx_display_planes)
11563 (Fx_display_color_cells, Fx_server_max_request_size)
11564 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
11565 (Fx_display_save_under): Fix typos in docstrings.
11566
74084731
JB
115672007-11-14 Juanma Barranquero <lekktu@gmail.com>
11568
11569 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
11570 corresponding to deleted entries; they are an implementation detail.
11571 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
11572 Remove variables.
11573 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
11574 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
11575 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
11576 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
11577 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
d29a9848 11578 (Fw32_define_rgb_color, Fw32_load_color_file)
74084731 11579 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
02b39a28
JB
11580 Fix typos in docstrings.
11581 (Fx_server_version): Reflow docstring.
11582 (Fw32_shell_execute): Doc fixes.
74084731 11583
fb053a1f
JB
115842007-11-13 Juanma Barranquero <lekktu@gmail.com>
11585
11586 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
11587 if w32_parse_hot_key returned nil.
11588
a457417e 115892007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
9ec1bdb6 11590
a457417e 11591 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
9ec1bdb6 11592
4b219faa
JR
115932007-11-09 Jason Rumney <jasonr@gnu.org>
11594
11595 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
11596
11597 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
11598
11599 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
11600 Remove W32_SCROLL_BAR_CLICK_EVENT.
11601
11602 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
11603 Add MULTIMEDIA_KEY_EVENT.
11604
11605 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
11606 (lispy_multimedia_keys) [WINDOWSNT]: New array.
11607 (make_lispy_event) [WINDOWSNT]: Use it to translate
11608 MULTIMEDIA_KEY_EVENT.
11609
11610 * w32term.h (WM_APPCOMMAND): Define if not already.
11611 (GET_APPCOMMAND_LPARAM): Likewise.
11612
11613 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
11614 WM_APPCOMMAND.
11615
11616 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
11617 (syms_of_w32fns): Export and initialize it.
11618 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
11619
c12ecb0a 116202007-11-09 Chong Yidong <cyd@stupidchicken.com>
d388d2ac
CY
11621
11622 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
11623 twice.
11624
11625 * xdisp.c (handle_face_prop): Fix last change.
11626
c12ecb0a 116272007-11-09 Richard Stallman <rms@gnu.org>
048addec 11628
c12ecb0a
MB
11629 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
11630 not just for after-strings and before-strings.
11631 Call face_for_overlay_string and pass the overlay to it.
11632 (handle_display_prop): Determine whether property came from an overlay.
11633 Pass OVERLAY arg to handle_single_display_spec.
11634 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
11635 (load_overlay_strings): Fill in it->string_overlays.
11636 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
b5cb6072 11637
c12ecb0a
MB
11638 * xfaces.c (face_for_overlay_string): Function renamed from
11639 face_at_buffer_position_no_overlays, and add arg OVERLAY.
b5cb6072 11640
c12ecb0a
MB
11641 * dispextern.h (struct it): New elt string_overlays.
11642 New elt from_overlay, also in stack.
11643 Rearrange a few elements.
11644 (face_for_overlay_string): Decl renamed from
11645 face_at_buffer_position_no_overlays, and add argument.
15fff01d 11646
c12ecb0a 116472007-11-09 Richard Stallman <rms@gnu.org>
0065bb74 11648
c12ecb0a
MB
11649 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
11650 to get the base face for an overlay string.
0d8466cc 11651
c12ecb0a 11652 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
15fff01d 11653
c12ecb0a 11654 * xfaces.c (face_at_buffer_position_no_overlays): New function.
2fae9111 11655
c12ecb0a 11656 * xdisp.c (handle_stop): Move some code out of loop.
2d6c1fc0 11657
c12ecb0a 116582007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
07025a55 11659
c12ecb0a
MB
11660 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
11661 Fix conversion from Lisp object to ATSUFontID.
07025a55 11662
c12ecb0a 116632007-11-09 Jason Rumney <jasonr@gnu.org>
07025a55 11664
c12ecb0a 11665 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
3a232704 11666
c12ecb0a 116672007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
539e92ad 11668
c12ecb0a
MB
11669 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
11670 Don't assume regions are aligned to page boundary.
11671 (print_load_command_name): Add LC_UUID if defined.
3a232704 11672
c12ecb0a 116732007-11-09 Richard Stallman <rms@gnu.org>
0cb8bb48 11674
c12ecb0a 11675 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
539e92ad 11676
b8ddfbcc
JR
116772007-11-07 Jason Rumney <jasonr@gnu.org>
11678
11679 * s/windows95.h: Remove.
11680
880820fe 116812007-11-06 Jan Djärv <jan.h.d@swipnet.se>
e624c3f9
JD
11682
11683 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
11684 abort with a message on unhandled store_type values.
11685
880820fe 116862007-11-01 Jan Djärv <jan.h.d@swipnet.se>
ac1278c1
JD
11687
11688 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
11689 Remove HAVE_X11R5 and HAVE_X11R4.
11690
04a697fe
DN
116912007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
11692
11693 * Makefile.in: Remove references to sunfns.c and sunfns.o.
11694
880820fe 116952007-11-01 Johan Bockgård <bojohan@gnu.org>
56dad874
GM
11696
11697 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
fb053a1f 11698 Don't set s->stippled_p here, since it has already been set by
56dad874
GM
11699 x_set_glyph_string_gc from x_draw_glyph_string.
11700
07e5c0b0
DN
117012007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
11702
2a2e8de7 11703 * sunfns.c: Remove file.
07e5c0b0
DN
11704
11705 * m/sun386.h:
11706 * m/sun2.h:
11707 * m/sparc.h: Remove Sun windows code.
11708
1bc973c2
SM
117092007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
11710
11711 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
11712 (init_keyboard): Set current_kboard's window-system to nil.
11713 (tty_read_avail_input): Typo.
11714 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
11715
c22140f6
DN
117162007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
11717
11718 * s/usg5-4.h:
11719 * s/usg5-3.h:
11720 * s/ptx.h:
11721 * m/is386.h:
11722 * m/ibmps2-aix.h:
2a2e8de7 11723 * Makefile.in: Remove all mentions of X10.
c22140f6
DN
11724
11725 * dispnew.c (syms_of_display): Don't mention version 10.
11726
660a8219
JB
117272007-10-28 Juanma Barranquero <lekktu@gmail.com>
11728
11729 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
11730 ($(BLD)/abbrev.$(O)): Remove.
11731
e047f448
SM
117322007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
11733
11734 Rewrite abbrev.c in Elisp.
11735 * image.c (Qcount): Don't declare as extern.
11736 (syms_of_image): Initialize and staticpro `Qcount'.
11737 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
11738 * emacs.c (main): Don't call syms_of_abbrev.
11739 * Makefile.in (obj): Remove abbrev.o.
11740 (abbrev.o): Remove.
11741 * abbrev.c: Remove.
11742
67b73e3a
MR
117432007-10-26 Martin Rudalics <rudalics@gmx.at>
11744
11745 * window.c (window_min_size_2): Don't count header-line.
11746
e3d7bd83
DN
117472007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
11748
11749 * frame.h (struct frame): Move all bit fields after the first bit
660a8219 11750 field to take advantage of the available space. Group all the
e3d7bd83
DN
11751 chars together to reduce wasted space due to padding.
11752
a3547743
JB
117532007-10-26 Juanma Barranquero <lekktu@gmail.com>
11754
e298936f
JB
11755 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
11756
d3d47262
JB
11757 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
11758 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
11759 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
11760 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
11761 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
11762 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
11763 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
11764 (last_marked, mark_object_loop_halt): Make static.
11765
a3547743
JB
11766 * frame.c (syms_of_frame) <delete-frame-functions>:
11767 Fix typo in docstring.
11768
14c71d8b
JB
117692007-10-25 Juanma Barranquero <lekktu@gmail.com>
11770
11771 * w32.c (init_environment): Fix tiny memory leak.
66199f74 11772 (w32_get_resource): Remove unused variable `ok'.
14c71d8b 11773
70b8d0a4
SM
117742007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
11775
11776 Make `window-system' into a keyboard-local variable (rather than
11777 frame-local as done originally by multi-tty).
11778
11779 * keyboard.h (struct kboard): Add Vwindow_system.
11780 * keyboard.c (init_kboard): Set a default for Vwindow_system.
11781 (mark_kboards): Mark Vwindow_system.
11782
11783 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
11784 (init_display): Don't set the obsolete `window-system' frame-param.
11785
11786 * xterm.c (x_term_init):
11787 * w32term.c (w32_create_terminal):
11788 * term.c (init_tty): Set Vwindow_system.
11789 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
11790 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
11791
11792 * xfns.c (Fx_create_frame, x_create_tip_frame):
11793 * w32fns.c (Fx_create_frame, x_create_tip_frame):
11794 * macfns.c (Fx_create_frame):
11795 Don't set the obsolete `window-system' frame-param.
11796
11797 * frame.h (Qwindow_system): Remove.
11798 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
11799 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
11800
fdc90613 118012007-10-24 Richard Stallman <rms@gnu.org>
4521d1fc 11802
fdc90613
MB
11803 * frame.c (x_figure_window_size): For fullscreen case,
11804 set USPosition | PPosition without clobbering rest of window_prompting.
7c75be36 11805
fdc90613 11806 * keyboard.c (Fcurrent_idle_time): Doc fix.
4521d1fc 11807
fdc90613 11808 * print.c (Fwith_output_to_temp_buffer): Doc fix.
4521d1fc 11809
7357cb04
SM
118102007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
11811
98228e72
SM
11812 * process.c (unwind_request_sigio): Only define if __ultrix__.
11813
1baf6db9
SM
11814 * callproc.c (child_setup): Remove spurious *.
11815
4d0ac3d7
SM
11816 * lisp.h (Fget_text_property): Declare.
11817 (have_menus_p): Declare it here rather than in sys-dep header files.
11818 * macterm.h (have_menus_p):
11819 * msdos.h (have_menus_p):
11820 * xterm.h (have_menus_p): Remove.
11821
7357cb04
SM
11822 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11823 (Fmake_variable_frame_local): Just check the variable's const-ness
11824 rather than checking nil or t.
11825
866e6dd6
JR
118262007-10-22 Jason Rumney <jasonr@gnu.org>
11827
b00afeae
JR
11828 * w32fns.c: Include math.h.
11829 (w32_abort): Declaration moved to nt/config.nt.
0f7f11b7 11830
c8f7c76b
JR
11831 * s/ms-w32.h (HAVE_STDLIB_H): Define.
11832 (abort): Redefinition moved to nt/config.nt.
11833
866e6dd6
JR
11834 * m/windowsnt.h: Remove.
11835
e79beb56
JB
118362007-10-22 Juanma Barranquero <lekktu@gmail.com>
11837
11838 * emacs.c (Fdump_emacs): Fix typo in message.
11839 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
11840 <installation-directory>: Reflow docstring.
11841
fb30dfd2
JL
118422007-10-22 Juri Linkov <juri@jurta.org>
11843
11844 * minibuf.c: Allow minibuffer default to be a list of default values.
11845 With empty input use the first element of this list as returned default.
e79beb56 11846 (string_to_object)
0f7f11b7 11847 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
fb30dfd2
JL
11848 (read_minibuf): If defalt is cons, set histstring to its car.
11849 (Fread_string): If default_value is cons, set val to its car.
11850 (Fread_buffer): If def is cons, use its car.
11851 (Fcompleting_read): If defalt is cons, set val to its car.
11852
1f163f28
MA
118532007-10-21 Michael Albinus <michael.albinus@gmx.de>
11854
11855 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
11856
db3534c3
JB
118572007-10-20 Juanma Barranquero <lekktu@gmail.com>
11858
11859 * doc.c (Fdocumentation): Check for advice in all cases.
11860
c6f18a07
CY
118612007-10-19 Chong Yidong <cyd@stupidchicken.com>
11862
11863 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
11864
2a1534d3
RS
118652007-10-19 Richard Stallman <rms@gnu.org>
11866
11867 * doc.c (Fdocumentation): Check for and handle an advised function.
11868
7b82c3b6
JB
118692007-10-19 Juanma Barranquero <lekktu@gmail.com>
11870
11871 * process.c (Fset_process_filter): Doc fix.
11872
3278f20e
SM
118732007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
11874
11875 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
11876 which caused key-translation-map to applied repeatedly (thus breaking
11877 double-mode).
11878
99784d63
SM
118792007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
11880
11881 * xselect.c (x_own_selection, x_handle_selection_clear)
11882 (x_clear_frame_selections):
11883 * w32menu.c (list_of_panes, list_of_items):
11884 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
11885 * textprop.c (validate_plist, interval_has_all_properties)
11886 (interval_has_some_properties, interval_has_some_properties_list)
11887 (add_properties, text_property_list):
11888 * process.c (Fget_buffer_process, list_processes_1, status_notify):
11889 * minibuf.c (Fassoc_string):
11890 * macselect.c (x_own_selection, x_clear_frame_selections)
11891 (Fx_disown_selection_internal):
11892 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
11893 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
11894
44bb704d
CY
118952007-10-17 Chong Yidong <cyd@stupidchicken.com>
11896
11897 * process.c: Link to libs for calling res_init() if available.
11898 (Fmake_network_process): Call res_init() before getaddrinfo or
11899 gethostbyname, if possible.
11900
d314756e
SM
119012007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
11902
2504022a
SM
11903 * lread.c (read1): Set pvectype for char_tables.
11904
19fa82b9
SM
11905 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
11906 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
11907 Add type checks.
11908 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
11909
d314756e
SM
11910 * alloc.c (free_misc): Use XMISCTYPE.
11911 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
11912
94b9aaa2
GM
119132007-10-17 Glenn Morris <rgm@gnu.org>
11914
11915 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
11916 (syms_of_minibuf): Add Qcompletion_ignore_case.
11917 * dired.c (Qcompletion_ignore_case): Change to external.
11918 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
11919 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
11920 (Fread_file_name): Use it rather than intern'ing.
11921
11922 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
11923 (Fread_coding_system): Ignore case of user input.
11924
da6658e8
YM
119252007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11926
11927 * xdisp.c (handle_display_prop): Ignore display specs after
11928 replacing one when string text is being replaced.
11929 (handle_single_display_spec): Pretend as if characters with display
11930 property haven't been consumed only when buffer text is being replaced.
11931
11fb4bdb
SM
119322007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
11933
9beb8baa
SM
11934 * xfns.c (Fx_create_frame, Fx_display_list):
11935 * window.c (window_fixed_size_p, enlarge_window)
11936 (shrink_window_lowest_first):
11937 * macterm.c (init_font_name_table):
11938 * macfns.c (Fx_create_frame, Fx_display_list):
11939 * lread.c (close_load_descs):
11940 * keyboard.c (read_char_x_menu_prompt):
11941 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
11942 * coding.c (code_convert_region_unwind): Test the type of an object
11943 rather than just !NILP before extracting data from it.
11944
d3f41ff5
SM
11945 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
11946
67ee9f6e
SM
11947 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
11948 (XMISCANY): New macro.
11949 (XMISCTYPE): Use it.
11950 (struct Lisp_Misc_Any): New type.
11951 (union Lisp_Misc): Use it.
11952 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
11953 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
11954 (find_symbol_value, set_internal, default_value, Fset_default)
11955 (Fmake_variable_buffer_local, Fmake_local_variable)
11956 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
11957 (Flocal_variable_if_set_p, Fvariable_binding_locus):
11958 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
11959 * alloc.c (allocate_buffer): Set the size and tag.
11960 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
11961 Use XMISCANY.
11962 (die): Follow the GNU convention for error messages.
11963 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
11964 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
11965 tag any more.
11966 (set_buffer_internal_1):
11967 * frame.c (store_frame_param):
11968 * eval.c (specbind):
11969 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
11970
11fb4bdb
SM
11971 * doc.c (Fsnarf_documentation): Simplify.
11972
decb374a
JB
119732007-10-14 Juanma Barranquero <lekktu@gmail.com>
11974
11975 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
11976 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
11977
b5a40ee7
SM
119782007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
11979
11980 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
11981
35277b03
JB
119822007-10-14 Juanma Barranquero <lekktu@gmail.com>
11983
11984 * eval.c (do_autoload): Don't save autoloads.
11985
11986 * data.c (Ffset): Save autoload of the function being set.
11987
35fdaa62
GM
119882007-10-07 John Paul Wallington <jpw@pobox.com>
11989
11990 * xfns.c (x_create_tip_frame): Set the `display-type' frame
11991 parameter before setting up faces.
11992
1ea40aa2
EZ
119932007-10-13 Eli Zaretskii <eliz@gnu.org>
11994
35fdaa62 11995 * ccl.c (Fregister_code_conversion_map):
96a5affb
EZ
11996 * keyboard.c (append_tool_bar_item): Reformat last change.
11997
1ea40aa2
EZ
11998 * lisp.h (eabs): Rename from `abs'. All callers changed.
11999
35277b03 120002007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
71d00ce4
EZ
12001
12002 * buffer.c (add_overlay_mod_hooklist):
12003 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
12004 * fontset.c (make_fontset):
12005 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
12006 (append_tool_bar_item):
12007 * macmenu.c (grow_menu_items):
35fdaa62 12008 * w32menu.c (grow_menu_items):
71d00ce4 12009 * xmenu.c (grow_menu_items): Use larger_vector.
35fdaa62 12010
bc82f120
EZ
120112007-10-13 Eli Zaretskii <eliz@gnu.org>
12012
12013 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
12014 selected frame'' on MSDOS).
12015
d57d5a78
MR
120162007-10-12 Martin Rudalics <rudalics@gmx.at>
12017
12018 * frame.c (Qexplicit_name): New variable.
12019 (x_report_frame_params): Report it in parameter alist.
12020 (syms_of_frame): Intern and staticpro it.
12021
35277b03 120222007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
04710ebd
JR
12023
12024 * macfns.c (x_create_tip_frame): Set terminal for frame.
12025
c7a4b95b
SM
120262007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
12027
26f9c7b7
SM
12028 * frame.c (Qenvironment): Remove.
12029 (syms_of_frame) <Qenvironment>: Don't initialize.
12030 (Fdelete_frame): Don't treat the `environment' param specially.
12031 * frame.h (Qenvironment): Don't declare.
12032 * callproc.c (set_initial_environment): Don't set unused frame param.
12033
c7a4b95b
SM
12034 * frame.c (Fframe_with_environment): Remove.
12035 (syms_of_frame) <Sframe_with_environment>: Don't declare.
26f9c7b7 12036
c7a4b95b
SM
12037 * lisp.h (Fframe_with_environment): Don't declare.
12038
c86f7377
JB
120392007-10-10 Juanma Barranquero <lekktu@gmail.com>
12040
12041 * indent.c (indent_tabs_mode, last_known_column)
12042 (last_known_column_modified): Make static.
12043 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
12044
d1b3a122
KY
120452007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
12046
12047 * puresize.h (BASE_PURESIZE): Increase to 1170000.
12048
d57d5a78
MR
120492007-10-09 Jason Rumney <jasonr@gnu.org>
12050
12051 * w32term.c (x_set_window_size): Disable code that attempts to tell
12052 Lisp code about a size change before it actually happens.
12053
81d3d428 120542007-10-09 Richard Stallman <rms@gnu.org>
91175673 12055
81d3d428
MB
12056 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
12057 return HANDLED_RETURN.
91175673 12058
1af74d06 120592007-10-08 Martin Rudalics <rudalics@gmx.at>
4f1b1854 12060
1af74d06
MB
12061 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
12062 when there's an unread command event.
e0fead5d 12063
c7a4b95b 12064 * frame.c (focus_follows_mouse): Move here from frame.el to allow
1af74d06
MB
12065 window autoselection act appropriately when leaving selected frame.
12066 (syms_of_frame): Initialize focus_follows_mouse.
12067 * frame.h (focus_follows_mouse): Extern it.
12068 * macterm.c (XTread_socket): When focus_follows_mouse is nil
c7a4b95b 12069 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
1af74d06
MB
12070 * msdos.c (dos_rawgetc): Likewise.
12071 * w32term.c (w32_read_socket): Likewise.
12072 * xterm.c (handle_one_xevent): Likewise.
12073 * xdisp.c (syms_of_xdisp): In doc-string of
12074 mouse-autoselect-window mention focus-follows-mouse.
e0fead5d 12075
1af74d06 120762007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
e0fead5d 12077
1af74d06
MB
12078 * macterm.c (mac_load_query_font): Fix missing return value.
12079 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
12080 Add BLOCK_INPUT.
c186cdb3 12081
1af74d06 120822007-10-08 Richard Stallman <rms@gnu.org>
c186cdb3 12083
1af74d06
MB
12084 * xdisp.c (get_window_cursor_type): Implement documented behavior
12085 for cursor-in-non-selected-windows = t.
c186cdb3 12086
1af74d06 120872007-10-08 Jason Rumney <jasonr@gnu.org>
c186cdb3 12088
1af74d06 12089 * w32.c (w32_get_resource): Always close registry keys.
58cfce98 12090
1af74d06 120912007-10-08 Jason Rumney <jasonr@gnu.org>
58cfce98 12092
1af74d06 12093 * makefile.w32-in (LIBS): Add COMCTL32.
62854fe2 12094
1af74d06 12095 * w32fns.c (globals_of_w32fns): Init common controls.
62854fe2 12096
1af74d06 120972007-10-08 Richard Stallman <rms@gnu.org>
a3c83618 12098
c7a4b95b 12099 * image.c (our_memory_buffer): Rename from omfib_buffer.
656f46bb 12100
1af74d06 121012007-10-08 Richard Stallman <rms@gnu.org>
656f46bb 12102
1af74d06 12103 * buffer.c (Foverlays_at): Doc fix.
036e218d 12104
1af74d06 121052007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
036e218d 12106
1af74d06 12107 * fns.c (Fplist_put): Preserve uneven tail data.
7ddb2c16 12108
1af74d06 121092007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
7ddb2c16 12110
1af74d06 12111 * termhooks.h (enum event_kind): Remove trailing comma.
ace9b298 12112
1af74d06 12113 * frame.h (enum): Remove trailing comma.
90647b07 12114
8993ad2e 121152007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
90647b07 12116
1af74d06 12117 * w32proc.c (delete_child): Don't terminate threads of zombies.
ace9b298 12118
1af74d06 121192007-10-08 Martin Rudalics <rudalics@gmx.at>
ace9b298 12120
1af74d06 12121 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
ace9b298 12122
1af74d06
MB
12123 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
12124 last-repeatable-command.
12125 (init_kboard): Initialize Vlast_repeatable_command.
12126 (command_loop_1): Set it to real_this_command unless that was
12127 bound to an input event.
12128 (mark_kboards): Mark it.
9fbc32aa 12129
1af74d06 121302007-10-08 Richard Stallman <rms@gnu.org>
036e218d 12131
1af74d06 12132 * eval.c (condition-case): Doc fix.
9fbc32aa 12133
1af74d06 121342007-10-08 Masatake YAMATO <jet@gyve.org>
9fbc32aa 12135
1af74d06
MB
12136 * xfaces.c (tty_supports_face_attributes_p): Fix code
12137 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
12138 was copied and not edited.
9fbc32aa 12139
beb9f745
SM
121402007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
12141
c86f7377 12142 Add new `input-decode-map' keymap and use it for terminal
4f4a84ec
SM
12143 escape sequences.
12144 * keyboard.h (struct kboard): Add Vinput_decode_map.
12145 Remove Vlocal_key_translation_map.
12146 * keyboard.c (read_key_sequence): Add support for input-decode-map.
12147 (init_kboard): Init input-decode-map.
12148 Replace local-key-translation-map back with key-translation-map.
12149 (syms_of_keyboard): Declare input-decode-map.
12150 Remove local-key-translation-map. Update docstrings.
12151 (mark_kboards): Mark Vinput_decode_map.
12152 Don't mark Vlocal_key_translation_map.
12153 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
12154 Replace local-key-translation-map back with key-translation-map.
12155 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
12156 Bind in input-decode-map rather than function-key-map.
12157
beb9f745
SM
12158 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
12159 This was made redundant by the previous introduction of XSETPVECTYPE.
12160
65342ae3
RS
121612007-10-09 Richard Stallman <rms@gnu.org>
12162
beb9f745 12163 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
65342ae3
RS
12164
121652007-09-29 Richard Stallman <rms@gnu.org>
12166
12167 * eval.c (internal_condition_case_2, internal_condition_case_1)
12168 (internal_condition_case): Reenable abort if x_catching_errors ()
12169 to see if that really happens and why.
12170
6cff77fd
AS
121712007-10-06 Andreas Schwab <schwab@suse.de>
12172
12173 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
12174
bbe6f2aa
JB
121752007-10-04 Juanma Barranquero <lekktu@gmail.com>
12176
12177 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
12178
a390930c
SM
121792007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
12180
12181 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
12182
d6aa1876
SM
121832007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
12184
d0fdb6da
SM
12185 * window.h (struct window):
12186 * window.c (struct save_window_data, struct saved_window):
12187 * termhooks.h (struct terminal):
12188 * process.h (struct Lisp_Process):
12189 * frame.h (struct frame):
12190 * buffer.h (struct buffer):
12191 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
12192 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
12193 The size field of (pseudo)vectors is now unsigned.
12194 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
12195
878f97ff
SM
12196 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
12197 Turn `count' into an integer.
d0fdb6da 12198
878f97ff
SM
12199 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
12200 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
12201 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
12202 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
12203 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
12204
d2029e5b
SM
12205 * alloc.c (allocate_pseudovector): New fun.
12206 (ALLOCATE_PSEUDOVECTOR): New macro.
12207 (allocate_window, allocate_terminal, allocate_frame)
12208 (allocate_process): Use it.
12209 (mark_vectorlike): New function.
12210 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
12211 (mark_terminals): Use it.
12212 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
12213 (Fmake_byte_code): Use XSETPVECTYPE.
12214
12215 * frame.c (Fframe_parameters): Minor simplification.
12216
12217 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
12218
12219 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
12220
12221 * buffer.c (Fget_buffer_create, init_buffer_once):
12222 * lread.c (defsubr):
12223 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
12224
12225 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
12226 defined differently in the m/*.h files.
12227 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
12228 (XSETPVECTYPE): New macro.
12229 (XSETPSEUDOVECTOR): Use it.
12230
d6aa1876
SM
12231 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
12232 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
d2029e5b 12233
d6aa1876
SM
12234 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
12235 * lread.c (defvar_per_buffer):
12236 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
12237
12238 * window.c (candidate_window_p): Only consider as visible frames that
12239 are on the same terminal.
12240
12241 * m/ibms390x.h (MARKBIT): Remove unused macro.
12242
88852d45
JB
122432007-10-01 Juanma Barranquero <lekktu@gmail.com>
12244
12245 * lread.c (Fload): Fix typo in docstring.
12246
880820fe 122472007-10-01 Michaël Cadilhac <michael@cadilhac.name>
2742fe30
MC
12248
12249 * floatfns.c (Fexpt): Manually check for overflows, so that a power
12250 of a non-zero value can't yield zero.
12251
ed0c79c6
SM
122522007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
12253
b870aa61
SM
12254 * term.c (term_clear_mouse_face, term_mouse_highlight)
12255 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
12256
4c37a414
SM
12257 * print.c (safe_debug_print): Use XHASH.
12258
b9466edb
SM
12259 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
12260 Lisp elements such as tags.
12261 (XHASH): New macro.
12262 (EQ): Use it.
12263 (SREF, SSET, STRING_COPYIN): Use SDATA.
12264 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
12265
9c545a55
SM
12266 * alloc.c (mark_terminal): Remove left-over declaration.
12267 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
12268 (allocate_vectorlike): Remove type argument. Adjust callers.
12269 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
12270 Only handle the one remaining MEM_TYPE_VECTORLIKE.
12271
dafc79fa
SM
12272 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
12273 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
12274 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
12275 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
12276 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
12277 Use them.
12278
ed0c79c6
SM
12279 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
12280 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
12281 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
12282
3c81afd4
DN
122832007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
12284
12285 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
12286 loaded by default.
12287
6178ce5e
SM
122882007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
12289
4ce5ab77
SM
12290 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
12291 on this tty.
12292 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
12293
6178ce5e
SM
12294 * term.c (mouse_face_window): Rename from Qmouse_face_window.
12295 Update all users.
12296 (handle_one_term_event): Use Gpm_DrawPointer.
12297 (Fgpm_mouse_start): Rename from Fterm_open_connection.
12298 Signal errors instead of returning nil. Always return nil.
12299 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
12300 Make it a noop if gpm-mouse was not activated.
12301 (syms_of_term): Update names.
12302
bdf5f8ef
SM
123032007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
12304
75a8734b
SM
12305 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
12306 (init_sys_modes): Check that gpm_tty is the current tty.
12307
13559ee0
SM
12308 * alloc.c (allocate_terminal): Set the vector size to only count the
12309 lisp fields. Initialize those to nil.
12310 (mark_object): Don't treat terminals specially.
12311 (mark_terminal): Remove.
12312 (mark_terminals): Use mark_object instead.
12313
ff16b875
SM
12314 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
12315 the GC to the beginning.
12316
83155776
SM
12317 * indent.h:
12318 * indent.c: Use EMACS_INT for ints coming from Elisp data.
12319
bdf5f8ef
SM
12320 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
12321
ec8705b6
JR
123222007-09-25 Jason Rumney <jasonr@gnu.org>
12323
12324 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
12325
12326 * w32console.c (create_w32cons_output): Remove.
12327
12328 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
12329
12330 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
12331 (reset_sys_modes): Use reset_terminal_modes_hook.
12332
7351b242
SM
123332007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
12334
12335 * eval.c (do_autoload): Don't output any message.
12336
16706228
JL
123372007-09-24 Juri Linkov <juri@jurta.org>
12338
12339 * emacs.c (standard_args): Change priority of "--no-splash"
12340 from 40 to 3. Add "--no-desktop" with the same priority.
12341
3ae2e3a3
RS
123422007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
12343
12344 * alloc.c (gc_sweep): Check cons cell mark bits word by word
12345 and optimize the case where they are all 1.
12346
7a58fb43
GM
123472007-09-23 Johannes Weiner <hannes@saeurebad.de>
12348
3ae2e3a3
RS
12349 * lisp.h (abs): Define if not defined.
12350 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
12351 Don't define `abs', since it's defined in lisp.h.
7a58fb43 12352
78048085
EZ
123532007-09-22 Eli Zaretskii <eliz@gnu.org>
12354
c7a4b95b 12355 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
78048085
EZ
12356 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
12357 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
12358 (init_tty): Use DEV_TTY instead of "/dev/tty".
12359 [WINDOWSNT]: No need to protect from NAME arg being null.
12360
23d4cba5
DN
123612007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
12362
12363 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
12364 up the tty state.
12365
71f44e7a
SM
123662007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
12367
12368 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
12369 (gpm_tty): Change its type.
12370 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
12371 (gpm_tty): Change its type and initialize it.
12372 (Fterm_open_connection): Check the frame is indeed a tty.
12373 Use the new gpm_tty.
12374 (Fterm_close_connection): Use the new gpm_tty.
12375 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
12376 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
12377
def7fa34
JB
123782007-09-21 Juanma Barranquero <lekktu@gmail.com>
12379
12380 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
12381 underline_color, to draw strike-through.
12382
d2bb6598
SM
123832007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
12384
273f164c
SM
12385 * lisp.h (allocate_terminal): Declare.
12386
ca2d5566
SM
12387 * window.c (candidate_window_p): Consider frames that are being placed
12388 by the user as somewhere between visible and iconified.
12389 (window_loop): Prefer windows on the current frame.
12390 (Fselect_window): Move the use of select-frame to the beginning so we
12391 can just delegate all the work (it'll call us back anyway).
12392
6168122d
SM
12393 * frame.c (Qdisplay_environment_variable):
12394 * frame.h (Qdisplay_environment_variable): Delete.
12395
c51842ec
SM
12396 * .gdbinit (xbacktrace): Print the arg's address rather than the value
12397 of the first arg, since that value may be a union.
12398
d2bb6598
SM
12399 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
12400 parameter rather than Qdisplay_environment_variable. If all else
12401 fails, look for DISPLAY in initial-environment.
12402
6f022c19
GM
124032007-09-21 Glenn Morris <rgm@gnu.org>
12404
12405 * Makefile.in (emacstool): Remove target.
f466320b 12406 (lisp, shortlisp): Remove termdev.elc.
6f022c19 12407
ea1bf8c7
GM
124082007-09-21 Markus Triska <markus.triska@gmx.at>
12409
d2bb6598 12410 * xterm.c (x_delete_display): Compile session management conditionally.
ea1bf8c7 12411
d30a25b3
SM
124122007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
12413
db699fc6
SM
12414 * callproc.c (getenv_internal_1): New function.
12415 (getenv_internal): Use it.
12416 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
12417
d2bb6598 12418 * terminal.c (get_terminal): Don't accept ints to represent terminals.
c5911e55
SM
12419 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
12420 (Fset_terminal_parameter): Work with dead terminals as well.
12421 (Fmodify_terminal_parameters): Remove.
12422
d30a25b3
SM
12423 * terminal.c (get_terminal): Handle terminals.
12424 Make sure the terminal returned is live.
12425 (create_terminal): Use allocate_terminal.
12426 (mark_terminals): Move to alloc.c.
12427 (delete_terminal): Use terminal->name as liveness status.
12428 NULL out fields after freeing their contents.
12429 Don't deallocate the object.
12430 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
12431 rather than an int.
12432 (Fterminal_live_p): Accept non-integer arguments.
12433 (Fterminal_list): Return terminal objects rather than an ints.
12434
12435 * alloc.c (enum mem_type): New member for `terminal' objects.
12436 (allocate_terminal): New function.
d2bb6598
SM
12437 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
12438 Handle terminals.
d30a25b3
SM
12439 (mark_terminal): New fun.
12440 (mark_terminals): Move from terminal.c.
12441
12442 * term.c (get_tty_terminal): Don't treat output_initial specially.
12443 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
12444 (delete_tty): Use terminal->name as liveness status.
12445
12446 * termhooks.h (struct terminal): Make it into a pseudovector.
12447 Remove `deleted' replaced by checking `name's nullness.
12448
12449 * print.c (print_object): Handle terminals.
12450
12451 * lisp.h (enum pvec_type): New `terminal' pseudovector.
12452 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
12453
12454 * frame.c (make_terminal_frame):
12455 * keyboard.c (tty_read_avail_input):
12456 * w32term.c (x_delete_terminal):
12457 * xfns.c (Fx_create_frame, x_create_tip_frame):
12458 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
12459
eba25e7c
GM
124602007-09-20 Glenn Morris <rgm@gnu.org>
12461
12462 * process.c (Fmake_network_process): Doc fix.
12463
2a29c3c1
JR
124642007-09-19 Jason Rumney <jasonr@gnu.org>
12465
12466 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
12467
880820fe 124682007-09-19 Michaël Cadilhac <michael@cadilhac.name>
ba1cbad7
MC
12469
12470 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
12471 Fix a C warning regarding variable constness.
12472
12473 * xterm.c (handle_one_xevent): Fix a C warning.
12474
334a1195
JR
124752007-09-18 Jason Rumney <jasonr@gnu.org>
12476
12477 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
12478
880820fe 124792007-09-17 Jan Djärv <jan.h.d@swipnet.se>
879ffad9
JD
12480
12481 * gtkutil.c (gdpy_def): New variable.
12482 (xg_initialize): Initialize gdpy_def.
12483 (xg_display_close): If no other display exists, set gdpy_def to a
12484 new connection.
12485
880820fe 124862007-09-16 Jan Djärv <jan.h.d@swipnet.se>
45c94881
JD
12487
12488 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
12489 when we have no file name for the icon.
12490 (xg_tool_bar_expose_callback): Remove.
12491 (xg_create_tool_bar): Don't connect expose signal to
12492 xg_tool_bar_expose_callback.
12493 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
12494
4d580af2
AS
124952007-09-16 Andreas Schwab <schwab@suse.de>
12496
12497 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
12498 values instead of zapping them.
12499
aca946f3
GM
125002007-09-14 Glenn Morris <rgm@gnu.org>
12501
12502 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
12503 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
12504 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
12505 scope and rename to omfib_buffer for clarity.
12506 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
12507
25c460e5
KH
125082007-09-14 Kenichi Handa <handa@m17n.org>
12509
12510 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
12511
09b69f01
JR
125122007-09-13 Jason Rumney <jasonr@gnu.org>
12513
12514 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
12515
12516 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
12517
12518 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
12519 (mac_term_init): Call here instead, passing rif.
12520
442218db
GM
125212007-09-13 Glenn Morris <rgm@gnu.org>
12522
12523 * s/hpux.h: No longer define `static' as nothing.
12524
880820fe 125252007-09-13 Johan Bockgård <bojohan@gnu.org>
4795c40f
GM
12526
12527 * callint.c (Fcall_interactively): Remove unused var `fun'.
12528
1971a872
RF
125292007-09-12 Romain Francoise <romain@orebokech.com>
12530
12531 * window.c (prefer_window_split_horizontally, display_buffer):
12532 Revert 2007-09-08 change.
12533
2d33f506
GM
125342007-09-12 Glenn Morris <rgm@gnu.org>
12535
585474ae 12536 * alloca.c: Remove file.
ca7af97a
GM
12537 * Makefile.in (alloca): Do not undef.
12538 (allocaobj, alloca.o): Remove.
12539 (otherobj): Remove allocaobj.
12540 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
12541 * regex.c (C_ALLOCA): Remove all references and code that was only
12542 used when this was defined.
12543 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
12544 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
99dfbaf1
GM
12545 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
12546
2d33f506 12547 * Makefile.in (SOURCES, unlock, relock): Delete.
ca7af97a
GM
12548
12549 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
12550 (menu_grab_callback): All uses changed.
12551
12552 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
12553 (x_reply_selection_request): All uses changed.
2d33f506 12554
18a4a65e
SM
125552007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
12556
12557 * lread.c (load_warn_old_style_backquotes): Change message to look
12558 better when it appears in the middle of byte-compiler messages.
12559
47cc8819
DN
125602007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
12561
b7ea0894
DN
12562 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
12563
47cc8819
DN
12564 * xterm.c (x_create_terminal): Add comment.
12565
12566 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
12567
5632bd0f
RS
125682007-09-10 Richard Stallman <rms@gnu.org>
12569
12570 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
12571
880820fe 125722007-09-10 Michaël Cadilhac <michael@cadilhac.name>
ccb5c14f 12573
4bca9161
MC
12574 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
12575 (DEFUN): Document `intspec', use it instead of `prompt'.
12576
04724b69
MC
12577 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
12578
8a6d230a
MC
12579 * data.c (Finteractive_form): If the interactive specification starts
12580 with a `(', use it as a Lisp form.
12581
09fbdf6c
MC
12582 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
12583 name and file modes.
12584
ccb5c14f
MC
12585 * callint.c (Fcall_interactively): Comment fixes.
12586
023accd6
SM
125872007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
12588
12589 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
12590 and compiled functions.
12591
f26b9544
EZ
125922007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
12593
12594 * window.c (prefer_window_split_horizontally): New variable.
12595 (display_buffer): Consider splitting window horizontally depending
12596 on prefer_window_split_horizontally.
12597
4d395425
EZ
125982007-09-08 Eli Zaretskii <eliz@gnu.org>
12599
97ddc760 12600 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
4d395425 12601
08c1d235
SM
126022007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
12603
179cef48
SM
12604 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
12605
08c1d235
SM
12606 * frame.c (x_set_frame_parameters): Check number is positive before
12607 using XFASTINT.
12608
12609 * window.c (freeze_window_start): Don't presume selected_window holds
12610 a window object.
92f94a12 12611 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
08c1d235 12612
97ddc760 126132007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
de52dcbb
DN
12614
12615 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
12616
90ab5c62
SM
126172007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
12618
12619 * window.c (Vsplit_window_preferred_function): New var.
12620 (Fdisplay_buffer): Use it.
12621 (syms_of_window): Export, and initialize it.
12622
1ab2cd43
TTN
126232007-09-06 Pixel <pixel@mandriva.com> (tiny change)
12624
12625 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
12626
0b0515bc
GM
126272007-09-06 Glenn Morris <rgm@gnu.org>
12628
57fd5c55 12629 * gtkutil.c (menu_grab_callback) <cnt>:
0b0515bc
GM
12630 * xselect.c (x_reply_selection_request) <cnt>: Move static
12631 variable to file scope.
12632
98594580
SM
126332007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
12634
12635 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
12636 consistent values of selected_frame and selected_window.
12637
0f4c7aef
JR
126382007-09-04 Jason Rumney <jasonr@gnu.org>
12639
12640 * w32console.c (initialize_w32_display): Zero unused hooks.
12641
e4019195
DN
126422007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
12643
12644 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
12645 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
12646
bce179b5
JR
126472007-09-04 Jason Rumney <jasonr@gnu.org>
12648
a0236551
JR
12649 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
12650 in w32console.c. Set up input. Remove XXX comments that have been
12651 confirmed as correct.
12652
a4926668
JR
12653 * s/ms-w32.h (MULTI_KBOARD): Define.
12654
953bf0dc
JR
12655 * w32console.c (one_and_only_w32cons): Remove.
12656 (initialize_w32_display): Take terminal argument.
12657
12658 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
12659 initialize_w32_display.
12660 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
12661
bce179b5
JR
12662 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
12663
12664 * keyboard.c (discard_mouse_events): Discard it.
12665 (make_lispy_event): Translate it to a lisp event.
12666 (lispy_wheel_names): Add wheel-left and right events.
12667 (syms_of_keyboard): Enlarge wheel_syms.
12668
12669 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
12670 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
12671
12672 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
12673
12674 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
12675 from WM_MOUSEHWHEEL.
12676 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
12677
12678 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
12679 terminal.
12680
12681 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
12682 keyboard for the terminal.
12683
92cd6a7c
DN
126842007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
12685
12686 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
12687 (Vresume_tty_hook): Rename from Vresume_tty_functions.
12688 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
12689 and resume-tty-function to resume-tty-hook.
12690 (Fsuspend_tty, Fresume_tty): Use new names.
12691
880820fe 126922007-09-02 Jan Djärv <jan.h.d@swipnet.se>
2154c964
JD
12693
12694 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
12695 if it starts with "n:".
12696
880820fe 126972007-08-31 Jan Djärv <jan.h.d@swipnet.se>
b42ff099
JD
12698
12699 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
12700
6b8e474c
SM
127012007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
12702
92d9c1d4
SM
12703 * frame.h:
12704 * frame.c (Qterm_environment_variable): Remove.
12705 (syms_of_frame): Don't init and staticpro it.
12706
92d9c1d4
SM
12707 * callproc.c (getenv_internal): Remove special case for $TERM.
12708
6b8e474c
SM
12709 * callproc.c (Vinitial_environment): New variable.
12710 (set_initial_environment): Initialize it.
12711 (syms_of_callproc): Declare it.
12712 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
12713 TERM under which a process runs is never related to the TERM in which
12714 Emacs is running.
12715
0f1444e1
DN
127162007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
12717
12718 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
12719 * s/darwin.h: ... do it here.
12720
b8866860
SM
127212007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
12722
12723 * lisp.h (set_initial_environment): Rename from set_global_environment.
12724
12725 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
12726 removed by mistake on the multi-tty branch.
12727
12728 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
12729 (Fmodify_frame_parameters): Return a value.
12730
12731 * image.c (png_load): Comment-out var only used in commented-out code.
12732
12733 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
12734 before passing it to mark_object.
12735
12736 * xfaces.c (internal_resolve_face_name): Return a value.
12737 (internal_resolve_face_name, resolve_face_name_error): Comment out.
12738
12739 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
12740 (x_icon): Comment-out var only used in commented-out code.
12741
0a42be6d
RF
127422007-08-29 Romain Francoise <romain@orebokech.com>
12743
12744 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
12745 QUIT hasn't been provided.
12746
8d9cc0b7
MB
127472007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
12748
12749 * callproc.c (child_setup, getenv_internal): Use the
ce20b664 12750 display-environment-variable and term-environment-variable frame params.
8d9cc0b7
MB
12751 (set_initial_environment): Initialise Vprocess_environment.
12752
12753 * config.in: Disable multi-keyboard support on a mac.
12754
12755 * frame.c (Qterm_environment_variable)
12756 (Qdisplay_environment_variable): New variables.
12757 (syms_of_frame): Intern and staticpro them.
12758 (Fmake_terminal_frame): Disable output method test.
12759
12760 * frame.h: Declare them here.
12761
12762 * macfns.c (x_set_mouse_color): Get rif from the frame.
12763 (x_set_tool_bar_lines): Don't use updating_frame.
12764 (mac_window): Add 2 new parameters for consistency with other systems.
12765 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
12766 frame parameters following what is done in X11 and w32. Don't use
12767 FRAME_MAC_DISPLAY_INFO.
12768 (Fx_open_connection, start_hourglass): Remove window-system check.
12769 (x_create_tip_frame): Get the keyboard from the terminal.
12770
12771 * macmenu.c: Reorder includes.
12772 (Fx_popup_menu): Use terminal specific mouse_position_hook.
12773
12774 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
12775 terminal parameter.
12776 (x_clear_frame): Add a frame parameter.
12777 (note_mouse_movement): Get rif from the frame.
12778 (mac_term_init): Initialize the terminal.
12779 (mac_initialize): Make static and move terminal initialization ...
12780 (mac_create_terminal): ... to this new function.
12781
12782 * macterm.h (struct mac_display_info): Add terminal.
7196c970 12783 (mac_initialize): Delete declaration.
8d9cc0b7 12784
381864b2 12785 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
8d9cc0b7
MB
12786
12787 * sysdep.c: Comment out text after #endif.
12788
12789 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
12790 is defined. Better initialize ttys in windows. Use terminal
12791 specific mouse_position_hook.
12792
12793 * termhooks.h (union display_info): Add mac_display_info.
12794
b8866860
SM
12795 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
12796 Set the default minibuffer frame, window_system and the rest of the
8d9cc0b7
MB
12797 frame parameters following what is done in X11.
12798
12799 * w32term.c (w32_initialize): Make static.
12800
12801 * xselect.c (x_handle_selection_clear): Only access
12802 terminal->kboard when MULTI_KBOARD is defined.
12803
12804 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
12805 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
12806
128072007-08-29 Jason Rumney <jasonr@gnu.org>
12808
12809 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
12810 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
12811
12812 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
12813 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
12814
12815 * keyboard.c (restore_kboard_configuration): Only define when
12816 MULTI_KBOARD defined.
12817
35277b03 12818 * makefile.w32-in: Update dependancies from Makefile.in.
8d9cc0b7
MB
12819 (OBJ1): Add terminal.$(O)
12820
b8866860
SM
12821 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
12822 Don't define function body.
8d9cc0b7
MB
12823 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
12824
12825 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
12826
12827 * w32.c (request_sigio, unrequest_sigio): Remove.
12828
12829 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
12830 (w32con_clear_frame, w32con_clear_end_of_line)
12831 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
12832 (w32con_delete_glyphs, w32con_set_terminal_window)
12833 (scroll_line, w32_sys_ring_bell): Add frame arg.
b8866860
SM
12834 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
12835 Add terminal arg.
8d9cc0b7
MB
12836 (PICK_FRAME): Remove.
12837 (w32con_write_glyphs): Use frame specific terminal coding.
12838 (one_and_only_w32cons): New global variable.
12839 (initialize_w32_display): Use it for storing hooks.
12840 (create_w32cons_output): New function.
12841
12842 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
12843 arg a frame.
12844
b8866860
SM
12845 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
12846 Set window_system.
8d9cc0b7
MB
12847 (x_set_tool_bar_lines): Don't use updating_frame.
12848 (Fx_create_frame): Set terminal and ref count.
12849 (Fx_open_connection): Remove window-system check.
12850
12851 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
12852
12853 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
12854 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
12855 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
12856 Add frame arg.
12857 (x_delete_terminal, w32_create_terminal): New functions.
12858 (w32_term_init): Create a terminal.
12859 (w32_initialize): Move terminal specific initialization to
12860 w32_create_terminal.
12861
b8866860 12862 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
8d9cc0b7
MB
12863 (w32_clear_rect, w32_clear_area): Use background from frame.
12864 (w32_display_info): Add terminal.
12865 (w32_sys_ring_bell, x_delete_display): Declare here.
12866
12867 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
12868
12869 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
12870
128712007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
12872
12873 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
12874 Fix get_named_tty calls for the controlling tty.
12875
128762007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
12877
12878 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
12879
128802007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
12881
12882 * term.c (tty_insert_glyphs): Add missing first parameter.
12883
880820fe 128842007-08-29 Károly Lőrentey <karoly@lorentey.hu>
8d9cc0b7 12885
b8866860
SM
12886 * buffer.c (Fbuffer_list, Fbury_buffer):
12887 Take frame->buried_buffer_list into account.
8d9cc0b7
MB
12888
12889 * cm.c (current_tty): New variable, for cmputc().
12890 (cmputc): Use it.
12891 (cmcheckmagic): Add tty parameter, look up terminal streams there.
12892 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
b8866860
SM
12893 (cmgoto): Add tty parameter. Pass it on to calccost().
12894 Use emacs_tputs() instead of tputs().
8d9cc0b7
MB
12895
12896 * cm.h (emacs_tputs): New macro to set current_tty, and then call
12897 tputs().
12898 (current_tty): New variable, for cmputc().
12899 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
12900
12901 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
12902 (internal_condition_case, internal_condition_case_1)
12903 (internal_condition_case_2): Don't abort when x_catching_errors.
12904
12905 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
12906 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
12907 prevent crashes caused by bogus longjmps in read_char.
12908
12909 * keymap.h (Fset_keymap_parent): Add EXFUN.
12910
12911 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
12912 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
12913 Remove redundant definition.
12914
b8866860
SM
12915 * macfns.c (x_set_mouse_color, x_make_gc):
12916 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
8d9cc0b7 12917
b8866860
SM
12918 * w32term.c (x_free_frame_resources):
12919 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
8d9cc0b7
MB
12920 (w32_initialize): Use the accessor macros for terminal characteristics.
12921
12922 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
12923 Use the accessor macros for terminal characteristics.
12924 * msdos.c (internal_terminal_init): Use the accessor macros for
12925 terminal characteristics.
b8866860
SM
12926 (ScreenVisualBell, internal_terminal_init):
12927 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
8d9cc0b7
MB
12928
12929 * termopts.h (no_redraw_on_reenter): Declare.
12930
12931 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
03f06e5c 12932 (mark_terminals, mark_ttys): Declare.
8d9cc0b7 12933 (Fgarbage_collect): Call them.
03f06e5c 12934 (mark_object): Mark buried_buffer_list.
8d9cc0b7
MB
12935
12936 * prefix-args.c: Include stdlib.h for exit.
12937
12938 * syssignal.h: Add comment.
12939
12940 * indent.c: Include stdio.h.
12941
12942 * window.h (Vinitial_window_system): Declare.
12943 (Vwindow_system): Delete declaration.
12944
12945 * fontset.c (Finternal_char_font): Use FRAME_RIF.
12946
12947 * image.c (lookup_image): Don't initialize `c' until the xasserts
12948 have been run.
12949
12950 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
12951 FRAME_FOREGROUND_PIXEL.
12952
12953 * print.c (print_preprocess): Don't lose print_depth levels while
12954 iterating.
12955
b8866860
SM
12956 * widget.c (update_from_various_frame_slots):
12957 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
8d9cc0b7
MB
12958
12959 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
12960 frames.
12961 (window_internal_height): Remove bogus make_number call.
b8866860 12962 (init_window_once): Call make_terminal_frame with two zero parameters.
8d9cc0b7
MB
12963
12964 * fileio.c (Fread_file_name): Update comment.
12965
b8866860
SM
12966 * callint.c (Fcall_interactively):
12967 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
8d9cc0b7
MB
12968 Make sure it is correctly unwound.
12969
12970 * xsmfns.c (x_session_close): New function.
12971
03f06e5c 12972 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
8d9cc0b7
MB
12973 Delete declarations.
12974
12975 * xterm.h: Remove declaration for x_fully_uncatch_errors.
12976 (x_output): Remove background_pixel and foreground_pixel fields.
03f06e5c 12977 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
c3f9fba8 12978 (x_delete_device, x_session_close): Declare.
8d9cc0b7
MB
12979
12980 * lread.c: Include setjmp.h. Update declaration of `read_char'.
12981 (read_filtered_event): Call `read_char' with a local
12982 `wrong_kboard_jmpbuf'.
12983
b8866860
SM
12984 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
12985 Don't call single_kboard_state. Use FRAME_RIF.
8d9cc0b7
MB
12986
12987 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
12988 systems.
12989
b8866860 12990 * lisp.h (set_process_environment): Rename to `set_global_environment'.
03f06e5c 12991 (Fframe_with_environment, Fset_input_meta_mode)
8d9cc0b7 12992 (Fset_quit_char): EXFUN.
03f06e5c 12993 (x_create_device, tty_output, terminal, tty_display_info): Declare.
8d9cc0b7
MB
12994 (init_sys_modes, reset_sys_modes): Update prototypes.
12995 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
12996
b8866860
SM
12997 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
12998 Vlocal_key_translation_map, and Vkeyboard_translate_table.
03f06e5c 12999 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
8d9cc0b7 13000 Delete declarations.
03f06e5c
JB
13001 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
13002 (temporarily_switch_to_single_kboard, tty_read_avail_input):
8d9cc0b7
MB
13003 New declarations.
13004
13005 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
13006 already does that during init_display(). Call syms_of_keymap
b8866860
SM
13007 before syms_of_keyboard. Call `syms_of_terminal'.
13008 Call set_initial_environment, not set_process_environment.
8d9cc0b7
MB
13009 (shut_down_emacs): Call reset_all_sys_modes() instead of
13010 reset_sys_modes().
13011
13012 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
03f06e5c
JB
13013 (internal_resolve_face_name, resolve_face_name_error): New functions.
13014 (resolve_face_name): Protect against loops and errors thrown by Fget.
13015 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
8d9cc0b7
MB
13016 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
13017
13018 * scroll.c: Replace CURTTY() with local variables throughout the
13019 file (where applicable).
13020 (calculate_scrolling, calculate_direct_scrolling)
13021 (scrolling_1, scroll_cost): Use the accessor macros for terminal
13022 characteristics.
13023
13024 * keymap.c (Vfunction_key_map): Remove.
b8866860 13025 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
8d9cc0b7
MB
13026 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
13027 (Vkey_translation_map): Remove.
13028 (syms_of_keymap): Remove DEFVAR for key-translation-map.
c3f9fba8 13029 (Fdescribe_buffer_bindings)
8d9cc0b7
MB
13030 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
13031 Update for terminal-local key-translation-map.
13032
13033 * Makefile.in (callproc.o): Update dependencies.
13034 (lisp, shortlisp): Add termdev.elc.
13035 (obj): Add terminal.o.
13036 (terminal.o): Add dependencies.
13037 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
13038 (data.o, fns.o): Add termhooks.h dependency.
13039 (SOME_MACHINE_LISP): Add dnd.elc.
13040 (minibuf.o): Fix typo.
13041 Update dependencies.
13042
13043 * data.c (do_symval_forwarding, store_symval_forwarding)
13044 (find_symbol_value): Use the selected frame's keyboard, not
13045 current_kboard.
13046
13047 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
13048 Vwindow_system.
13049
13050 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
13051 Fmenu_bar_open.
13052 (syms_of_xmenu): Update defsubr.
13053 (mouse_position_for_popup, Fx_popup_menu)
13054 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
13055 (set_frame_menubar, free_frame_menubar)
13056 (create_and_show_popup_menu, xmenu_show, )
13057 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
13058 an X frame.
13059
13060 * xselect.c (x_own_selection): Abort if not an X frame.
13061 (some_frame_on_display): Check if it is an X frame.
13062 (x_handle_selection_clear): Deal with MULTI_KBOARD.
13063
13064 * coding.c: Include frame.h and termhooks.h.
03f06e5c 13065 (terminal_coding, keyboard_coding): Delete.
c3f9fba8
JB
13066 (Fset_terminal_coding_system_internal)
13067 (Fset_keyboard_coding_system_internal)
13068 (Fkeyboard_coding_system)
03f06e5c
JB
13069 (Fterminal_coding_system): Add a terminal parameter.
13070 Get terminal_coding from the terminal.
8d9cc0b7
MB
13071 (init_coding_once): Don't call setup_coding_system here.
13072
13073 * dispextern.h (set_scroll_region, turn_off_insert)
13074 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
13075 (tty_clear_end_of_line, tty_setup_colors)
03f06e5c 13076 (delete_tty, updating_frame)
8d9cc0b7
MB
13077 (produce_special_glyphs, produce_glyphs, write_glyphs)
13078 (insert_glyphs): Remove.
13079 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
03f06e5c 13080 (tty_turn_off_highlight, get_tty_size): Add declaration.
b8866860 13081 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
8d9cc0b7
MB
13082
13083 * frame.h (enum output_method): Add output_initial.
13084 (struct x_output): Delete.
b8866860
SM
13085 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
13086 Access foreground_pixel and background_pixel directly from the frame.
8d9cc0b7
MB
13087 (tty_display): Delete.
13088 (struct frame): Add buried_buffer_list, foreground_pixel,
1f204af3 13089 background_pixel and terminal. Delete kboard.
8d9cc0b7
MB
13090 (union output_data): Add tty.
13091 (FRAME_KBOARD): Get the kboard from the terminal.
13092 (FRAME_INITIAL_P): New macro.
13093 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
13094 (Qterm_environment_variable, Qdisplay_environment_variable)
b8866860
SM
13095 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
13096 New declarations.
8d9cc0b7
MB
13097
13098 * termchar.h (tty_output, tty_display_info): New structures.
13099 (tty_list): Declare.
13100 (FRAME_TTY, CURTTY): New macros.
13101 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
13102 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
13103 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
13104 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
13105
13106 * callproc.c: Include frame.h and termhooks.h, for terminal
13107 parameters.
13108 (add_env): New function.
13109 (child_setup): Use it.
b8866860 13110 (child_setup, getenv_internal): Handle the new Vprocess_environment.
8d9cc0b7
MB
13111 (getenv_internal): Fix get_terminal_param call.
13112 (Fgetenv_internal, egetenv): Update doc.
13113 (syms_of_callproc): Initialize Vprocess_environment to nil.
03f06e5c 13114 Register and initialize them. Remove obsolete defvars. Update doc
8d9cc0b7
MB
13115 strings.
13116 (child_setup): Handle Vlocal_environment_variables.
b8866860
SM
13117 (getenv_internal): Add terminal parameter.
13118 Handle Vlocal_environment_variables.
8d9cc0b7
MB
13119 (Fgetenv_internal): Add terminal parameter.
13120 (child_setup, getenv_internal, Fgetenv_internal): Store the local
b8866860 13121 environment in a frame (not terminal) parameter. Update doc strings.
8d9cc0b7
MB
13122 (set_initial_environment): Rename from set_global_environment.
13123 Store Emacs environment in initial frame parameter.
13124
13125 * xdisp.c (redisplay_internal): Update references to
13126 `previous_terminal_frame'.
13127 (display_mode_line, Fformat_mode_line): Replace calls to
13128 `push_frame_kboard' with `push_kboard'.
13129 (get_glyph_string_clip_rects): Add extra parentheses and
13130 braces to prevent compiler warnings.
13131 (calc_pixel_width_or_height): Add xassert to check that the
13132 frame is alive. Don't call `lookup_image' on a termcap frame.
13133 (message2_nolog, message3_nolog, redisplay_internal)
13134 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
13135 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
13136 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
13137 (Fx_display_pixel_width, Fx_display_pixel_height)
13138 (Fx_display_planes, Fx_display_color_cells)
13139 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
13140 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
13141 (Fx_display_backing_store, Fx_display_visual_class)
13142 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
97ddc760 13143 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
8d9cc0b7
MB
13144
13145 * xfns.c (x_set_foreground_color x_set_background_color)
b8866860
SM
13146 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
13147 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
8d9cc0b7
MB
13148 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
13149 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
13150 terminal that is being deleted.
13151 (Fx_create_frame): Use `store_frame_param' to set `window-system'
b8866860 13152 frame parameter, and make sure it overrides any user-supplied setting.
8d9cc0b7
MB
13153 (Fx_close_connection, Fx_synchronize): Unify argument names with
13154 the rest of the DEFUNs.
13155
13156 * dispnew.c (Fsend_string_to_terminal): Update call to
13157 `get_tty_terminal'.
13158 (Fredraw_frame, Fsend_string_to_terminal)
2d33f506 13159 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
8d9cc0b7
MB
13160 FRAME_TERMCAP_P and FRAME_TTY.
13161 (window_change_signal): Don't believe width/height values that are
13162 impossibly small.
13163 (Vinitial_window_system): Rename from Vwindow_system.
13164 (termscript, Wcm, rif): Delete.
13165
13166 * termhooks.h (struct terminal): New struct containing the
13167 previously global text display hooks and new members NAME,
13168 DELETED and PARAM_ALIST.
13169 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
13170 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
13171 (FRAME_RIF): New macros.
13172 (get_terminal_param, get_device): New declarations.
13173 (termscript): Delete declaration.
13174
13175 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
13176 (XTflash, x_free_frame_resources, x_scroll_bar_create)
13177 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
13178 FRAME_FOREGROUND_PIXEL.
13179 (x_fully_uncatch_errors): Disable definition.
13180 (x_scroll_bar_expose): Fix reference to foreground pixel.
13181 (XTread_socket): Disable loop on all X displays.
13182 (x_delete_terminal): Don't set terminal->deleted and let
13183 delete_terminal delete the frames on the terminal.
13184 (x_delete_display): Doc update to reflect changes in
13185 delete_terminal.
13186 (x_display_info) <terminal>: Move member earlier in the struct.
8d9cc0b7
MB
13187 (deleting_tty): Remove old variable.
13188 (Fsuspend_tty): Call clear_tty_hooks.
13189 (Fresume_tty, init_tty): Call set_tty_hooks.
8d9cc0b7
MB
13190 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
13191 errors on X frames.
13192 (x_catch_errors_unwind): Abort if x_error_message is NULL.
13193 (handle_one_xevent): Initialize `f' to NULL.
9cab96b0 13194 (x_delete_terminal, x_create_terminal): New functions.
8d9cc0b7
MB
13195 (XTset_terminal_modes, XTreset_terminal_modes)
13196 (XTread_socket, x_connection_closed, x_term_init)
13197 (x_term_init, x_delete_display): Add terminal parameter.
13198 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
13199 X connections.
13200
bf380f53
GM
13201 * frame.c: Include termchar.h.
13202 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
13203 (Qwindow_system, Qenvironment, Qterm_environment_variable)
13204 (Qdisplay_environment_variable): New vars.
13205 (Fframep): Deal with output_initial.
13206 (Fframe-live-p): Doc fix.
13207 (Fwindow-system): New function.
8d9cc0b7
MB
13208 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
13209 (make_terminal_frame): Don't create frames on a terminal that is
bf380f53 13210 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
b8866860 13211 (store_frame_param): Check for found_for_frame before calling XFRAME.
8d9cc0b7
MB
13212 (Fmake_terminal_frame): Handle NULL tty names correctly.
13213 (syms_of_frame): Enhance doc string of `default-frame-alist'.
bf380f53
GM
13214 (Fdelete_frame): Remove unused variable `count'. Don't allow other
13215 frames to refer to a deleted frame in their 'environment parameter.
8d9cc0b7 13216 (Fframe_with_environment): New function.
b8866860 13217 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
8d9cc0b7
MB
13218 (get_future_frame_param): New function.
13219 (Fmake_terminal_frame): Use it.
2d33f506 13220 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
8d9cc0b7
MB
13221
13222 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
13223 * sysdep.c (reset_sys_modes): Update for renames.
13224
13225 * keyboard.c (tty_read_avail_input): New function.
03f06e5c 13226 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
8d9cc0b7
MB
13227 (syms_of_keyboard): Defsubr them.
13228 (Fset_input_meta_mode, Fset_quit_char): New functions.
13229 (Fset_input_mode): Split to above functions.
8d9cc0b7
MB
13230 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
13231 parameter. Use it in call to `read_char'.
b8866860
SM
13232 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
13233 Set wrong_kboard_jmpbuf correctly in recursive calls.
13234 Use current_kboard to access Vkeyboard_translate_table.
13235 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
13236 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
13237 Update longjmp invocations. Remember the original current_kboard,
13238 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
13239 changes it. Comment out unnecessary calls to
13240 `record_single_kboard_state' and `any_kboard_state'.
13241 Update recursive calls.
8d9cc0b7
MB
13242 (wrong_kboard_jmpbuf): Remove global variable.
13243 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
13244 Handle deleted interrupted_kboards correctly; that is a legal
13245 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
b8866860 13246 and read_char calls. Abort if interrupted_kboard died in read_char.
8d9cc0b7
MB
13247 (any_kboard_state, single_kboard_state)
13248 (push_frame_kboard): Remove function.
13249 (pop_kboard): Switch out of single_kboard mode if the kboard has
03f06e5c
JB
13250 been deleted. Remove unused variable. Help debugging by not
13251 changing current_kboard unnecessarily. Set current_kboard to the
8d9cc0b7
MB
13252 kboard of the selected frame when the stored kboard object has
13253 been deleted before pop_kboard.
13254 (temporarily_switch_to_single_kboard): Change first parameter to a
13255 frame pointer. Throw an error when caller wants to change kboards
13256 while in single_kboard mode. Don't push_kboard if we weren't in
13257 single kboard state. Don't pop_kboard if we popped into any
13258 kboard state.
13259 (restore_kboard_configuration): Abort if pop_kboard changed the
03f06e5c 13260 kboard in single_kboard mode. Call pop_kboard only after setting
8d9cc0b7
MB
13261 up single_kboard mode.
13262 (Frecursive_edit): Switch to single_kboard mode only in nested
13263 command loops.
b8866860
SM
13264 (cmd_error, command_loop, command_loop_1, timer_check):
13265 Comment out unnecessary call to `any_kboard_state' and
8d9cc0b7
MB
13266 `record_single_kboard_state'.
13267 (delete_kboard): Exit single_kboard mode if we have just deleted
03f06e5c 13268 that kboard. Use FRAME_KBOARD.
8d9cc0b7
MB
13269 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
13270 `fatal_error_signal'.
13271 (record_single_kboard_state): Don't push_kboard if we weren't in
13272 single kboard state. Don't pop_kboard if we popped into any
13273 kboard state.
13274 (push_frame_kboard): Rename to push_kboard.
13275 (kbd_buffer_get_event): Use FRAME_TERMINAL.
13276 (read_avail_input): Read input from all terminals.
13277 (mark_kboards): Also mark Vkeyboard_translate_table.
13278 (kbd_buffer_store_event_hold): Simplify condition.
13279 (read_key_sequence): Reinitialize fkey and keytran at each replay.
13280 (Vkeyboard_translate_table): Move to struct kboard.
13281 (init_kboard): Initialize Vkeyboard_translate_table.
13282 (syms_of_keyboard): Use DEFVAR_KBOARD to define
13283 Vkeyboard_translate_table. Update doc strings. Update docs of
13284 local-function-key-map and function-key-map.
13285
13286 * terminal.c: New file.
13287
13288 * term.c: Include errno.h.
13289 (Vring_bell_function, device_list, initial_device)
13290 (next_device_id, ring_bell, update_begin, update_end)
13291 (set_terminal_window, cursor_to, raw_cursor_to)
13292 (clear_to_end, clear_frame, clear_end_of_line)
13293 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
13294 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
13295 (syms_of_term): Move their initialization to terminal.c.
13296 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
13297 (Ftty_display_color_cells)
13298 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
9cab96b0 13299 (clear_tty_hooks, set_tty_hooks)
8d9cc0b7
MB
13300 (init_tty, maybe_fatal): New functions.
13301 (Ftty_type): Return nil if terminal is not on a tty instead of
13302 throwing an error. Doc update.
13303 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
03f06e5c 13304 Doc update. Initialize new subrs and variables.
8d9cc0b7
MB
13305 (delete_tty): Use terminal->deleted.
13306 (tty_set_terminal_modes): Rename from set_terminal_modes.
13307 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
13308 (set_scroll_region): Rename to `tty_set_scroll_region'.
13309 (turn_on_insert): Rename to `tty_turn_on_insert'.
13310 (turn_off_insert): Rename to `tty_turn_off_insert'.
13311 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
13312 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
13313 (toggle_highligh): Rename to `tty_toggle_highlight'.
13314 (background_highlight): Rename to `tty_background_highlight'.
13315 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
13316 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
13317 (tty_set_scroll_region, tty_background_highlight)
13318 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
13319 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
13320 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
13321 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
13322 Add static modifier.
13323 (tty_reset_terminal_modes, tty_set_terminal_window)
13324 (tty_set_scroll_region, tty_background_highlight)
13325 (tty_highlight_if_desired, tty_cursor_to)
13326 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
13327 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
13328 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
13329 renames.
13330
880820fe 133312007-08-28 Jan Djärv <jan.h.d@swipnet.se>
cf0590c4
JD
13332
13333 * keyboard.c: Qrtl is new.
13334 (parse_tool_bar_item): Handle :rtl keyword.
13335 (syms_of_keyboard): Intern :rtl keyword.
13336
13337 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
13338
13339 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
13340 so no Lisp code is executed.
13341 (file_for_image, find_rtl_image): New functions.
1f204af3 13342 (xg_get_image_for_pixmap): Use file_for_image.
cf0590c4
JD
13343 (update_frame_tool_bar): If direction is RTL, use RTL image if
13344 defined. Use Gtk stock images if defined.
13345
83cc8d35
YM
133462007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13347
13348 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
13349 for nonexistent or zero-width glyph in composition glyph.
13350
e60c4e15
SM
133512007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
13352
d7e2a28f
SM
13353 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
13354
e60c4e15
SM
13355 * xdisp.c (Finvisible_p): New function.
13356 (syms_of_xdisp): defsubr it.
13357
ee163e6d
JB
133582007-08-24 Juanma Barranquero <lekktu@gmail.com>
13359
13360 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
13361 Doc fixes.
13362
90fa408d
YM
133632007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13364
35277b03 13365 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
90fa408d 13366
cac4219c
MR
133672007-08-24 Martin Rudalics <rudalics@gmx.at>
13368
13369 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
13370 whether decoding has modified buffer contents.
13371
5fc9fdeb
JR
133722007-08-24 Jason Rumney <jasonr@gnu.org>
13373
13374 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
13375 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
13376 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
13377 (init_svg_functions) [HAVE_NTGUI]: New function.
13378 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
13379 (svg_load_image): Use them.
13380 (svg_load_image) [HAVE_NTGUI]: Implement background.
13381
93b23406
YM
133822007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13383
13384 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
13385 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
13386 (LIBX): Remove @RSVG_LIBS@.
13387 (LIBES): Add $(RSVG_LIBS).
13388
13389 * image.c (svg_load_image): Blend with specified background if exists.
13390 Use IMAGE_BACKGROUND. Add Mac OS Support.
13391
13392 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
13393 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
13394 Remove macros.
13395 [MAC_OSX] (socket_callback): Do nothing.
13396 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
13397 ReceiveNextEvent.
13398 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
13399 socket_callback.
13400 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
13401
2467875c
GM
134022007-08-22 Glenn Morris <rgm@gnu.org>
13403
ff8da443 13404 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
2467875c 13405
4ab27a43
GM
134062007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
13407
13408 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
ff8da443 13409
666e0eda
GM
13410 * image.c: Add support for SVG images. Some additional comments
13411 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
13412 (svg_image_p): New function to test for SVG image.
13413 (svg_load): New function to load SVG image.
13414 (svg_load_image): New function, helper for svg_load.
13415 (Qsvg): New Lisp_object.
13416 (svg_keyword_index): New enum.
13417 (svg_format): New static `image_keyword' struct.
13418 (svg_type): New static `image_type' struct.
13419 (librsvg/rsvg.h): Include it.
4ab27a43 13420
b636b4c1
SM
134212007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
13422
13423 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
13424
9ecb827b
SM
134252007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
13426
1d064697
SM
13427 * lread.c (Qold_style_backquotes): New var.
13428 (syms_of_lread): Init and staticpro it.
13429 (load_warn_old_style_backquotes): New fun.
13430 (Fload): Use them to warn about old style backquotes.
13431 (end_of_file_error, Fload): Remove unused vars.
13432
5772ed4b
SM
13433 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
13434
9ecb827b 13435 * lread.c (Vold_style_backquotes): New var.
5aa273b0 13436 (syms_of_lread): Init and export it to Elisp.
9ecb827b
SM
13437 (read1): Set it when we find an old-style (back)quote.
13438
32e1c7b1
JR
134392007-08-22 Jason Rumney <jasonr@gnu.org>
13440
13441 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
13442
b8fa755b
KY
134432007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
13444
13445 * puresize.h (BASE_PURESIZE): Increase to 1140000.
13446
1283140e
RS
134472007-08-19 Richard Stallman <rms@gnu.org>
13448
13449 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
13450
2c4685ee
AS
134512007-08-19 Andreas Schwab <schwab@suse.de>
13452
13453 * alloc.c (pure): Round PURESIZE up.
13454
880820fe 134552007-08-17 Jan Djärv <jan.h.d@swipnet.se>
e8953ebf
JD
13456
13457 * xterm.c (handle_one_xevent): Remove check that mouse click is in
13458 active frame.
13459
6e33efc4
RS
134602007-08-16 Richard Stallman <rms@gnu.org>
13461
13462 * eval.c (Fcommandp): Add parens to clarify.
13463
13464 * minibuf.c (Fall_completions): Use enum for type of table.
13465
13466 * emacs.c (USAGE2): Improve text.
13467
fcf8ff2e
GM
134682007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
13469
5205ee62
GM
13470 * term.c (tty_default_color_capabilities): Declare static
13471 variables in file scope, to avoid HPUX compiler problem.
fcf8ff2e 13472
880820fe 134732007-08-13 Jan Djärv <jan.h.d@swipnet.se>
81d13a51
JD
13474
13475 * gtkutil.c (update_frame_tool_bar): Use -1 as index
13476 to gtk_toolbar_insert.
13477
4a181359
SM
134782007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
13479
1bc99c9c
SM
13480 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
13481
4a181359
SM
13482 * insdel.c (reset_var_on_error): New fun.
13483 (signal_before_change, signal_after_change):
13484 Use it to reset (after|before)-change-functions to nil in case of error.
13485 Bind inhibit-modification-hooks to t.
13486 Don't bind (after|before)-change-functions to nil while they run.
13487
6c28435c
YM
134882007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13489
13490 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
13491 filling pixmap with stippled background.
13492
ad3b3e02
YM
134932007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13494
13495 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
13496 Don't use invisible frame as parent window for repositioning.
13497
a22dec27
SM
134982007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
13499
13500 * print.c (new_backquote_output): Rename from old_backquote_output.
13501 (print): Inverse its logic (according to its name) so as to match the
13502 behavior of new_backquote_flag in lread.c.
13503
7b7d07bb
YM
135042007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13505
13506 * gmalloc.c (posix_memalign): New function.
13507
13508 * macterm.c (frame_highlight, frame_unhighlight): Don't call
13509 ActivateControl/DeactivateControl here.
13510 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
13511 frame-notice-user-settings is non-nil.
13512 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
13513 for kEventParamFMFontStyle.
13514 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
13515 mac_pass_command_to_system and mac_pass_control_to_system here.
13516 (XTread_socket): Call ActivateControl/DeactivateControl here.
13517 (XTread_socket) [TARGET_API_MAC_CARBON]:
13518 Check mac_pass_command_to_system and mac_pass_control_to_system here.
f9426479
YM
13519 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
13520 for window repositioning.
7b7d07bb 13521
22e9fe24
GM
135222007-08-08 Glenn Morris <rgm@gnu.org>
13523
13524 * Replace `iff' in doc-strings and comments.
13525
ae494350
CY
135262007-08-07 Chong Yidong <cyd@stupidchicken.com>
13527
13528 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
13529
6f2528d8
MR
135302007-08-07 Martin Rudalics <rudalics@gmx.at>
13531
13532 * fileio.c (Finsert_file_contents): Run format-decode and
13533 after_insert_file_functions on entire buffer when REPLACE is
13534 non-nil and inhibit modification_hooks and point_motion_hooks.
13535 For consistency, run after_insert_file_functions iff something
13536 got inserted. Move signal_after_change and update_compositions
13537 after code running after_insert_file_functions. Make sure that
6b8e474c 13538 undo_list doesn't record intermediate steps of the decoding process.
6f2528d8 13539
3ceeb306
YM
135402007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13541
13542 * emacs.c (main)
13543 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
13544 Call malloc_enable_thread on interactive startup.
13545
13546 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
7b7d07bb
YM
13547 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
13548 [USE_PTHREAD]: Conditionalize with it.
3ceeb306
YM
13549 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
13550 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
13551 New functions.
13552
ca5e6fd5
CY
135532007-08-06 Chong Yidong <cyd@stupidchicken.com>
13554
32bfce5d
CY
13555 * xdisp.c (redisplay_window): When restoring original buffer
13556 position, make sure it is still valid.
13557
ca5e6fd5
CY
13558 * image.c (png_load): Ignore png-supplied background color.
13559
a5b11587
YM
135602007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13561
13562 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
13563 Use kCFAbsoluteTimeIntervalSince1970.
13564
13565 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
13566 New variable.
13567 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
13568 event loop should be quit.
13569 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
13570 Quit dialog event loop if quit_dialog_event_loop is set.
13571
13572 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
13573 (Selection): New typedef. Use instead of ScrapRef.
13574 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
13575 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
13576 (mac_clear_selection): Rename from clear_scrap.
13577 (get_flavor_type_from_symbol): New argument SEL and subsume function of
ff8da443 13578 scrap_has_target_type. All uses changed.
a5b11587
YM
13579 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13580 (mac_selection_has_target_p): New functions.
13581 (mac_put_selection_value): Rename from put_scrap_string.
13582 (mac_get_selection_value): Rename from get_scrap_string.
13583 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
13584 (put_scrap_private_timestamp, scrap_has_target_type)
13585 (get_scrap_private_timestamp): Remove functions.
13586 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
13587 (x_own_selection, x_get_local_selection):
13588 Use mac_valid_selection_value_p.
13589 (x_own_selection): Don't use put_scrap_private_timestamp.
13590 Record OWNERSHIP-INFO into Vselection_alist instead.
13591 (x_get_local_selection): Don't check type if request is local.
13592 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
13593 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
13594
880820fe 135952007-08-04 Jan Djärv <jan.h.d@swipnet.se>
991bde0d
JD
13596
13597 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
13598 add comment explaining why.
13599
73ff9d42
RS
136002007-08-03 Richard Stallman <rms@gnu.org>
13601
13602 * fileio.c (Fvisited_file_modtime): Use make_time.
13603
54ed9a2d 136042007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
cdf5c17a
VJL
13605
13606 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
13607 build.
13608
65a9c8e2
SM
136092007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
13610
13611 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
13612
c5925799
KY
136132007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
13614
13615 * puresize.h (BASE_PURESIZE): Increase to 1130000.
13616
adef3de7
RS
136172007-07-30 Richard Stallman <rms@gnu.org>
13618
13619 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
13620
880820fe 136212007-07-29 Jan Djärv <jan.h.d@swipnet.se>
784c1472
JD
13622
13623 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
13624
a10421a1
NR
136252007-07-28 Nick Roberts <nickrob@snap.net.nz>
13626
13627 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
13628 remote default-directory.
13629
13630 * buffer.c (mode-line-format): Update doc string.
13631
0cb1ae20
YM
136322007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13633
13634 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
13635 scroll bar gap.
13636 (x_scroll_bar_create): Set bar->fringe_extended_p.
13637 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
13638 on frame edge. Check fringe background extension. Don't clear
13639 extended fringe background area.
13640
13641 * w32term.h (struct scroll_bar): New member fringe_extended_p.
13642 (w32_fill_area): Enclose multiple statements with do ... while (0).
13643
13644 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
13645 Extend fringe background to scroll bar gap.
13646 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
13647 Set bar->fringe_extended_p.
13648 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
13649 Put leftmost/rightmost scroll bars on frame edge. Check fringe
13650 background extension. Don't clear extended fringe background area.
13651
13652 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
13653 New member fringe_extended_p.
13654
cacc7b51
GM
136552007-07-25 Glenn Morris <rgm@gnu.org>
13656
13657 * Relicense all FSF files to GPLv3 or later.
13658
13659 * COPYING: Switch to GPLv3.
13660
89835619
SM
136612007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
13662
c4f46926
SM
13663 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
13664
13665 * data.c (Finteractive_form): Check for the presence of an
13666 `interactive-form' symbol property more thoroughly.
13667
13668 * data.c (Finteractive_form): Use an `interactive-form' property if
89835619
SM
13669 present, analogous to the function-documentation property.
13670
ee04257d
JR
136712007-07-24 Jason Rumney <jasonr@gnu.org>
13672
13673 * w32fns.c (x_real_positions): Get real position from OS instead of
13674 calculating it.
13675
50624218
JR
136762007-07-23 Jason Rumney <jasonr@gnu.org>
13677
13678 * filelock.c (current_lock_owner): Allow for @ sign in username.
13679
3650f60e
NR
136802007-07-22 Nick Roberts <nickrob@snap.net.nz>
13681
13682 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
13683 remote default-directory.
13684
13685 * buffer.c (mode-line-format): Describe above case in doc string.
13686
1e899515 136872007-07-20 Eli Zaretskii <eliz@gnu.org>
b395d6e1 13688
75be5258
EZ
13689 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
13690 Define if not defined.
13691
2b6e2f4d
JR
136922007-07-18 Jason Rumney <jasonr@gnu.org>
13693
13694 * w32proc.c (w32_executable_type): Handle 64 bit executables.
13695
23dacf80
JB
136962007-07-18 Richard Stallman <rms@gnu.org>
13697
13698 * data.c (Fsetq_default): Doc fix.
13699
13700 * eval.c (Fsetq): Doc fix.
13701
137022007-07-18 Juanma Barranquero <lekktu@gmail.com>
13703
13704 * coding.c (Ffind_operation_coding_system):
13705 * eval.c (For, Fand): Doc fixes.
880820fe 13706 Reported by Johan Bockgård.
23dacf80 13707
880820fe 137082007-07-18 Jan Djärv <jan.h.d@swipnet.se>
656de71a 13709
23dacf80 13710 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
656de71a 13711
23dacf80 13712 * xterm.h: Declare x_ewmh_activate_frame.
656de71a
JD
13713
13714 * xterm.c (x_ewmh_activate_frame): New function.
13715 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
13716
71ec17e6
MR
137172007-07-17 Martin Rudalics <rudalics@gmx.at>
13718
13719 * window.c (Fdisplay_buffer): If largest or LRU window is the
13720 only window, split it even if it is not eligible for splitting.
13721 This restores the original behavior broken by the 2007-07-15
13722 change.
13723
e9818042
GM
137242007-07-17 Glenn Morris <rgm@gnu.org>
13725
13726 * abbrev.c (abbrev_check_chars): New function.
6b8e474c
SM
13727 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13728 Call abbrev_check_chars to check abbrev characters are word
e9818042
GM
13729 constituents. Doc fix.
13730
e6fca843
SM
137312007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
13732
13733 * process.c (Fstart_process, Fmake_network_process)
13734 (read_process_output): Fix up last changes.
13735
b5d2b4ab
EZ
137362007-07-16 Eli Zaretskii <eliz@gnu.org>
13737
13738 * makefile.w32-in (clean): Don't delete *~.
13739
413a79ad
AS
137402007-07-16 Andreas Schwab <schwab@suse.de>
13741
13742 * window.c (Fdisplay_buffer): Use NILP.
13743 (Fset_window_scroll_bars): Likewise.
13744
f1de8c77
MR
137452007-07-15 Martin Rudalics <rudalics@gmx.at>
13746
13747 * window.c (window_min_size_2): New function.
13748 (window_min_size_1, size_window, Fdisplay_buffer)
13749 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
13750 windows without mode- or header-lines when window-min-height is
13751 too small.
13752 (size_window): Reset nodelete_p after testing it, following an
13753 earlier note by Kim F. Storm.
13754 (display_buffer): Do not set split_height_threshold to twice the
13755 value of window_min_height to avoid changing the value of a
13756 customizable variable. Rather explicitly check whether the
13757 height of the window that shall be splitted is at least as large
13758 as split_height_threshold.
1af74d06
MB
13759 (Fwindow_full_width_p): New defun.
13760 (syms_of_window): Defsubr it.
d31053f9 13761
1af74d06 13762 * window.h: Add EXFUN for Fwindow_full_width_p.
f1de8c77 13763
5e1ab613
JR
137642007-07-14 Jason Rumney <jasonr@gnu.org>
13765
13766 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
13767
f01cbfdd
RS
137682007-07-14 Richard Stallman <rms@gnu.org>
13769
13770 * eval.c (maybe_call_debugger): New function.
13771 (find_handler_clause): Use maybe_call_debugger.
13772 Call it when the handler says `debug'.
13773 Eliminate DEBUGGER_VALUE_PTR.
13774 (Fsignal): Eliminate debugger_value.
13775 (Qdebug): New variable.
13776 (syms_of_eval): Initialize it.
13777
1bab435a
JB
137782007-07-14 Juanma Barranquero <lekktu@gmail.com>
13779
13780 * eval.c (Fprogn):
13781 * keyboard.c (Ftrack_mouse):
13782 * print.c (Fwith_output_to_temp_buffer):
13783 * window.c (Fsave_window_excursion): Doc fix.
13784
be436d23
SM
137852007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
13786
13787 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
13788
60f0fb11
SM
137892007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
13790
13791 * process.h (struct Lisp_Process): Turn slots infd, outfd,
13792 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
13793 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
13794 read_output_delay, and read_output_skip from Lisp_Objects to ints.
13795 Remove unused encoding_carryover.
13796 * process.c: Adjust all functions accordingly.
13797
d8b18043
RS
137982007-07-12 Richard Stallman <rms@gnu.org>
13799
13800 * term.c: Include unistd.h only if HAVE_UNISTD_H.
13801
d5781bb6
JR
138022007-07-11 Jason Rumney <jasonr@gnu.org>
13803
13804 * makefile.w32-in (LIBS): Include OLE32.
13805
13806 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
13807 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
13808
5bb7dfee
SM
138092007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
13810
13811 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
13812 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
13813 from a Lisp_Object into a bare pointer.
13814 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13815 Adjust the code correspondingly.
13816
13817 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
13818
13819 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
13820 (term_show_mouse_face): Remove unused var `j'.
13821 (handle_one_term_event): Remove unused vars `i' and `j'.
13822 Don't cast return value of ttyname since it's not necessary.
13823
a1be1ce8
SM
138242007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
13825
5045e68e
SM
13826 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
13827 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
13828
8071c00f
SM
13829 * fns.c (map_char_table): Use an array of int for `indices' rather than
13830 an array of Lisp_Objects (which are only ever integers anyway).
13831 (Fmap_char_table): Update caller.
13832 * lisp.h: Update prototype.
13833 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
13834 * fontset.c (Ffontset_info):
13835 * casetab.c (set_case_table): Update callers.
13836
13837 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
13838
fab84e3c
SM
13839 * keymap.c (struct accessible_keymaps_data)
13840 (struct where_is_internal_data): New structures.
13841 (accessible_keymaps_1, where_is_internal_1): Use them to change
13842 interface to adhere to the one used by map_keymap.
13843 (Faccessible_keymaps, where_is_internal): Use map_keymap.
13844 (accessible_keymaps_char_table, where_is_internal_2): Remove.
13845
a1be1ce8
SM
13846 * keymap.h (map_keymap_function_t): More informative prototype.
13847
ef887810
RS
138482007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
13849
13850 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
13851 (looking_at_1): Don't change search_regs and last_thing_searched
13852 if `inhibit-changing-match-data' is non-nil.
13853 (string_match_1, search_buffer, set_search_regs): Likewise.
13854 (syms_of_search): Add Lisp level definition for
13855 `inhibit-changing-match-data' and set it to nil.
8071c00f
SM
13856 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
13857 start and end of the match, instead of using values in search_regs.
ef887810 13858
4d02fc25
SM
138592007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
13860
13861 * minibuf.c (Fcompleting_read): New value `confirm-only'
13862 for `require-match'.
13863
fe45b81f
SM
138642007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
13865
13866 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
13867 part of the 2007-06-27 change to syms_of_fileio.
13868
a56dd283
YM
138692007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13870
13871 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
13872 Check WINDOWP before using XWINDOW. Consolidate return statements.
13873
0cf9f5b5
RS
138742007-06-27 Richard Stallman <rms@gnu.org>
13875
13876 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13877
a66f285a
JB
138782007-06-27 Juanma Barranquero <lekktu@gmail.com>
13879
13880 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
13881
8d0d84d2
YM
138822007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13883
13884 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
13885 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
13886 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
13887 (_free_internal, memalign): Use them.
13888 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
13889 Initialize to PTHREAD_MUTEX_INITIALIZER.
13890 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
13891 (morecore_nolock): Rename from morecore. All uses changed.
13892 Use only nolock versions of internal allocation functions.
13893 (_malloc_internal_nolock, _realloc_internal_nolock)
13894 (_free_internal_nolock): New functions created from
13895 _malloc_internal, _realloc_internal, and _free_internal.
13896 (_malloc_internal, _realloc_internal, _free_internal): Use them.
13897 Copy hook value to automatic variable before its use.
13898 (memalign): Copy hook value to automatic variable before its use.
13899
5a0bbd9a
KH
139002007-06-26 Kenichi Handa <handa@m17n.org>
13901
13902 * coding.c (Ffind_operation_coding_system): Docstring improved.
13903 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
13904
9a51747b
DK
139052007-06-25 David Kastrup <dak@gnu.org>
13906
13907 * keymap.c (Fcurrent_active_maps): Add `position' argument.
13908 (Fwhere_is_internal): Adjust call to `current-active-maps' to
13909 cater for additional parameter.
13910
13911 * keymap.h: Adjust number of parameters to `current-active-maps'.
13912
13913 * doc.c (Fsubstitute_command_keys): Adjust call of
13914 `current-active-maps'.
13915
e4305426
DK
139162007-06-25 David Kastrup <dak@gnu.org>
13917
13918 * callint.c (Fcall_interactively): Make the parsing of interactive
13919 specs somewhat more readable.
13920
511a18d9
YM
139212007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13922
13923 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
13924 to scroll bar gap also when bitmap fills fringe. Draw only foreground
13925 if extended background has already been filled.
13926
512eb161
YM
139272007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13928
13929 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
13930 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
13931
13932 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
13933 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
13934 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
13935 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
13936 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
13937 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
13938 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
13939 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
13940 Run timers during dialog popup.
13941 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
13942
2386b1f1
JR
139432007-06-21 Jason Rumney <jasonr@gnu.org>
13944
13945 * image.c (convert_mono_to_color_image): Swap fore and background.
13946
fab8b787
JR
139472007-06-20 Jason Rumney <jasonr@gnu.org>
13948
13949 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
13950 (w32_free_bdf_font): Unmap memory not handle.
13951
15bdd7a0 139522007-06-20 Sam Steingold <sds@gnu.org>
3cacba85
SS
13953
13954 * gmalloc.c (__morecore): Fix the declaration to comply with the
13955 definition.
13956
1bb8a291
JB
139572007-06-20 Juanma Barranquero <lekktu@gmail.com>
13958
13959 * w32term.c (w32_delete_display): Remove leftover declaration.
13960 (w32_define_cursor, w32_initialize): Make static.
13961
13962 * w32.c (_wsa_errlist): Fix typo in error message.
13963 (init_environment): Ignore any environment variable from the
13964 registry having a null value.
13965
92648dea
GM
139662007-06-20 Glenn Morris <rgm@gnu.org>
13967
13968 * Makefile.in (LIBGIF): Default to -lgif.
13969
ff25d115
JR
139702007-06-17 Jason Rumney <jasonr@gnu.org>
13971
13972 * w32menu.c (add_menu_item): Don't use multibyte string functions on
13973 unicode strings.
13974
a1a578a5
JB
139752007-06-16 Juanma Barranquero <lekktu@gmail.com>
13976
13977 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
13978 Fix typo in docstring.
13979
af41f8a8
EZ
139802007-06-16 Eli Zaretskii <eliz@gnu.org>
13981
13982 * w32menu.c (add_menu_item): Escape `&' characters in menu items
13983 and their keybindings.
13984
8b29cab9
CY
139852007-06-15 Chong Yidong <cyd@stupidchicken.com>
13986
13987 * composite.c (update_compositions): Fix last fix.
13988
c433c134
JR
139892007-06-14 Jason Rumney <jasonr@gnu.org>
13990
13991 * w32.c (get_process_times_fn): New function pointer.
13992 (globals_of_w32): Intialize it if present in kernel32.dll.
13993 (w32_get_internal_run_time): New function.
13994
13995 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
13996
553d3164
KH
139972007-06-14 Kenichi Handa <handa@etlken.m17n.org>
13998
13999 * composite.c (update_compositions): Check the validness of
14000 compositions.
14001
446ba96f
YM
140022007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14003
14004 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
14005 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
14006
14007 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
14008 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
14009
14010 * macgui.h (USE_MAC_TOOLBAR): New define.
14011
14012 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
14013 Return immediately unless popup is activated.
14014
14015 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
14016 background to scroll bar gap.
14017 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
14018 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
14019 scroll bars on frame edge. Check fringe background extension.
14020 Don't clear extended fringe background area.
14021 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
14022 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
14023 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
14024 [USE_MAC_TOOLBAR]: New macros.
14025 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
14026 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
14027 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
14028 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
14029 [USE_MAC_TOOLBAR]: New functions.
14030 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
14031 manually if previous repositioning has failed.
14032 (mac_handle_keyboard_event): Use precomputed event kind.
14033 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
14034 as tool bar item click. Handle mouse movement over tool bar items.
14035
14036 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
14037 toolbar_win_gravity.
14038 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
14039 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
14040 Add externs.
14041
14042 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
14043 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
14044
9720173f
CY
140452007-06-14 Chong Yidong <cyd@stupidchicken.com>
14046
14047 * image.c (search_image_cache): Remove unused variable.
14048
1217dd00
CY
140492007-06-13 Chong Yidong <cyd@stupidchicken.com>
14050
14051 * xfns.c, xmenu.c: Link to xaw3d if available.
14052
c5b8e0ea
YM
140532007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14054
14055 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
14056 frame_foreground and frame_background.
14057
14058 * image.c (lookup_image): Save frame foreground and background colors.
14059 (search_image_cache): Check if saved and current frame colors match.
14060
c69b0314
SM
140612007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
14062
14063 * regex.c (regex_compile): Remove the `regnum' counter.
14064 Use bufp->re_nsub instead. Add support for \(?N:RE\).
14065
c9612b8e
SM
140662007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
14067
14068 * term.c: Include intervals.h to declare Fget_text_property.
14069
843d2458
JR
140702007-06-10 Jason Rumney <jasonr@gnu.org>
14071
14072 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
14073
1e0d2d60 140742007-06-08 Juanma Barranquero <lekktu@gmail.com>
977f6cfb
JB
14075
14076 * callint.c (Fcall_interactively):
14077 * editfns.c (Fdelete_and_extract_region):
14078 * fileio.c (Fread_file_name):
14079 * fns.c (Fmapconcat):
14080 * keyboard.c (cmd_error_internal):
14081 * keymap.c (Fkey_description):
14082 * lread.c (openp):
14083 * minibuf.c (read_minibuf):
14084 * search.c (wordify):
14085 * sunfns.c (sel_read):
14086 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
14087 * xfns.c (x_default_scroll_bar_color_parameter):
14088 * xmenu.c (menu_help_callback):
14089 * xselect.c (Fx_get_atom_name):
14090 * xterm.c (x_term_init): Use empty_unibyte_string.
14091
15bdd7a0 140922007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
977f6cfb
JB
14093
14094 * alloc.c (init_strings): Initialize canonical empty strings.
14095 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
14096 canonical empty string when the requested size is 0.
14097
14098 * emacs.c (empty_unibyte_string): Rename from empty_string.
14099 (empty_multibyte_string): New canonical empty string.
14100 (syms_of_emacs): Don't initialize empty_string.
14101
14102 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
14103 string, if appropriate.
14104 (empty_unibyte_string, empty_multibyte_string): New externs.
14105 (empty_string): Remove extern.
14106
14107 * lread.c (syms_of_lread): Use empty_unibyte_string.
14108
42c4c67a
JR
141092007-06-07 Jason Rumney <jasonr@gnu.org>
14110
14111 * s/ms-w32.h: Don't define HAVE_TZNAME.
14112
14113 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
14114
aa8280d3
YM
141152007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14116
14117 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
14118
14119 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
14120 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
14121
14122 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
14123 Don't call next handler.
14124 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
14125 Remove argument. Install handler to application.
14126 (set_frame_menubar): Don't change deep_p.
1e0d2d60 14127 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
aa8280d3
YM
14128 FRAME_OUTER_TO_INNER_DIFF_Y.
14129 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
14130 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
14131 [HAVE_DIALOGS]: New macros.
14132 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
14133 Use them.
14134 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
14135
14136 * macselect.c [MAC_OSX] (install_service_handler): Rename from
14137 init_service_handler. All callers changed. Return OSStatus value.
14138
14139 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
14140 All callers changed so as not to call SetPortWindowPort.
14141 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
14142 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
14143 mac_draw_string_common.
14144 (mac_draw_image_string_qd): Likewise.
14145 (mac_draw_string_common): Use them. Add INLINE.
14146 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
14147 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
14148 GetGlobalMouse.
14149 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
14150 and FRAME_OUTER_TO_INNER_DIFF_Y.
14151 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
14152 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
14153 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
14154 repositioning window to mac_handle_window_event.
14155 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
14156 saving window location to mac_handle_window_event
14157 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
14158 (install_menu_target_item_handler): Remove argument in extern.
14159 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
14160 Also accept command events.
14161 (do_keystroke): New function created from XTread_socket.
14162 (init_command_handler): Remove functions.
14163 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
14164 and save window location by kEventWindowShowing and kEventWindowHiding
14165 handlers here. Don't call next handler for window state change and
14166 focus events.
14167 (mac_handle_application_event, mac_handle_keyboard_event)
14168 [TARGET_API_MAC_CARBON]: New functions.
14169 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
14170 kEventWindowShowing and kEventWindowHiding events. Move installation
14171 of mouse, font, text input and menu target item handlers to
14172 install_application_handler.
14173 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
14174 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
14175 New function.
14176 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
14177 Register it.
c9612b8e
SM
14178 (XTread_socket) [TARGET_API_MAC_CARBON]:
14179 Consolidate SendEventToEventTarget calls.
14180 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
14181 Move application activation handler to mac_handle_application_event.
14182 Move keyboard handler to mac_handle_keyboard_event.
aa8280d3
YM
14183 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
14184 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
14185 init_command_handler. Call install_application_handler.
14186
14187 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
14188 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
14189
6926c954
GM
141902007-06-07 Glenn Morris <rgm@gnu.org>
14191
14192 * emacs.c (main): Use `emacs-copyright' in --version output.
14193
6fe04c89
CY
141942007-06-06 Chong Yidong <cyd@stupidchicken.com>
14195
c9612b8e 14196 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
6fe04c89 14197
7eb0d727
YM
141982007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14199
14200 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
785ce0ac 14201
7eb0d727
YM
14202 * macgui.h: Replace WindowPtr with WindowRef.
14203
14204 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
14205 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
14206 Replace ControlHandle with ControlRef.
14207 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
14208
14209 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
14210 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
14211 Replace ControlHandle with ControlRef.
14212 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
14213 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
14214
14215 * macterm.h (struct scroll_bar): Rename member control_handle_low
14216 and control_handle_high to control_ref_low and control_ref_high.
14217 All uses changed.
14218 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
14219 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
14220 respectively. All uses changed.
14221 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
14222 (install_window_handler, remove_window_handler): Replace WindowPtr
14223 with WindowRef in externs.
14224
65fddb74
JB
142252007-06-05 Juanma Barranquero <lekktu@gmail.com>
14226
14227 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
14228
db1213a9
NR
142292007-06-03 Nick Roberts <nickrob@snap.net.nz>
14230
14231 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
14232
65fddb74 14233 * frame.c (Fmouse_position, Fmouse_pixel_position):
db1213a9
NR
14234 Condition on HAVE_GPM too.
14235
14236 * term.c (term_mouse_highlight): Remove unused variables.
14237 (Fterm_open_connection): Set gpm_zerobased to 1.
14238 (term_mouse_movement, term_mouse_click, handle_one_term_event):
14239 Use zero based co-ordinates.
14240 (handle_one_term_event): Report a drag as mouse movement too.
14241
14242 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
14243
d94df25b
CY
142442007-06-03 Chong Yidong <cyd@stupidchicken.com>
14245
14246 * image.c (search_image_cache): New function. Require background
14247 color match if background color is unspecified in the image spec.
14248 (uncache_image, lookup_image): Use it.
14249
4797b6d9
JB
142502007-06-01 Juanma Barranquero <lekktu@gmail.com>
14251
14252 * window.c (Fshrink_window): Reflow docstring.
14253
1ffe7343
NR
142542007-06-02 Chong Yidong <cyd@stupidchicken.com>
14255
14256 * Version 22.1 released.
14257
142582007-06-01 Richard Stallman <rms@gnu.org>
14259
14260 * xfns.c (x_encode_text): Add GCPRO.
14261
142622007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14263
14264 * xfns.c (x_set_name_internal): Save encoded name before
14265 x_encode_text in case string data is relocated.
14266
142672007-05-31 Richard Stallman <rms@gnu.org>
14268
14269 * buffer.c (syms_of_buffer): Doc fix.
14270
142712007-05-30 Nick Roberts <nickrob@snap.net.nz>
14272
14273 * sysdep.c (init_sys_modes): Add rather than replace with
14274 O_NONBLOCK.
14275
14276 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
14277 term_mouse_moveto.
14278
14279 * termhooks.h (term_mouse_moveto): New extern.
14280
14281 * term.c (mouse_face_window): Rename...
14282 (Qmouse_face_window): ...to this.
14283 (term_show_mouse_face, term_clear_mouse_face)
14284 (term_mouse_highlight): Use Qmouse_face_window.
14285 (term_mouse_moveto): New function.
14286 (term_mouse_position): Make it work.
14287 (syms_of_term): Uncomment assignment to mouse_position_hook.
14288 Staticpro Qmouse_face_window.
14289
142902007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14291
14292 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
14293 around current_column call.
14294
142952007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
14296
14297 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
14298 * xdisp.c (next_element_from_buffer):
14299 * window.c (delete_window):
14300 * term.c (term_mouse_highlight):
14301 * msdos.c (getdefdir):
14302 * macterm.c (mac_create_bitmap_from_bitmap_data)
14303 (init_font_name_table):
14304 * fns.c (Fsxhash):
14305 * data.c (Fmake_local_variable):
14306 * ccl.c (ccl_driver): Likewise.
14307
143082007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14309
14310 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
14311 Call mac_wakeup_from_rne on window size change.
14312
143132007-05-25 Chong Yidong <cyd@stupidchicken.com>
14314
14315 * image.c (uncache_image): Fix typo.
14316
143172007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
14318
14319 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
14320
143212007-05-22 Richard Stallman <rms@gnu.org>
14322
14323 * xterm.c (x_connection_closed): Remove NO_RETURN.
14324
143252007-05-22 Martin Rudalics <rudalics@gmx.at>
14326
14327 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
14328
143292007-05-21 Chong Yidong <cyd@stupidchicken.com>
14330
14331 * image.c (uncache_image): New function.
14332 (Fimage_refresh): New function.
14333
880820fe 143342007-05-20 Jan Djärv <jan.h.d@swipnet.se>
1ffe7343
NR
14335
14336 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
14337
143382007-05-20 Nick Roberts <nickrob@snap.net.nz>
14339
14340 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
14341 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
14342
143432007-05-20 Nick Roberts <nickrob@snap.net.nz>
14344
14345 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
14346 conditional on [HAVE_GPM_H].
14347
143482007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
14349
14350 * syntax.c (skip_chars): Update syntax-table only after we checked that
14351 the new location is valid.
14352
143532007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14354
14355 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
14356 mac_get_window_bounds.
14357
143582007-05-20 Nick Roberts <nickrob@snap.net.nz>
14359
14360 * Makefile.in (LIBGPM): Allow it to be set from configure.
14361 If set then link Emacs with it.
14362
14363 * config.in: Regenerate.
14364
14365 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
14366 New externs.
14367
14368 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
14369 Include gpm.h.
14370 (handle_one_term_event, term_gpm): New externs.
14371
14372 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
14373 and allow it to be interrupted by SIGIO.
14374
14375 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
14376 (wait_reading_process_output): Wait on gpm_fd too.
14377 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
14378 (add_gpm_wait_descriptor_called_flag): New variable.
14379 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
14380
14381 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
14382 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
14383 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
14384 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
14385 (make_lispy_event): Add case GPM_CLICK_EVENT.
14386 (read_avail_input): Handle mouse input.
14387
14388 * term.c (write_glyphs_with_face): New function.
14389 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
14390 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
14391 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
14392 (mouse_face_face_id, term_gpm, pos_x, pos_y)
14393 (last_mouse_x, last_mouse_y): New variables.
14394 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
14395 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
14396 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
14397 (Fterm_close_connection): New functions.
14398 (term_init): Initialise mouse_face_window.
14399
144002007-05-19 Chong Yidong <cyd@stupidchicken.com>
14401
14402 * xdisp.c (redisplay_window): If first window line is a
14403 continuation line, recompute the new window start instead of
14404 recentering.
14405
144062007-05-18 Glenn Morris <rgm@gnu.org>
14407
14408 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
14409 Suggested by Alfred M. Szmidt <ams@gnu.org>.
14410
144112007-05-17 Glenn Morris <rgm@gnu.org>
14412
14413 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
14414
144152007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14416
14417 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
14418 dead key repeat and up events.
14419
144202007-05-14 Chong Yidong <cyd@stupidchicken.com>
14421
14422 * image.c (pbm_load): Check image size for monochrome pbm.
14423
144242007-05-13 Chong Yidong <cyd@stupidchicken.com>
14425
14426 * xterm.c (XTread_socket): Revert last change.
14427
144282007-05-12 Chong Yidong <cyd@stupidchicken.com>
14429
14430 * image.c (pbm_load): Correctly check image size for greyscale pbm.
14431
14432 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
14433
144342007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
14435
14436 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
14437 mixup (YAILOM).
14438
144392007-05-07 Andreas Schwab <schwab@suse.de>
14440
14441 * keymap.c (Flookup_key): Fix typo in last change.
14442
144432007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
14444
14445 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
14446 mapping for unibyte strings.
14447
144482007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14449
14450 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
14451 (Fx_popup_dialog) [MAC_OSX]: Likewise.
14452
144532007-04-29 Richard Stallman <rms@gnu.org>
14454
14455 * insdel.c (replace_range): For undo, record insertion first.
14456
144572007-04-29 Andreas Schwab <schwab@suse.de>
14458
14459 * lisp.h (VECSIZE): Use OFFSETOF.
14460
144612007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14462
14463 * xdisp.c (try_window_reusing_current_matrix): Fix number of
14464 disabled lines.
14465
144662007-04-28 Richard Stallman <rms@gnu.org>
14467
14468 * lread.c (read_escape): In a string, \s is always space.
14469
880820fe 144702007-04-27 Jan Djärv <jan.h.d@swipnet.se>
1ffe7343
NR
14471
14472 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
14473
14474 * gtkutil.c (xg_update_menubar, create_menus): Create empty
14475 submenu for menu bar items.
14476
382c648d 14477See ChangeLog.10 for earlier changes.
6922b018
KH
14478
14479;; Local Variables:
880820fe 14480;; coding: utf-8
33462dfa 14481;; add-log-time-zone-rule: t
67e8d28a 14482;; bug-reference-url-format: "http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=%s"
6922b018 14483;; End:
2a34a036 14484
59ce725a 14485 Copyright (C) 2007, 2008 Free Software Foundation, Inc.
7f6d64f8
GM
14486
14487 This file is part of GNU Emacs.
14488
5a1dde61 14489 GNU Emacs is free software: you can redistribute it and/or modify
7f6d64f8 14490 it under the terms of the GNU General Public License as published by
5a1dde61
GM
14491 the Free Software Foundation, either version 3 of the License, or
14492 (at your option) any later version.
7f6d64f8
GM
14493
14494 GNU Emacs is distributed in the hope that it will be useful,
14495 but WITHOUT ANY WARRANTY; without even the implied warranty of
14496 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14497 GNU General Public License for more details.
14498
14499 You should have received a copy of the GNU General Public License
5a1dde61 14500 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
ab5796a9 14501
28f60c3d 14502;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40